1 在原库中导出相关信息:
expdp system/sywg1234 directory=test dumpfile=test.dump logfile=test.log schemas=SYWG,GAZX,WEBCALL,HQ,SJCK,SJPZ CONTENT=METADATA_ONLY
2 去原库的表空间信息:
去TOAD导出表空间信息,后编辑导出脚本,将系统相关的信息删除;将目录及文件大小按实际需要更改.
3到目的库中操作:
将原库中导出的dump文件,CP到目的库中一个目录下;
创建导入目录;
impdp system/sywg1234 directory=test dumpfile=test.dump logfile=test_imp.log CONTENT=METADATA_ONLY exclude=statistc
注:
此时有一个很大的问题,就是即使导入的是表结构,无数据,但还是占用大量的表空间,这确实是一个比较大的问题
4到目的库导入后,分析所有表:
–生成统计信息分析脚本:
select ‘analyze table ‘||owner||’.’||table_name ||’ compute statistics; ‘from all_tables
where OWNER in (‘GAZX’,’SJCK’,’SJPZ’,’SYWG’,’HQ’,’WEBCALL’)
—执行上面生成的脚本,以进行统计信息的更新
5 压缩空表占用的大量表空间:
—查看表的占用空间情况,
SELECT OWNER,segment_name,SEGMENT_TYPE,BYTES/1024/1024 FROM DBA_SEGMENTS
WHERE OWNER=’GAZX’
ORDER BY 4 DESC
—确认表中是否有数据
SELECT * FROM GAZX.GSGG
—查看表是否允许row_movement
select a.row_movement,a.* from all_tables a where a.owner=’GAZX’ AND a.TABLE_NAME=’GSGG’
—若不允许,则开启row_movement
alter table GAZX.GSGG enable row movement;
生成批量处理的脚本:
SELECT ‘ALTER TABLE GAZX.’||SEGMENT_NAME||’ enable row movement;’
FROM DBA_SEGMENTS
WHERE OWNER=’GAZX’ AND SEGMENT_TYPE=’TABLE’
—-压缩表占用的空间
ALTER TABLE GAZX.GSGG SHRINK SPACE CASCADE;
生成批量处理的脚本:
SELECT ‘ALTER TABLE GAZX.’||SEGMENT_NAME||’ SHRINK SPACE CASCADE;’
FROM DBA_SEGMENTS
WHERE OWNER=’GAZX’ AND SEGMENT_TYPE=’TABLE’
—-压缩表完毕后,压缩数据文件
5 原库和目的库的校对:
导入后校对:
—核对表的数量
select OWNER,COUNT(TABLE_NAME) from all_tables
where OWNER in (‘GAZX’,’SJCK’,’SJPZ’,’SYWG’,’HQ’,’WEBCALL’)
GROUP BY OWNER
—核对索引的数量
SELECT OWNER,COUNT(TABLE_NAME) FROM ALL_INDEXES
where OWNER in (‘GAZX’,’SJCK’,’SJPZ’,’SYWG’,’HQ’,’WEBCALL’)
GROUP BY OWNER
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
Oracle数据库迁移的基本方法与设计
当决定将Oracle数据库迁移到云中的时候,你该如何下手?Tom Laszewski和Prakash Nauduri的新书《迁移到云》解答了这个问题。
-
解决创建存储过程时的Insufficient privileges错误
使用Toad在schema中创建一个存储过程时出现了“Insufficient privileges.”错误,专家解答了该如何解决这一问题。
-
开发者的兵工厂:SQL Server开发工具五大新特性
SSDT包含一系列的新特性,能够进一步简化开发并提升数据库开发效率。在本文中,我们就将为您介绍其中5个最重要的功能,DBA和开发者需注意本文提到的内容。
-
Oracle应用备份:何为最佳方法?
在不使用导入导出工具的情况下,在一个单一Oracle 10g实例中进行备份与恢复独立schema的最佳办法是什么?专家给出了答案。