1. 本地安装Oracle完整版客户端,可自行百度安装。
2. 导出命令
exp username/password@127.0.0.1:1521/orcl file='D:\migration\migration.dmp';
EXP(导出)参数:
- USERID:用户名/密码@数据库名。例如:
username/password@db
。- FILE:指定输出文件的名称,包括路径。例如:
file=export.dmp
。- FULL=Y:导出整个数据库。
- OWNER=(owner_list):只导出指定用户的对象。
- TABLES=(table_list):只导出指定的表。
- GRANTS=Y:导出权限。
- INDEXES=Y:导出索引。
- ROWS=Y:导出表中的数据。如果为N,则只导出表结构。
- DIRECT=Y:使用直接路径导出,这通常更快,但有一些限制(例如不能导出含有LOB的表)。
- LOG=export.log:指定日志文件的名称,包括路径。
注意!!!
如果迁移的表空间名不一致,需先将源Oracle表空间名改为与目标Oracle表空间名一致,再进行导出。导出后可恢复原表空间名
ALTER TABLESPACE old_tablespace_name RENAME TO new_tablespace_name;
3. 导入命令
imp username/password@127.0.0.1:1521/orcl file='D:\migration\migration.dmp' full=y;
IMP(导入)参数:
- USERID:用户名/密码@数据库名。例如:
username/password@db
。- FILE:指定要导入的输入文件的名称,包括路径。例如:
file=import.dmp
。- FULL=Y:导入整个导出文件。
- FROMUSER=source_user:指定源用户,即导出文件中的对象所属的用户。
- TOUSER=target_user:指定目标用户,即导入到哪个用户下。
- TABLES=(table_list):只导入指定的表。
- IGNORE=Y:在导入过程中忽略错误,例如遇到重复的主键时。
- COMMIT=Y:在导入过程中定期提交,以确保数据的完整性。
- LOG=import.log:指定日志文件的名称,包括路径。
- ROWS=Y:导入表中的数据。如果为N,则只导入表结构。