Oracle数据库服务器本机使用expdp方式导出数据库(排除表;环境:Linux)
特别注意:使用排除部分数据表的方式,可以减少导出数据的体积,加快速度。
一、导出的源数据库服务器操作 1、创建DIRECTORY create directory bakdir as '/oradata/backup/'; 注:查询bakdir对应的实际目录:select * from dba_directories s where s.directory_name='BAKDIR'; 2、授权 Grant read,write on directory bakdir to xxx(用户名); 3、按用户导出 1.进入oracle用户:su - oracle 2.指定数据库实例:export ORACLE_SID=xxx(数据库实例名) 3.执行导出命令:
nohup expdp xxx(用户名)/xxx(密码) schemas=xxx(用户名) dumpfile=xxx.dmp(导出的文件名) version=10.2.0.1.0 logfile=xxx_20160812.log(日志文件名称) directory=bakdir EXCLUDE=TABLE:\"IN\(\'ALARMINFO\', \'ENV_DATA_HISTORY\'\, \'CC_DEL_LOG\'\, \'CC_NEC_20121120\'\, \'CHANNELROUTE20130127\'\, \'DBLOG\'\, \'OPL_PMDATA\'\, \'PERF_FLOWDATA_BAK\'\, \'PERF_FLOWDATA_HISTORY\'\, \'PMDATABAK\'\, \'PERF_FLOWDATA\'\, \'RE_ALARM_FREQUENCY\'\)\"&
注:nohup命令是后台执行意思。即使会话被注销,程序将继续在后台执行。
以上导出语句排除了以下的数据表: ALARMINFO ENV_DATA_HISTORY CC_DEL_LOG CC_NEC_20121120 CHANNELROUTE20130127 DBLOG OPL_PMDATA PERF_FLOWDATA_BAK PERF_FLOWDATA_HISTORY PMDATABAK PERF_FLOWDATA RE_ALARM_FREQUENCY
二、导入的目标数据库服务器操作 1、创建DIRECTORY create directory bakdir as '/oradata/backup/'; 2、授权 Grant read,write on directory bakdir to xxx(用户名); 3、按用户导入 1.进入oracle用户:su - oracle 2.指定数据库实例:export ORACLE_SID=xxx(数据库实例名) 3.执行导入命令:nohup impdp xxx(用户名)/xxx(密码) schemas=xxx(用户名) dumpfile =xxx.dmp(导出的文件名) logfile=xxx_20160812.log(日志文件名称) directory=bakdir
注:nohup命令是后台执行意思。即使会话被注销,程序将继续在后台执行。