数据库迁移
数据库迁移顾名思义就是将一个数据库中的内容转移到另外的数据库中。而这里体现的是将测试机的数据通过命令打包文件进行转移,节省了大量的时间,操作起来也很方便。接下来我说明一下具体的操作步骤。
一、版本说明
本次操作环境基于如下所示:
软件环境 | 版本号 |
---|---|
Centos | 7 |
Oracle | 11.2.0.1.0 |
二、查看数据库版本
通过输入管理员命令进入查询
[oracle@suxin ~]$ sqlplus / as sysdba;
SQL*Plus: Release 11.2.0.1.0 Production on Tue Nov 24 10:18:01 2020
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
确保需要迁移的数据库两边都是Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
相同版本号
三、创建文件目录
使用oracle用户的进行登录
[root@suxin db_backup]# su oracle
[oracle@suxin ~]$ mkdir /home/oracle/db_backup/
[oracle@suxin ~]$ ll
总用量 8
drwxr-xr-x. 2 oracle oinstall 4096 11月 24 10:05 db_backup
drwxr-xr-x. 3 oracle oinstall 4096 11月 16 18:08 oradiag_oracle
注意查看用户的权限,确保oracle用户在此文件夹下是可读可写的。
如果此处显示的不是oracle oinstall,可以通过命令进行修改权限
chown -R oracle:oinstall /home/oracle/db_backup
四、将文件目录添加到数据库中
[oracle@suxin ~]$ sqlplus / as sysdba;
SQL*Plus: Release 11.2.0.1.0 Production on Tue Nov 24 10:26:10 2020
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
SQL> create or replace directory db_backup as '/home/oracle/db_backup'
五、使用expdp命令导出内容
使用oracle用户登录,执行如下命令即可
[oracle@bgxt db_backup]$ expdp c##zxec_offer_uat/zxec_offer_uat cluster=n dumpfile=XR_BJ_20201124.dmp directory=db_backup
- expdp 用户名/密码:是导出该用户下所有的内容
- dumpfile:导出后的文件名称
- directory:导出文件所在的目录位置
六、使用impdp命令导入内容
使用oracle用户登录,执行如下命令即可
[oracle@bgxt db_backup]$ impdp system/XrBjManager202011@orcl dumpfile=XR_BJ_20201124.dmp directory=db_backup nologfile=n remap_schema=c##zxec_offer_uat:c##xr_bj_prod transform=segment_attributes:n
- system/XrBjManager202011必须为拥有system权限的用户,orcl为相应的数据库实例名
- dumpfile:需要导入的文件名
- directory:导入文件所在的目录位置
- remap_schema:冒号左边为导出时的用户名,冒号右边为需要导入到那个用户下的名称
七、注意事项
在操作过程中一定要注意DMP文件或者文件夹中要有oracle用户的读写权限,如果没有使用命令chown -R oracle:oinstall /home/oracle/db_backup
命令及时赋权限,如若无权读取出现会相关提示操作的信息。