一、采取传统方式导出dmp文件,同时指定默认路径
exp fuelMS/fuelMS@127.0.0.1/ORCL OWNER=FUELMS file='/mnt1/oracle/data/exported_data.dmp' log=export_log.log
[oracle@Aliyun data]$ exp fuelMS/fuelMS@127.0.0.1/ORCL OWNER=FUELMS file='/mnt1/oracle/data/exported_data.dmp' log=export_log.log^C[oracle@Aliyun data]$ ls -alhtotal 588Mdrwxrwxrwx 2 root root 4.0K Oct 11 13:42 .drwxr-xr-x 6 oracle oinstall 4.0K Aug 3 19:26 ..-rw-r----- 1 oracle oinstall 339M Oct 11 11:56 A.dmp-rw-r--r-- 1 oracle oinstall 416 Oct 11 11:56 A.log-rw-r----- 1 oracle oinstall 33M Oct 11 12:02 B.dmp-rw-r--r-- 1 oracle oinstall 23K Oct 11 12:02 B.log-rw-r--r-- 1 oracle oinstall 7.7K Oct 11 13:42 export_log.log-rw-r--r-- 1 oracle oinstall 217M Oct 11 13:42 exported_data.dmp
传统的导出工具,不同于数据泵,可能在大型数据库中不够高效。
fuelMS/fuelMS@127.0.0.1/ORCL:连接到数据库所需的用户名和密码以及数据库的服务名(ORCL)。owner参数:这指定了要导出的数据库对象。
file=exported_data.dmp:这指定了导出文件的名称,即.dmp格式的文件。log=export_log.log:这指定了导出操作的日志文件,用于记录导出过程的详细信息。
二、采取传统方式导入dmp文件(速度较慢)
传统方式直接导入:
imp fuelMS/fuelMS@127.0.0.1/ORCL FROMUSER=FUELMS TOUSER=FUELMS file='/mnt1/oracle/data/exported_data.dmp' log=import_log.log
忽略错误进行导入:通常不使用
imp fuelMS/fuelMS@ORCL FROMUSER=FUELMS TOUSER=FUELMS file='/mnt1/oracle/data/exported_data.dmp' log=import_log.log REPLACE=Y
通过数据泵覆盖导入:
在传统的导入工具中,通常不提供直接的方式来替换已存在的对象。导入将只追加数据,而不会替换或修改现有对象。
impdp fuelMS/fuelMS@127.0.0.1/ORCL DIRECTORY=DUMP_DIR DUMPFILE=exported_data.dmp LOGFILE=import_log.log REMAP_SCHEMA=FUELMS:FUELMS REUSE_DATAFILES=YES
DIRECTORY=DUMP_DIR:数据泵的导入目录,确保已在数据库中创建这个目录。DUMPFILE=exported_data.dmp:导出文件的名称。LOGFILE=import_log.log:导入操作的日志文件的名称。REMAP_SCHEMA=FUELMS:FUELMS:这部分告诉数据泵工具将数据从源用户FUELMS重定向到目标用户FUELMS,从而覆盖目标用户中的数据。REUSE_DATAFILES=YES:这告诉数据泵工具重用数据文件,从而覆盖目标用户中的数据。
备注:
要使用数据泵工具 impdp 导入数据,确保以下几点:
使用正确的导出文件:确保导入的文件(
exported_data.dmp)是通过数据泵工具expdp创建的,而不是传统exp工具创建的。如果文件是传统exp工具创建的,应该使用传统imp命令来导入数据。使用正确的目录:
DIRECTORY=DUMP_DIR指定了数据泵导入的目录。确保该目录已存在,并且具有正确的权限。验证连接信息:确保连接字符串
fuelMS/fuelMS@127.0.0.1/ORCL正确,并可以成功连接到数据库。确保数据库版本匹配:导出和导入的数据库版本应该匹配,否则可能会出现兼容性问题。


