使用imp/exp进行数据库数据迁移步骤
一.相同用户且表空间也相同情况下,使用imp/exp数据迁移步骤:
1.进入数据库服务器
su - oracle
检查是否安装imp和exp,支持输入以下命令,查看版本号,查看是否已经安装
imp
exp
2.导出数据
exp mhx/123@192.168.28.130/sid_name file=./test.dmp tables=test
mhx:数据库用户名
123:数据库密码
192.168.28.130:数据库服务器ip
sid_name:数据库实例名称
file=./test.dmp导出数据文件路径
tables=test需要导出的表,多张用逗号隔开
3.在可以执行sql语句的客户端,如plsql,先备份原来的数据,命令如下:
sql> rename test to test_bak_20200506
4.将导出的数据迁移到其他服务器数据库:
同样需要进去数据库服务器相应的路径,同步骤1
然后上传test.dmp文件到相应的目录下
执行命令:
imp mhx/123@192.168.28.133/sid_name file=./test.dmp full=y
数据迁移完成。
二.不同用户或不同表空间情况下,只迁移数据,数据表结构不需要迁移,使用imp/exp数据迁移步骤:
1.进入数据库服务器
su - oracle
检查是否安装imp和exp,支持输入以下命令,查看版本号,查看是否已经安装
imp
exp
2.导出数据
exp mhx_01/123@192.168.28.130/sid_name file=./test.dmp tables=test
mhx_01:数据库用户名
123:数据库密码
192.168.28.130:数据库服务器ip
sid_name:数据库实例名称
file=./test.dmp导出数据文件路径
tables=test需要导出的表,多张用逗号隔开
3.在可以执行sql语句的客户端,如plsql,先备份原来的数据,然后删除原来表数据,只留空表结构,命令如下:
sql> create table test_bak_20200506 as select * from test;
sql> delete from test;
4.将导出的数据迁移到其他服务器数据库:
同样需要进去数据库服务器相应的路径,同步骤1
然后上传test.dmp文件到相应的目录下
执行命令:
imp mhx_02/123@192.168.28.133/sid_name fromuser=mhx_01 touser=mhx_02 file=./test.dmp data_only=y
数据迁移完成。