DB匯入/匯出統計資料
一個使用者paul
SQL> create table test as select * from dba_objects;
SQL> create index ind_test on test(object_id);
建立一個表,存放export出來的統計資訊
SQL> exec dbms_stats.create_stat_table(ownname => 'PAUL', stattab => 'STAT_AT', tblspace => 'SYSTEM');
剛建立完成,記錄數為0
SQL> select count(*) from STAT_AT;
COUNT(*)
----------
0
收集表和索引的統計資訊
SQL>exec dbms_stats.gather_table_stats(ownname=>'PAUL',tabname=>'TEST',estimate_percent => 100,method_opt=> 'FOR ALL INDEXED COLUMNS');
SQL>exec dbms_stats.gather_index_stats(ownname=>'PAUL',indname=>'IND_TEST',estimate_percent=>100);
我們匯出統計資訊
SQL>exec dbms_stats.export_table_stats(ownname=>'PAUL', tabname=>'TEST', stattab=> 'STAT_AT');
SQL> select count(*) from STAT_AT;
COUNT(*)
----------
3
切換到另外一個使用者test
SQL> create table test as select * from dba_objects;
Table created.
SQL> create index ind_test on test(object_id);
Index created.
SQL> create table STAT as select * from paul.STAT_AT;
Table created.
如果直接執行當前的使用者與表名,可以執行成功,但是,沒有統計資料匯入,需要把原來的匯出使用者更新成匯入使用者。
SQL>exec dbms_stats.import_table_stats(ownname=>'TEST', tabname=>'TEST', stattab => 'STAT');
SQL>update stat set c5='TEST' where c5='PAUL'
SQL>commit;
SQL>exec dbms_stats.import_table_stats(ownname=>'TEST', tabname=>'TEST', stattab => 'STAT');
然後再匯入成功,匯入資訊包括表統計,索引統計資訊,列的分析資訊
有關dbms_stats包收集統計資訊和刪除統計資訊的用法
1.收集統計資訊
DBMS_STATS.GATHER_TABLE_STATS (
ownname VARCHAR2,
tabname VARCHAR2,
partname VARCHAR2 DEFAULT NULL,
estimate_percent NUMBER DEFAULT to_estimate_percent_type
(get_param('ESTIMATE_PERCENT')),
block_sample BOOLEAN DEFAULT FALSE,
method_opt VARCHAR2 DEFAULT get_param('METHOD_OPT'),
degree NUMBER DEFAULT to_degree_type(get_param('DEGREE')),
granularity VARCHAR2 DEFAULT 'AUTO',
cascade BOOLEAN DEFAULT to_cascade_type(get_param('CASCADE')),
stattab VARCHAR2 DEFAULT NULL,
statid VARCHAR2 DEFAULT NULL,
statown VARCHAR2 DEFAULT NULL,
no_invalidate BOOLEAN DEFAULT to_no_invalidate_type (
get_param('NO_INVALIDATE')));
2.刪除統計資訊
DBMS_STATS.DELETE_TABLE_STATS (
ownname VARCHAR2,
tabname VARCHAR2,
partname VARCHAR2 DEFAULT NULL,
stattab VARCHAR2 DEFAULT NULL,
statid VARCHAR2 DEFAULT NULL,
cascade_parts BOOLEAN DEFAULT TRUE,
cascade_columns BOOLEAN DEFAULT TRUE,
cascade_indexes BOOLEAN DEFAULT TRUE,
statown VARCHAR2 DEFAULT NULL,
no_invalidate BOOLEAN DEFAULT to_no_invalidate_type (
get_param('NO_INVALIDATE')),
force BOOLEAN DEFAULT FALSE);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-1650/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- db2匯入匯出資料DB2
- DB2資料庫匯出表結構與匯入、匯出表資料DB2資料庫
- db2匯入匯出DB2
- DB2資料的匯入(Import) 匯出(Export)(Load)DB2ImportExport
- 資料泵匯出匯入
- Oracle 資料匯入匯出Oracle
- mysql資料匯入匯出MySql
- mysql資料匯出匯入MySql
- Oracle資料匯入匯出Oracle
- 資料庫 MySQL 資料匯入匯出資料庫MySql
- sqoop資料匯入匯出OOP
- 資料匯入匯出EXP/IMP
- MongoDB資料匯入與匯出MongoDB
- mysqldump匯入匯出表資料MySql
- exp/imp匯出匯入資料
- postgresql 資料匯入和匯出SQL
- 資料庫的匯入匯出資料庫
- 資料泵的匯入匯出
- mysql 資料庫匯入匯出MySql資料庫
- 資料泵匯出匯入表
- MySQL資料庫匯入匯出MySql資料庫
- ORACLE統計資訊的匯出、匯入Oracle
- Oracle資料庫匯入匯出。imp匯入命令和exp匯出命令Oracle資料庫
- 照Word模版匯入匯出資料的設計
- MySQL入門--匯出和匯入資料MySql
- DB2表的匯入與匯出DB2
- Mongodb資料的匯出與匯入MongoDB
- EasyPoi, Excel資料的匯入匯出Excel
- 匯入和匯出AWR的資料
- oracle資料匯出匯入(exp/imp)Oracle
- 【mysql】資料庫匯出和匯入MySql資料庫
- Oracle資料泵-schema匯入匯出Oracle
- BCP 資料的匯入和匯出
- mysql匯入匯出.csv格式資料MySql
- mysqldump匯入匯出mysql資料庫MySql資料庫
- MySQL表資料匯入與匯出MySql
- AWR資料的匯出與匯入
- ITDS資料匯入匯出的方法