一、源端:备份统计信息
0、重建系统包:sp_create_system_packages(1);
1、新建舞台表
dbms_Stats.create_STAT_table(‘SYSDBA’, ‘TABLE001’);
–删除舞台表
dbms_stats.drop_STAT_table (‘SYSDBA’, ‘TABLE001’);
2、查看用户下的统计信息数量
select count () from stat_TABLE001;
备份统计信息使用 CMDS 用户登陆原数据库,执行下面备份语句
BEGIN FOR RS IN (SELECT OWNER,TABLE_NAME FROM DBA_TABLES WHERE
OWNER='CMDS')
LOOP
dbms_stats.EXPORT_TABLE_STATS(rs.owner,rs.table_name,stattab=>'TABLE001',
statid => 'T1_202108161020');
END LOOP;
END;
--查看用户下的统计信息数量
select count (*) from stat_TABLE001;
3、导出统计信息表
./dexp
userid=SYSDBA/SYSDBA directory=/data/BACKUP FILE=CMDS0731.dmp log=DEX
P.log tables=SYSDBA.‘STAT$_TABLE001’
二、目标端:还原统计信息
4、目的库新建舞台表
dbms_Stats.create_STAT_table (‘SYSDBA’,‘TABLE001’);
–查看用户下的统计信息数量
select count () from stats_TABLE001 where statid=‘T1_202108161020’;
将导出的 dmp 包上传到新数据库服务器上,执行下面命令导入到dmp数据新库建统计信息导入表
./dimp userid=SYSDBA/SYSDBA file=/data/BACKUP/CMDS0731.dmp
TABLE_EXISTS_ACTION=REPLACE
–重建系统包: sp_create_system_packages(1)还原统计信息(如果是用替换bin目录的方式升级后的数据库需要重建系统包)
文章
阅读量
获赞
