精华内容
下载资源
问答
  • 2017-11-21 17:20:54
    一、ORACLE数据库数据迁移:
    A、数据迁移方法
    1、导入导出方法exp.exe/imp.exe;
          优点:兼容性强,可以导出对象可以自定义;
    2、数据泵导入导出(oracle10g版本以上)expdp.exe/impdp.exe;
          优点:速度较exp.exe/imp.exe快;
          缺点:导入导出需指定Directory(需新建Directory,可能权限要求较高);
    3、SQLLODER导入导出;
         优点:能从文本文件导入;
     4、通过ODBC导入导出;
     5、通过DBLINK用INSERT INTO方式;
    二、异构数据库之间的数据迁移:
    A、oracle透明网关技术:
    1、安装10201_gateways_win32透明网管组件;
    2、在文件listener.ora中SID_LIST_LISTENER添加:
        (SID_DESC =
          (PROGRAM = tg4sybs)
          (SID_NAME = tg4sybs)
          (ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
        )


        tg4sybs为sybase组件;tg4msql为sql server组件;
      3、在文件tnsnames.ora中添加:
      SYBS =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = renx)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SID = tg4sybs)
        )
        (HS=OK) (此处通知oracle使用异构服务)
      )


      4、重启监听器:
      lsnrctl stop;
      lsnrctl start;
    B、通过ODBC进行数据迁移:
        
    三、部分数据库软件对应的迁移功能:
    A、PL/SQL Developer:
    1、Tools->Export Tables                                            <>  对应导入exp.exe/export sql语句(insert);
    2、Tools->Import Tables                                           <>  对应导出imp.exe/import from sql语句(insert);
    3、Tools->ODBC Importer                                        <> 对应ODBC导入;
    4、Tools->Text Importer                                            <> 对应SQLLODER数据导入;
    5、Tools->Export User Object                                   <> 导出DDL脚本;
    6、Tools->Data Generator                                         <> 生成测试数据;


    B、Toad?for Oracle:
    1、Database ->EXPORT->Data Pump Export Wizard    <>  对应 数据泵导出expdp.exe;
    2、Database ->EXPORT->Data Subset Wizard               <>  模式复制(把一个用户中的对应完全赋值到另一用户模式);
    3、Database ->EXPORT->Export DDL                             <>  导出选定对象DDL语句(数据割接常用);
    4、Database ->EXPORT->Export Utility Wizard             <>  对应 导出exp.exe;
    5、Database ->EXPORT->Export File Browser                <>  浏览导出的DMP文件;
    6、Database ->EXPORT->Generate Database Script      <>  导出数据库脚本(可用于新建相似数据库)
    7、Database ->EXPORT-> Generate Schema Script       <>  导出整个用户模式DDL脚本;
    8、Database ->EXPORT->Export Table as Flat File         <> 按SQLLODER格式导出数据;
    9、Database ->IMPORT->Data Pump Import Wizard    <>  对应数据泵导入impdp.exe
    10、Database ->IMPORT->Import Source Files                <> 导入脚本文件(*.sql.,*.pkb…………)
    11、Database ->IMPORT->Import Table Data                <> 从txt\xls\dbf\mdb文件导入数据到指定TABLE;
    12、Database ->IMPORT->Import Utility Wizard           <>  对应 导入imp.exe;
    13、Database ->IMPORT->SQL*Loader Wizard             <>  对应SQLLODER导入;


    C、Embarcadero  DBArtisan(ORACLE\SYBASE\SQL SERVER)
    1、Utilities  -> Data Unload Wizard                                   <> 导出数据到文本格式文件;
    2、Utilities  ->Data Load Wizard                                        <> 从文本文件导入数据库(SQLLODER);
    3、Utilities  ->Data Export Wizard for Oracle                   <> 对应导出exp.exe;(ORACLE)
    4、Utilities  ->Data Import Wizard for Oracle                   <>对应导入imp.exe;(ORACLE)
    5、Utilities  ->schema extraction wizard                            <>导出整个用户模式DDL脚本;
    6、Utilities  ->schema migration wizard                            <> 转移整个用户模式到另一数据库用户;
    更多相关内容
  • 去年年底做了不少系统的数据迁移,大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁移,有一些心得体会,与大家分享。  首先说说迁移流程,在迁移之前,写好方案,特别是实施的方案步骤一定...
  • 数据迁移中,由于Domino系统使用的数据库:Lotus-Notes不是关系型数据库,而是文件型数据库,大大增加了数据迁移的难度。通过分析和实践,确定选择以数据对象映射的方式,由产品部门进行工具开发,通过实施人员对...
  • Oracle数据库数据迁移.pdf
  • 数据库迁移是我们经常可遇到的问题,对于少量的数据迁移基本上不会有什么问题。生产环境中,有以下情况需要做迁移工作: 磁盘空间不够。比如一些老项目,选用的机型并不一定适用于数据库。随着时间的推移,硬盘很...
  • Rails中的Migration相对来说更适合做数据库的对象集合操作,而自动化的rake则是一个较好的选择,下面来浅谈Ruby on Rails下的rake与数据库数据迁移操作,需要的朋友可以参考下
  • 数据库数据迁移方法

    万次阅读 2019-05-14 10:55:47
    1.从旧数据库中将数据迁移到全新的数据库 2.有两个数据库A和B,A中需迁移表的结构和B一样,A和B中都有各自的数据,现在要同步两个数据库 方法: 通过单表查询插入SQL语句 通过写数据库存储过程 通过写程序(...

    转载请注明:https://blog.csdn.net/a714530833/article/details/90199162

    本文使用的数据库:SQLSERVER

    场景:

    1.从旧数据库中将数据迁移到全新的数据库

    2.有两个数据库A和B,A中需迁移表的结构和B一样,A和B中都有各自的数据,现在要同步两个数据库

    方法:

    1. 通过单表查询插入SQL语句
    2. 通过写数据库存储过程
    3. 通过写程序(这里采用java语言),将数据查询出来后,插入新数据库

    注:主要介绍第一种方式,2和3简单介绍下思路,具体实现需后面再研究。1和2不一样的地方是,第二种方式存储过程实现的基本思路,是通过写语句,在迁移一条主表数据的时候,同时迁移其关联子表数据。而第一种方法,是一个表一个表的迁移,在有关联表的存在,所以要先迁移主表,后迁移子表。

    实现:

    一、通过单表查询插入SQL语句:

    两个语句:

    select * into TABLE_A from [192.168.0.110].reliability.dbo.TABLE_B where 条件1 nad 条件2

    该语句会将TABLE_B中满足条件的数据拷贝到TABLE_A(TABLE_A在原数据库中不能存在,是脚本自动生成的表),注意此方法只能将数据进行拷贝,表结构不会保留(字段一样,单主键,外键,字段属性设置等都会丢失,可以理解成将查询出来的数据,进行简单保存)

    set identity_insert TABLE_A ON /**如果表主键设置自增长且要主动设置指定值,需将此开关打开**/
    INSERT INTO [reliability].[dbo].TABLE_A 
    			([PKID],
    			[CCP_ID]
               ,[cum_yes])
     select		[PKID]
    		   ,[CCP_ID]
               ,[cum_yes]
     from [192.168.0.110].reliability.dbo.TABLE_B
     WHERE 条件
     set identity_insert TABLE_A OFF

    该方式需将要拷贝的表先在新数据库中生成(可用客户端拷贝旧表的表结构),且要拷贝的字段信息需都指明。如果主键没设置自增长,则set identity_insert TABLEL_A ON不要加。

    注:

    • 如果要迁移数据库在两个不同服务器上,则要在新数据库上配置链接服务器,将旧数据库配置到新数据库上,新数据库就能通过[IP].数据库名.dbo.表名的形式,访问到旧数据库的数据
    • 对于要同步新旧数据库数据(两个数据库都有各自的数据),会存在一个问题,待迁移主表主键为自增长,旧数据库待迁移数据的主键在新数据库中可能已经被占用。所以不能简单的直接将原本的主键拷贝过去。而且也不能令拷过去的数据主键自增长,因为这样其关联的子表就会不知道其关联的主表主键是多少。解决方式有几种思路:1.在新数据库中新增一个临时字段,记录旧表中的主键数据,子表迁移的时候根据该字段更新外键数据,最后在删除该字段(修改到表结构,有风险,自己评估)。2.通过写程序或存储过程的方式实现(较麻烦)。3.给待迁移的数据主键加上某个指定的值,令其主键大于现有最大值,保证其不会重复,然后子表迁移时,外键也加上该值。(需评估数据主键的范围是否满足)

    二、存储过程

    由于本人了解有限,并未深入学习存储过程,这边只简单介绍大体思路,具体实现还待验证。

    通过游标进行对旧数据库查询结果的遍历,并取出每次遍历中各字段的值。对每次遍历进行新数据库的插入。然后再根据主键,查询出关联子表,同理查询出子表数据进行插入(关联外键可在插入时直接更新)。子表操作完之后,再进行主表的下一轮循环。最后摧毁游标。(如果不是必要,建议不要采用存储过程,毕竟存储过程实现较难,且不易排查问题)

    三、通过java程序

    这里对于该方法,只介绍思路和新旧数据库的数据源切换方法。

    首先,在项目中配置读和写的数据源

    配置mapper映射(使用mybatis实现)

     

    自定义注解,用于读写数据源的切换:

    利用Spring AOP切面编程实现对自定义注解的解析

    通过重写determineCurrentLookupKey动态切换数据源(看不明白的请自行百度Spring动态切换数据源)。以上就是整个数据迁移项目的核心,剩下的就是一些mybatis的查询和插入语句,在这就不做过多的描述。

    转载请注明:https://blog.csdn.net/a714530833/article/details/90199162

    展开全文
  • java执行数据库数据迁移

    千次阅读 2021-04-01 14:12:43
    老系统数据迁移到新系统 业务分析:在最近的工作日常当中接到了一个需求,要求将老系统数据迁移到新开发的系统,一看老系统采用的技术SSH,和现在新系统的技术断层,还有表结构和业务逻辑之间的处理都是需要从头...

    老系统数据迁移到新系统

    	业务分析:在最近的工作日常当中接到了一个需求,要求将老系统数据迁移到新开发的系统,一看老系统采用的技术SSH,和现在新系统的技术断层,还有表结构和业务逻辑之间的处理都是需要从头解析,减少对新系统的影响,所以就写了一篇记录日志。
    

    数据库系统

    Mysql,但是新系统采用了多个数据库存储;
    

    采用技术

    采用Java编写程序实行搬迁效果,因为相对于判断来说,用程序执行会比自己操作要好得多;
    

    框架

    SpringBoot
    

    pom.xml

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!-- 很不错的一款工具插件 -->
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-all</artifactId>
                <version>5.6.1</version>
            </dependency>
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>2.3</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>2.1.4</version>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
            <!-- JSON 解析框架 FastJson -->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.41</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>1.1.12</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <excludes>
                            <exclude>
                                <groupId>org.projectlombok</groupId>
                                <artifactId>lombok</artifactId>
                            </exclude>
                        </excludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

    采用easyCode生成基本代码,具体可以看这篇博客

    https://blog.csdn.net/qq_39074952/article/details/115370409

    保存数据到JSON
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    效果
    在这里插入图片描述

    编写程序

     @Override
        public String addMemberType() throws IOException {
            long startTime = System.currentTimeMillis();
            // 创建线程池读取文件
            ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
            InputStream memberTypeInput = contextClassLoader.getResourceAsStream("medical_member_type.json");
            // 文件转换
            String memberTypeString = IOUtils.toString(Objects.requireNonNull(memberTypeInput), StandardCharsets.UTF_8);
            // 转换为集合
            List<MemberType> memberTypes = JSONArray.parseArray(memberTypeString, MemberType.class);
            // 新数据集合
            List<com.example.transfer.entity.entity.MemberType> memberTypeList = new ArrayList<>();
            // 封装到新数据库集合
            memberTypes.stream().forEach(
                 memberType -> {
                     // 创建会员类型
                     com.example.transfer.entity.entity.MemberType memberType1 = newMemberType(memberType.getId().toString(), memberType.getName(), memberType.getCreateTime());
                     memberTypeList.add(memberType1);
                 }
            );
            // 批插入语句
            int i = memberTypeService.insertBatch(memberTypeList);
            long endTime = System.currentTimeMillis();
            float excTime=(float)(endTime-startTime)/1000;
            log.info("总耗时:{}秒",excTime);
            // 关闭
            Objects.requireNonNull(memberTypeInput).close();
            return "总耗时"+excTime+"秒,插入数据:"+i+"条";
        }
    
    
        public com.example.transfer.entity.entity.MemberType newMemberType(String typeId,String name,String createTime){
            Date date = null;
            // 支付时间判断
            if(StrUtil.isEmpty(createTime)){
                date = new Date();
            }else{
                // hutools组件方法
                date = DateUtil.parse(createTime);
            }
            com.example.transfer.entity.entity.MemberType memberType =
                    com.example.transfer.entity.entity.MemberType.
                            builder()
                            .memberTypeId(typeId)
                            .memberTypeName(name)
                            .isDeleted(0)
                            .memberGrade(1)
                            .createTime(date)
                            .updateTime(new Date())
                            .build();
            return memberType;
        }
    

    执行批插入之后数据就到了新数据表里面的,注意业务逻辑的处理判断,我这个是最简单的一个表封装,如果是多个表之间关键,注意io流的关闭和stream流之间的管理处理。

    展开全文
  • Oracle数据库数据迁移概览
  • MySQL数据库数据迁移

    千次阅读 2019-12-30 10:38:40
    最近因为需要更换MySQL数据库服务器的原因,需要将原服务器上的MySQL数据迁移到另外一台服务器上。找了半天发现一款数据库的迁移工具,实测很不错。 简介: DBConvert for MySQL & PostgreSQL 是一种可靠的双向...

    最近因为需要更换MySQL数据库服务器的原因,需要将原服务器上的MySQL数据迁移到另外一台服务器上。找了半天发现一款数据库的迁移工具,实测很不错。

    简介:

    DBConvert for MySQL & PostgreSQL 是一种可靠的双向定向数据库迁移工具,它可让您同步转换:

    • MySQL to PostgreSQL
    • MySQL to PostgreSQL Dump
    • MySQL to PostgreSQL PHP Script
    • MySQL to MySQL
    • MySQL to MySQL Dump
    • MySQL to MySQL PHP Script
    • PostgreSQL to MySQL
    • PostgreSQL to MySQL Dump
    • PostgreSQL to MySQL PHP Script
    • PostgreSQL to PostgreSQL

    工具下载位置:点击下载
    在这里插入图片描述
    在这里插入图片描述

    使用:

    1、配置源端数据库
    在这里插入图片描述
    2、配置目标端数据库
    在这里插入图片描述
    3、配置要迁移的表及迁移规则
    在这里插入图片描述
    4、commit提交,打印log
    在这里插入图片描述

    其他数据迁移工具请参考:点击跳转

    展开全文
  • 数据库数据迁移程序

    2013-06-04 09:58:57
    数据库1的表A迁移数据库2的表B里面,自己配置数据库,和表的数据库信息和字段信息就可以了!很简单
  • Oracle数据库数据迁移技术研究.pdf
  • 基于SQL-92和JDBC的SpaceOS数据库数据迁移的实现.pdf
  • Oracle超大型数据库数据迁移方法论.pdf
  • Oracle数据库数据迁移整理.pdf
  • 这里是使用django的dumpdata和loaddata命令迁移数据到新数据库。 一、首先停止django服务,从旧数据库导出所有数据; python manage.py dumpdata -o backup.json 二、创建新的数据库,并修改django配置,比如下面从...
  • 在不懈的努力下,我已在本地的搭建和安装完成达梦8(dm8)数据库,也完成了代码框架更改数据库源,替换达梦数据库的demo验证工作。 driverClassName: dm.jdbc.driver.DmDriver url: jdbc:dm://10.0.3.132:5236/XC-...
  • 将你要迁移数据库文件放到这里如下: 然后打开my.ini:找到datadir,然后将你的Data文件路径复制到下面,你要启动哪一个Data文件就用那个文件的地址,只能存在一个。如下: 然后在重启MySQL服务如下: 然后打开...
  • sqlserver数据库迁移

    2018-08-25 09:32:19
    sqlserver 数据库迁移工具 学习交流使用 有什么好的意见可以和我说
  • 数据库数据迁移的3种方案学习

    千次阅读 2021-05-18 22:11:54
    1 背景 日常我们开发工作中,随着业务需求的变更,重构系统是很常见的事情。重构系统常见的一个场景是变更底层数据模型与存储结构。这种情况下就要对数据进行迁移,从而使业务能...数据迁移 数据导出 分库分表工具,
  • NULL 博文链接:https://zliguo.iteye.com/blog/2289020
  • mysql数据库数据迁移方法

    千次阅读 2021-01-25 14:59:34
    方法:a) 先来看mysql数据库文件的情况:mysql坏掉了,不管是linux还是windows版本,mysql有个数据库文件目录data目录,如下图:(注意linux版上面的是my.cnf差不多)然后data目录里面类似这样:通过观察可以知道里面...
  • 达梦数据库数据迁移工具的使用

    千次阅读 2019-09-07 15:37:45
    实验室三峡项目刚开始使用的是oracle数据库,现在要迁移到达梦数据库 一、迁移步骤参考链接 需要创建用户实例。创建用户实例使用【数据库配置助手】按照提示信息进行创建即可,此处不再赘述。创建实例后需要创建...
  • 现需要开发一套程序用来快速迁移数据库,要求如下: 1.使用人员可以指定迁移数据库类型 如:(orcal,sqlServer,csv 迁移至mysql) 2.在迁移数据库时,可以只迁移指定字段. 3.开发多任务的平台,按权重去执行任务,如:...
  • 瀚高数据库专用迁移工具,用于mysql数据库 oracle数据库等其他数据库向瀚高数据库进行数据迁移
  • 在项目开发中,有时由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Server的数据迁移到MySQL。下面是小编日常整理的一种sqlserver数据库迁移的方法。 一、SQL Server中常...
  • 2、表数据迁移 在Plsql中选择表——>右键——>qurey data(显示出所有数据)—->选择需要迁移的数据—–>右键—->export results—->sql file 获得sql file之后可以在sqldbx中直接打开。修改相关参数即可以直接运行。
  • Oracle数据库数据迁移到SQL Server

    千次阅读 2019-07-18 11:00:22
    写程序进行转换,这里我介绍第一种方法,目前我发现了两个迁移数据库的软件,一个是微软开发的SQL Server Migration Assistant for Oracle (OracleToSQL),免费、可以数据并行传输,在数据量大时迁移速度快,不容易...
  • 基于飞天分布式系统和全SSD盘高性能存储,支持MySQL、SQL Server、PostgreSQL和PPAS(高度兼容Oracle)引擎,默认部署主备架构且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 242,243
精华内容 96,897
关键字:

数据库数据迁移

友情链接: shuangrenwuziqi.zip