ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 导入导出统计信息

导入导出统计信息

原创 Linux操作系统 作者:wei-xh 时间:2011-03-11 16:42:58 0 删除 编辑

-----------创建中间表
begin
dbms_stats.create_stat_table('test','test_table');
end;
/

-----------查询中间表,确认没有记录

testROSE> select count(*) from test_table;

  COUNT(*)
----------
         0


-----------在schema级别导出统计信息

testROSE> exec dbms_stats.export_schema_stats('test','test_table');

PL/SQL procedure successfully completed.

testROSE> select count(*) from test_table;

  COUNT(*)
----------
        26

----------使用exp,imp工具把这个表导到目标数据库
[oraclerose tmp]$ exp test/rose tables=test_table file=/tmp/statis.dmp
. . exporting table                     TEST_TABLE         26 rows exported
[oraclerose tmp]$ imp parfile=/tmp/pa.sh ignore=y
. . importing table                   "TEST_TABLE"         26 rows imported


---------删除scott用户下的表统计信息(测试需要)
scottROSE> begin
  2  dbms_stats.delete_schema_stats('scott');
  3  end;
  4  /

PL/SQL procedure successfully completed.

scottROSE> select num_rows,last_analyzed from user_tab_statistics;

  NUM_ROWS LAST_ANALYZE
---------- ------------


----------导入统计信息
begin
dbms_stats.import_schema_stats('scott','test_table');
end;
/

scottROSE> select num_rows,last_analyzed from user_tab_statistics;

  NUM_ROWS LAST_ANALYZE
---------- ------------


发现还是没有统计信息。
update test_table set c5='SCOTT';
commit;

begin
dbms_stats.import_schema_stats('scott','test_table');
end;
/

scottROSE> select num_rows,last_analyzed from user_tab_statistics;

  NUM_ROWS LAST_ANALYZE
---------- ------------

         0 18-SEP-10
         4 18-SEP-10
        14 18-SEP-10
         5 18-SEP-10


6 rows selected.

经过实验可以看出,默认的是从同一个方案之间的导入导出,如果要不同方案,需要修改test_table的c5字段。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22034023/viewspace-689178/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE组成员,DBGeeK用户组发起人。曾在DTCC、ORACLE技术嘉年华、Gdevops等公开场合做过数据库技术专题分享,2017年应Oracle邀请在世界最大的数据库会议OOW上做技术分享。组织翻译了《拨云见日,解密Oracle ASM内核》一书。

注册时间:2009-07-04

  • 博文量
    422
  • 访问量
    2341135