语法说明
. 目标库 - 创建DBLINK用于创建到源库的数据通道
创建DBLINK语句【create public database link dblink_name connect to dblink_username identified by &pwd
using '(DESCRIPTION=(ADDRESS = (PROTOCOL = TCP)(HOST =ip_address)
(PORT = 1521))(CONNECT_DATA=(SERVER = DEDICATED)(SID=sid)))';】
. 目标库 - 创建用户表空间
创建表空间语句【CREATE SMALLFILE TABLESPACE "tablespace_name" DATAFILE '+DATA' SIZE 30G;】
创建临时表空间语句 【CREATE SMALLFILE TEMPORARY TABLESPACE "tmp_tablespace_name" TEMPFILE '+DATA' SIZE 10G;】
注明: +DATA 为ASM管理的磁盘表空间,如果数据库没有配置ASM,则跟据实际情况写全整路径如 windows:“c:/oracle/datafile/”或 linux/unix: ”/home/oracle/datafile/”
SIZE 30G/SIZE 10G : 这是表空间大小 ,单位还可以为KB,MB;
. 目标库 - 创建用户及授权
创建用户语句【CREATE USER "user_name" PROFILE "DEFAULT" IDENTIFIED BY &pwd DEFAULT TABLESPACE "tablespace_name" TEMPORARY TABLESPACE "tmp_tablespace_name" ACCOUNT UNLOCK;】
用户授权语句【GRANT "CONNECT" TO "user_name";
GRANT "EXP_FULL_DATABASE" TO "user_name";
GRANT "IMP_FULL_DATABASE" TO "user_name";
GRANT "RESOURCE" TO "user_name";】
. 源库 - 创建物化视图专用表空间
创建物化视图表空间语句【CREATE SMALLFILE TABLESPACE "user_mv_tablespace_name" DATAFILE '+DATA' SIZE 10G ;】
. 源库 - 创建物化视图日志
创建物化视图日志语句-有主键【CREATE MATERIALIZED VIEW LOG ON sachme.tablename tablespace user_mv_tablespace_name WITH PRIMARY KEY;】
创建物化视图日志语句-无主键【CREATE MATERIALIZED VIEW LOG ON sachme.tablename tablespace user_mv_tablespace_name WITH ROWID;】
. 源库 - 对应表授权
对应表授权语句【GRANT SELECT ON sachme.tablename TO dblink_username ;】
. 源库 - 对应日志表授权
对应日志授权语句【SELECT 'GRANT SELECT ON ' ||LOG_TABLE || 'TO dblink_username' FROM DBA_MVIEW_LOGS WHERE MASTER='tables_name'; 】
. 目标库 - 创建物化视图
创建物化视图语句 - 有主键【CREATE MATERIALIZED VIEW sachme.matrializedview_name TABLESPACE tablespace_name REFRESH FAST ON DEMAND START WITH SYSDATE NEXT TRUNC(SYSDATE)+1+2/24 WITH PRIMARY KEY FOR UPDATE AS SELECT * FROM sachme.tablename@dblink_name;】
创建物化视图语句 - 无主键【CREATE MATERIALIZED VIEW sachme.matrializedview_name TABLESPACE tablespace_name REFRESH FAST ON DEMAND START WITH SYSDATE NEXT TRUNC(SYSDATE)+1+2/24 WITH ROWID FOR UPDATE AS SELECT * FROM sachme.tablename@dblink_name;】
注明: