Oracle数据库迁移方式一:impdp+dblink

简介:

实验环境:

源库:  192.168.2.200  SID=testdb

目标库:192.168.2.100  SID=testdb


实验目的:

使用impdp+dblink的方式 将192.168.2.200数据库上的jtrms用户的所有数据导入到目标数据库192.168.2.100


注意:使用impdp+dblink 的方式,这样就节省了数据导出(expdp),然后再导入的过程。


实施步骤:


一、源库操作:

1、首先检查源库要迁移的用户信息:

SQL> select USERNAME,DEFAULT_TABLESPACE from dba_users where USERNAME like 'JTRMS'; ---检查用户的默认表空间


USERNAME                       DEFAULT_TABLESPACE

------------------------------ ------------------------------

JTRMS                          TEST


2、该用户的表空间大小

SQL> select TABLESPACE_NAME,BYTES from dba_data_files where TABLESPACE_NAME like 'TEST';


TABLESPACE_NAME                     BYTES

------------------------------ ----------

TEST                            314572800


SQL> show user;    

USER is "JTRMS"

SQL> select * from tab;     ----检查该用户一共有97张表


TNAME                          TABTYPE  CLUSTERID

------------------------------ ------- ----------

ECR_ANNOUNCEMENT               TABLE

ECR_APPROVAL                   TABLE

ECR_APPROVAL_TO_RECEIVE        TABLE

ECR_BP_SYN                     TABLE

ECR_CHANGE                     TABLE

JFORUM_THEMES                  TABLE

JFORUM_TOPICS                  TABLE

JFORUM_TOPICS_WATCH            TABLE

JFORUM_USERS                   TABLE

JFORUM_USER_GROUPS             TABLE

JFORUM_VOTE_DESC               TABLE

JFORUM_VOTE_RESULTS            TABLE

JFORUM_VOTE_VOTERS             TABLE

JFORUM_WORDS                   TABLE

SYS_TEMP_FBT                   TABLE

。。。。。。。

。。。。。。。

97 rows selected.



3、查看该用户下的索引信息:

SQL> set linesize 300 pagesize 300

SQL> select INDEX_NAME,TABLE_OWNER,STATUS,NUM_ROWS from user_indexes;


4、查看该用户下所有的job信息

alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss'; 

set linesize 300 pagesize 300

col what for a50

col interval for a50

select job,what,LAST_DATE,NEXT_DATE,SCHEMA_USER,interval from  user_jobs;


二、在目标数据库上操作


注意:在目标数据库创建用户信息之前,一定要检查目标看是否有该用户的信息,和表空间是否有重名等


1、在目标数据库上创建用户信息---一切以源库为标准

SQL> create tablespace test datafile '/opt/oracle/test.dbf' size 300M;  ---创建test表空间


SQL> create user jtrms identified by jtrms default tablespace test;  ---创建jtrms用户


SQL> grant connect,resource to jtrms;  ---对该用户授权


SQL> grant dba to jtrms;



2、在目标数据库增加源库的tns文件信息,并测试连接源库

[oracle@test ~]$ vim  tnsnames.ora

testdb =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.200)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = testdb)

    )

  )


---注意,增加的是源库192.168.2.200的信息 

  

[oracle@test ~]$ sqlplus jtrms/jtrms@testdb ; ----使用jtrms用户连接源库192.168.2.200


SQL*Plus: Release 11.2.0.4.0 Production on Mon Jun 5 00:54:31 2017


Copyright (c) 1982, 2013, Oracle.  All rights reserved.



Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options


SQL> select instance_name from v$instance;


INSTANCE_NAME

----------------

testdb


3、在目标数据库上创建dblink

create public database link testlink  connect to jtrms identified by jtrms

using '(DESCRIPTION =

  (ADDRESS_LIST =

 (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.200)(PORT = 1521))

)

      (CONNECT_DATA =

     (SERVICE_NAME = testdb)

            )

              )';


注意:该dblink是连接源库用的


4、在目标数据库上,开始使用下面的命令将源库jtrms用户的数据使用dblink导入到目标库


[oracle@test ~]$ impdp jtrms network_link=testlink schemas=jtrms cluster=N PARALLEL=2 


Import: Release 11.2.0.4.0 - Production on Mon Jun 5 01:03:16 2017


Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Password:    ---输入用户的密码



5、登录数据库,验证数据是否传输成功:

[oracle@test ~]$ sqlplus '/as sysdba'


SQL*Plus: Release 11.2.0.4.0 Production on Mon Jun 5 01:06:34 2017


Copyright (c) 1982, 2013, Oracle.  All rights reserved.



Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options


SQL> conn jtrms/jtrms


SQL> select count(*) from tab;


  COUNT(*)

----------

        97

        

SQL> set linesize 300 pagesize 300

SQL> select INDEX_NAME,TABLE_OWNER,STATUS,NUM_ROWS from user_indexes;


INDEX_NAME                     TABLE_OWNER                    STATUS     NUM_ROWS

------------------------------ ------------------------------ -------- ----------

IDX_BOK_REL                    JTRMS                          VALID             0

IDX_BOK_USER                   JTRMS                          VALID             0

SYS_C0011373                   JTRMS                          VALID             0

SYS_C0011372                   JTRMS                          VALID             0

IDX_BANLIST_EMAIL              JTRMS                          VALID             0




-----至此,实施完成;













本文转自一个笨小孩51CTO博客,原文链接:http://blog.51cto.com/fengfeng688/1933364
 ,如需转载请自行联系原作者




相关文章
|
12月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
939 93
|
12月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
11月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】使用NetManager创建Oracle数据库的监听器
Oracle NetManager是数据库网络配置工具,用于创建监听器、配置服务命名与网络连接,支持多数据库共享监听,确保客户端与服务器通信顺畅。
501 0
|
存储 Oracle 关系型数据库
服务器数据恢复—光纤存储上oracle数据库数据恢复案例
一台光纤服务器存储上有16块FC硬盘,上层部署了Oracle数据库。服务器存储前面板2个硬盘指示灯显示异常,存储映射到linux操作系统上的卷挂载不上,业务中断。 通过storage manager查看存储状态,发现逻辑卷状态失败。再查看物理磁盘状态,发现其中一块盘报告“警告”,硬盘指示灯显示异常的2块盘报告“失败”。 将当前存储的完整日志状态备份下来,解析备份出来的存储日志并获得了关于逻辑卷结构的部分信息。
|
存储 运维 关系型数据库
从MySQL到云数据库,数据库迁移真的有必要吗?
本文探讨了企业在业务增长背景下,是否应从 MySQL 迁移至云数据库的决策问题。分析了 MySQL 的优势与瓶颈,对比了云数据库在存储计算分离、自动化运维、多负载支持等方面的优势,并提出判断迁移必要性的五个关键问题及实施路径,帮助企业理性决策并落地迁移方案。
|
人工智能 运维 关系型数据库
数据库运维:mysql 数据库迁移方法-mysqldump
本文介绍了MySQL数据库迁移的方法与技巧,重点探讨了数据量大小对迁移方式的影响。对于10GB以下的小型数据库,推荐使用mysqldump进行逻辑导出和source导入;10GB以上可考虑mydumper与myloader工具;100GB以上则建议物理迁移。文中还提供了统计数据库及表空间大小的SQL语句,并讲解了如何使用mysqldump导出存储过程、函数和数据结构。通过结合实际应用场景选择合适的工具与方法,可实现高效的数据迁移。
1865 1
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
718 8
|
SQL Oracle 关系型数据库
比较MySQL和Oracle数据库系统,特别是在进行分页查询的方法上的不同
两者的性能差异将取决于数据量大小、索引优化、查询设计以及具体版本的数据库服务器。考虑硬件资源、数据库设计和具体需求对于实现优化的分页查询至关重要。开发者和数据库管理员需要根据自身使用的具体数据库系统版本和环境,选择最合适的分页机制,并进行必要的性能调优来满足应用需求。
628 11
|
关系型数据库 MySQL 数据库
MySQL数据库上云迁移
本文介绍了将数据库迁移到RDS for Mysql的两种主要方法:停服迁移和不停服迁移。停服迁移适合可短暂中断服务的场景,通过mysqldump或DTS完成;不停服迁移适用于需保持业务连续性的场景,推荐使用DTS实现结构、全量及增量数据迁移。文中详细列出了每种方法的具体操作步骤,帮助企业根据需求选择合适的迁移方案。
475 1
MySQL数据库上云迁移
|
Oracle 关系型数据库 数据库
数据库数据恢复—服务器异常断电导致Oracle数据库报错的数据恢复案例
Oracle数据库故障: 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错,报错内容为“system01.dbf需要更多的恢复来保持一致性”。该Oracle数据库没有备份,仅有一些断断续续的归档日志。 Oracle数据库恢复流程: 1、检测数据库故障情况; 2、尝试挂起并修复数据库; 3、解析数据库文件; 4、导出并验证恢复的数据库文件。

推荐镜像

更多