oracle统计信息导出与导入目的,ORACLE统计信息的导出、导入

论坛 期权论坛 脚本     
已经匿名di用户   2022-5-29 19:30   937   0

1\ 创建一个专用表保存各表的统计信息:

exec dbms_stats.create_stat_table('ks38','fys');

2\ 将各表的统计信息导入到ks38.fys表中;

exec dbms_stats.export_table_stats('ks38','tcl_cust_base_info',null,'fys');

---可以创建不是登陆用户下的表;如用system登陆,可以创建表到‘ks38'用户下

或将指定schema的统计信息导入到ks38.fys表中

exec dbms_stats.export_schema_stats('ks38','fys');

注:

若将整个数据库的统计信息导出到某个表必须按以下方式做:

1)用SYSDBA角色的用户登陆(如system)

2) exec dbms_stat.create_stat_table('system','tbl_name'); ----记住:此处创建的表必须是登陆用户下的表。

3) exec dbms_stat.export_database_stats('tbl_name')

****

导出表状态、SCHEMA统计信息,保存导出信息的表的SCHEMA可以和登陆用户名不一致;另外导入统计信息的表和原表尽可能

是同一schema下的

导出整个数据库统计信息,保存导出信息的表的SCHEMA必须和登陆用户名一致,必须是DBA角色。

3\ 查看统计信息是否导入:

select * from ks38.fys;

4\ 删除某张表的统计信息:

exec dbms_stats.delete_table_stats('ks38','tcl_cust_base_info');

5\ 查看统计信息是否被删除:

select table_name ,to_char(LAST_ANALYZED,'yyyymmdd hh24:mi:ss')

from ALL_tables where lower(table_name) LIKE 'tcl_cust_%_info%';

6\ 导入先前导出的统计信息:

exec dbms_stats.import_table_stats('ks38','tcl_cust_base_info','fys');

注意:tcl_cust_base_info和fys都是在’ks38'用户下的表。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP