ORACLE数据迁移(一)

ORACLE的数据迁移有四种方式,今天记录一下最简单的方法。

exp/imp逻辑备份与恢复:

这种方式可以跨平台操作,而且操作简单,但是停机时间较长。所以特别适合小型项目或者对数据的即时性没有强烈敏感的项目。

这种方式也比较适合个人数据的管理。

操作方法为:

1.检查迁出库和迁入库的数据库版本是否一致。

select * from v$version;

2.检查迁出库和迁入库的字符集是否一致。

数据库服务器字符集
select * from nls_database_parameters;
客户端字符集环境
select * from nls_instance_parameters;
如何查询dmp文件的字符集
用oracle的exp工具导出的dmp文件也包含了字符集信息,dmp文件的第2和第3个字节记录了dmp文件的字符集。如果dmp文件不大,比如只有几M或几十M,可以用UltraEdit打开(16进制方式),看第2第3个字节的内容,如0354,然后用以下SQL查出它对应的字符集:
select nls_charset_name(to_number('0354','xxxx')) from dual;
3.检查迁出库的表是否都已经分配segment了。
a.分析所有需要迁出的表
analyze table table_name compute statistics;
b.查询所有没有分配段的表
select * from user_tables where num_rows=0;
c.给没有段的表分配段
alter table table_name allocate extent;
4.在迁出库执行$ exp user/pwd@sid owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000。
生成的文件放在控制台窗口所在的目录下
5.在迁入库执行$ imp user/pwd@sid fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y。
fromuser是文件中需要导出的内容,touser是数据库中需要导入的用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值