[zt]prebuilt 物化檢視遷移資料庫

foreverlee發表於2006-04-30

最近論壇上有人問exp 一個300G的資料庫,有沒有更好的方法,

有人提議有prebuilt,做了個試驗,記下過程


SQL> conn test/test@jumper;

已連線。

[@more@]

SQL> create table test(a int,b varchar(2));

表已建立。

SQL> alter table test add constraint pk_test primary key(a);

表已更改。

SQL> create index i_b on test(b);

索引已建立。

SQL> insert into test values(1,'a');

已建立 1 行。

SQL> commit;

提交完成。

SQL> create materialized view log on test with primary key;

實體化檢視日誌已建立。

獲得需要建立的物件

SQL> spool off;

SQL> spool get_ddl.sql

SQL> set pagesize 0

SQL> set long 90000

SQL> set feedback off

SQL> set echo off

SQL> spool get_schema.sql

SQL> SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)

FROM USER_TABLES u;

SQL> SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name)

2 FROM USER_INDEXES u;

SQL> conn test/test@jumpera;

已連線。

SQL>CREATE DATABASE LINK jumper CONNECT TO test IDENTIFIED BY test USING ‘jumper’;

資料庫連結已建立。

SQL> create materialized view test on prebuilt table as

2 select *from test@jumper;

實體化檢視已建立。

SQL> select * from test;

未選定行

SQL> exec dbms_mview.refresh('test','c');

PL/SQL 過程已成功完成。

SQL> select * from test;

A B

---------- --

1 a

SQL> drop materialized view test;

實體化檢視已刪除。

SQL> select * from test;

A B

---------- --

1 a

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/76065/viewspace-831899/,如需轉載,請註明出處,否則將追究法律責任。

相關文章