统计信息的导出导入

常用场景:

1.生产环境的统计信息导入到测试环境使得执行计划的产生能极大程度上等同于生产环境。

2.割接测试环境的统计信息快速导入生产,替代生产库统计信息的收集操作,减少停机时间。

两种方式:

1.expdp/exp STATISTICS,impdp/imp

2.exec dbms_stats.export_schema_stats('SCOTT','STATS_TABLE','SCOTT')/dbms_stats.import_schema_stats

dbms_stats.export_table_stats/dbms_stats.import_table_stats

一般用在割接时间特别紧的时候,快速实现导入替代统计信息的收集操作:大库的收集时间较长。

复制代码
alter session set parallel_force_local=true;
alter session set workarea_size_policy=manual;
alter session set sort_area_size=1073741820;
alter session set sort_area_retained_size=1073741820;
alter session set db_file_multiblock_read_count=128;
exec DBMS_STATS.GATHER_SCHEMA_STATS(ownname=>'OGGSELET',ESTIMATE_PERCENT=>100,method_opt=>'for all columns size 1',cascade=>true,force=>true,degree=>64);

dbms_stats.export_table_stats例子:

生产库和测试库检查:

select TABLE_NAME,COLUMN_NAME,NUM_BUCKETS from DBA_TAB_COL_STATISTICS WHERE TABLE_NAME='DES_SERVICEORDER'

select table_name,num_rows from user_tables where table_name not like 'TEMP%' and table_name not like 'TR_TMP%' and num_rows is null order by table_name

测试库:

创建临时统计表:

exec dbms_stats.create_stat_table(ownname => 'GISTAR',stattab => 'stat_table') ;

=====以下配合生产库的import需反复操作====

truncate table stat_table;

exec dbms_stats.export_table_stats(ownname => 'GISTAR',tabname => 'DES_SERVICEORDER',stattab => 'stat_table');

生产库:

准备tnsnames.ora

oracle@zydb1:/db/product/11.2/db_1/network/admin(lnzy1)>vi tnsnames.ora

LNZYCS2 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.14.21.36)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = lnzycs)

)

)

SQL> conn /as sysdba

Connected.

SQL> create public database link gistar_lnzycs2 connect to GISTAR identified by xxx using 'lnzycs2';

Database link created.

SQL> select * from dual@gistar_lnzycs2;

D

X

========以下配合测试库的export反复操作

drop table stat_table;

create table stat_table as select * from stat_table@gistar_lnzycs2;

exec dbms_stats.import_table_stats(ownname => 'GISTAR',tabname => 'DES_SERVICEORDER',stattab => 'stat_table');

其它参考:

dbms_stats 导入导出 schema 级别统计信息-CSDN博客

相关推荐
IT大白鼠5 分钟前
图数据库系列 · 第 02 篇——架构拆解:原生图存储到因果集群
数据库·架构·nosql
EatFan1 小时前
从“框架混战“到“运行时收敛“:2026 年 AI Agent 开发框架的三条路线之争
java·数据库·人工智能·多智能体·ai agent·mcp·agent 框架
小蒜学长1 小时前
基于SpringBoot的佳新超市管理系统设计与实现系统(代码+数据库+LW)
java·数据库·spring boot·后端·佳新超市管理系统
jinyishu_1 小时前
向量数据库入门:记录结构、索引、检索与选型
数据库
写后端的胖头鱼5 小时前
【高频面试题】FullText 全文索引(MySQL)
数据库·mysql·索引·全文索引
路远的数据库笔记5 小时前
SQL Server迁移国产数据库怎么做?九套口岸库零停机割接实战
数据库·经验分享·sqlserver·dba
樱花落木兰5 小时前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
kaiyou20266 小时前
用户研究岗秋招,统计分析能力怎么学习和证明?
数据库·python·学习
mjhcsp6 小时前
DeepSeek V4.1 Flash 批量处理效能实测
java·前端·数据库
ShineWinsu6 小时前
对于Redis:Steam、Geospatial、Hyperloglog、Bitmap、Bitfield类型的解析
数据库·c++·redis·分布式·缓存·面试·zset