加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ORACLE 从一个实例迁移到另外一个实例实战记录

发布时间:2020-12-12 16:03:47 所属栏目:百科 来源:网络整理
导读:ORACLE 跨 schema 的数据迁移 测试环境服务器不够,而同事需要新的oracle环境,把生产环境的数据拉一份过来搭建内部的系统跑;这个实例使用频率不高而且需要的资源不是很多,所以准备在原有的负载不高的oracle服务器上,重新开一个新的实例,这样可以节省数

ORACLEschema的数据迁移

测试环境服务器不够,而同事需要新的oracle环境,把生产环境的数据拉一份过来搭建内部的系统跑;这个实例使用频率不高而且需要的资源不是很多,所以准备在原有的负载不高的oracle服务器上,重新开一个新的实例,这样可以节省数据库服务器资源。

1DBCA建库

使用DBCA在linux上建立第二个oracle实例,具体搭建过程参考:http://www.52php.cn/article/p-cdkmypcf-bau.html

2、从线上导出数据库

因为线上的环境和新的实例不一样,所以如果使用rman备份的话,在恢复的时候就需要设置很多参数,不是太方便,所以准备使用expdp来进行数据的导出,然后使用impdp进行数据的导入工作。

线上主要有2个schemas,所以导出2个schema的数据即可,一个是powerdesk、一个是plas。

(2.1) 导出数据

expdppowerdesk/pl_eahys0418 DIRECTORY=dir_dp DUMPFILE=powerdesk_20160829.dmpschemas=powerdesk LOGFILE=zxg.log;

expdppowerdesk/pl_ethys0418 DIRECTORY=dir_dp DUMPFILE=plas_20160829.dmp schemas=plasLOGFILE=zxg.log;

(2.2) 传输数据

[oracle@azure_earth_dbm1_3_111 dir_dp]$ scpplas_20160829.dmp powerdesk_20160829.dmp 192.168.121.61:/home/oracle/

The authenticity of host '192.168.121.61(192.168.121.61)' can't be established.

RSA key fingerprint is0a:c7:1c:89:1d:9d:a2:e1:6c:36:68:d9:18:b4:ab:cc.

Are you sure you want to continueconnecting (yes/no)? yes

Warning: Permanently added '192.168.121.61'(RSA) to the list of known hosts.

oracle@192.168.121.61's password:

plas_20160829.dmp100% 1067MB 5.4MB/s 03:16

powerdesk_20160829.dmp100% 13GB4.9MB/s 44:24

[oracle@azure_earth_dbm1_3_111 dir_dp]$

3、在新的实例上准备账号

在使用impdp的时候,可以先创建相应的schema账号,这样导入的时候,可以进行schema到schema之间的数据迁移。

(3.1) 创建新的表空间

createtablespace powerdesk

logging

datafile'/home/oradata/ysdb3/powerdesk01.DBF'

size50m

autoextendon

next50m

extentmanagement local;

createtablespace plas

logging

datafile'/home/oradata/ysdb3/plas01.DBF'

size50m

autoextendon

next50m

extentmanagement local;

(3.2) 创建新的用户

CREATEUSER powerdesk PROFILE "DEFAULT"IDENTIFIED BY "powerdes0418" DEFAULT TABLESPACE"POWERDESK" ACCOUNT UNLOCK;

CREATEUSER plas PROFILE "DEFAULT" IDENTIFIED BY "plas0418"DEFAULT TABLESPACE "PLAS"ACCOUNT UNLOCK;

(3.2) 给新的用户赋权

grantconnect,resource to powerdesk;

Grantdba to powerdesk;

grantcreate session to plas;

grantconnect,resource to plas;

4、在新的实例上导入数据

(4.1) 准备目录

# 先建立导入目录

createdirectory dir_dp1 as '/home/oracle/';

# 赋予目录权限

grantcreate,write,read to dir_dp1;

# 赋予用户对目录的操作权限

Grantread,write on directory dir_dp1 to powerdesk;

Grantread,write on directory dir_dp1 to plas;

(4.2) 使用IMPDP导入数据

time impdp system/yueworldpddirectory=dir_dp1 dumpfile=powerdesk_20160829.dmpREMAP_SCHEMA=powerdesk:powerdesk TABLE_EXISTS_ACTION=REPLACE PARALLEL=8

time impdp system/yueworldpd directory=dir_dp1dumpfile=plas_20160829.dmp REMAP_SCHEMA=plas:plas TABLE_EXISTS_ACTION=REPLACEPARALLEL=8

5schema1schema2的迁移

Oracle 从一个用户expdp导出再impdp导入到另一个用户,可以使用REMAP_SCHEMA=user1:user2来实现:

如果想导入的用户已经存在:

1.导出用户 expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp

2.导入用户 impdp user2/pass2 directory=dumpdir dumpfile=user1.dmpREMAP_SCHEMA=user1:user2 EXCLUDE=USER

如果想导入的用户不存在:

1.导出用户 expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp

2.导入用户 impdp system/passsystem directory=dumpdir dumpfile=user1.dmpREMAP_SCHEMA=user1:user2

3.user2会自动建立,其权限和使用的表空间与user1相同,但此时用user2无法登录,必须修改user2的密码

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读