- 浏览: 197450 次
文章分类
- 全部博客 (224)
- jsp (5)
- jsf (7)
- web (11)
- js (12)
- COBOL (5)
- php (7)
- jconsole (1)
- java (11)
- ajax (1)
- PHP魔法方法 (1)
- 项目管理工具 (3)
- 项目管理 (2)
- svn (8)
- redmine (1)
- mysql (4)
- qrcode,php (1)
- qrcode (1)
- 多进程 (3)
- html (1)
- excel (2)
- seasar2 (1)
- db (1)
- entity (1)
- IOS8 (1)
- SWIFT (1)
- 正则表达式 (1)
- RabbitVCS (1)
- url (1)
- thinkphp (2)
- c++ (5)
- win32 API函数 (1)
- htaccess (1)
- makefile (3)
- C/C++ (12)
- Linux (1)
- miui (2)
- unix (1)
- wechat (1)
- websocket (1)
- SpringMVC (3)
- VSAM (1)
- centos (2)
- wamp (1)
- server (1)
- 优酷视频上传并去除广告 (1)
- owncload (1)
- cloud (1)
- ubuntu (1)
- pdf转换成word (1)
- 微信,weixin (1)
- 行业系统 (3)
- 超级外卖源代码 (0)
- 软件专利 (1)
- 申请 (1)
- vba (1)
- UML (1)
- 程序切片 (1)
- 股票心得 (1)
- 威客建站 (1)
- 微信开发学习路线 (1)
- 远程开机 (1)
- spring mvc (1)
- JEECMS (1)
- Node.js (1)
- ThinkJS (1)
- maven (2)
- MyEclipse+Tomcat+MAVEN+SVN (1)
- Spring+SpringMVC+MyBatis (1)
- wampserver (0)
- RESTful (1)
- hibernate (4)
- Spring+SpringMVC (1)
- 响应式布局 (1)
- 响应式布局模板 (1)
- Aptana (3)
- 遗传算法 (1)
- 进化算法 (1)
- bower (1)
- HTML5 (1)
- Android官方培训课程 (1)
- MySQL锁 (1)
- 扫描枪 (1)
- 微信公众平台 (1)
- 企业号 (1)
- ddns (1)
- java获取外网ip (1)
- DDNS,阿里云,云解析,万网域名,阿里云域名 (1)
- SEO (1)
- Jboss (2)
- wildfly (1)
- WildFly8 (2)
- NT Kernel (1)
- 反向代理 (1)
- Spring嵌套事务 (1)
- apache (3)
- 防止浏览器记住用户名及密码的简单实用方法 (1)
- 时间戳 (1)
- 字体 (1)
- 网络爬虫准 (1)
- 屏蔽后退按钮 (1)
- java web (1)
- JavaMail (1)
- windows服务 (1)
- Freemarker (1)
- TortoiseGit (2)
- oschina (1)
- JSON (1)
- Boost (1)
- MUI (1)
- github (1)
- Python2.7 (1)
- Python3.0 (1)
- Odoo (1)
- java socket (1)
- OpenERP (2)
- werkzeug (1)
- JNA (2)
- proxifier (1)
- WebService (1)
- 企业应用集成 (1)
- vmware (1)
- Navicate (1)
- 三体 (1)
- oracle同步 (1)
- 微信 (3)
- java设计模式 (1)
- 工具 (1)
- JavaScript跨域 (1)
- LB (1)
- 负载均衡 (1)
- AngularJS (1)
- HBuilder (1)
- Echarts (1)
- Json Web Token (1)
- PassportSDK (1)
- ubuntu kylin xterm 乱码 (1)
- ubuntu kylin17 安装字体教程 (1)
- wps (1)
- jetbrains (1)
- MySQL5.7 (1)
- Nginx (1)
- JDK (1)
最新评论
-
cuiyadll:
谢谢楼上的推荐
实战:jQuery Mobile开发HTML5移动应用 -
marty:
使用JQueryMobile,推薦使用這免費開發工具,提供可視 ...
实战:jQuery Mobile开发HTML5移动应用 -
men_clslji:
按照目前的方法只是防止刷新页面时不再执行X(添加),而toke ...
有了上一篇博文,类似地顺便说说表单防重复提交。
常用命令:
sqlplus /nolog 启动sqlplus程序
conn / as sysdba 以系统管理员登录
conn strmadmin/strmadmin@icg 以数据库成员登录
show parameter xxx 查看系统配置
alter system set key=value 更改系统配置
lsnrctl stop/start 重新加载监听
startup mount/nomount 启动数据库
shutdown immediate 关闭数据库
alter database open 打开数据库
EXEC DBMS_STREAMS_ADM.remove_streams_configuration(); 清除同步配置
开始
1.查看数据库是否归档
————————————————————————————————————————————
select name,log_mode from v$database;
————————————————————————————————————————————
结果:ARCHIVELOG表示归档成功
2.如果为归档直接跳过,如果不是归档,执行下面操作
2.1增加LOG位置,使用show parameter log_archive_dest_1可以查看
————————————————————————————————————————————————————————————————————————————————————————
alter system set log_archive_dest_1='location=D:/u01/product/11.2.0/db_1/archive_log';
————————————————————————————————————————————————————————————————————————————————————————
2.2重启数据库
——————————————————————
shutdown immediate;
startup mount;
alter database open;
——————————————————————
2.2.1如果发生ORA-00119异常,执行下面操作
可能是$HOME/network/admin/tnsnames.ora中没有指定LISTINER_MECOOLDB地址
可以直接打开D:\u01\admin\MECOOLDB\pfile中的init.ora.xxxx文件,修改loc al_listener="(ADDRESS = (PROTOCOL = TCP)(HOST = ICG-DL-LYS)(PORT = 1521))"
然后执行
————————————————————————————————————————————————————————————————————————————————
create spfile from pfile = 'D:\u01\admin\MECOOLDB\pfile\init.ora.xxxx",
————————————————————————————————————————————————————————————————————————————————
也可以直接修改tnsnames.ora文件,增加
LISTINER_MECOOLDB =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
就可以了。
可能还是启动不起来,这个时候执行一下
——————————————————————————————————————————————————————
create spfile from pfile;
——————————————————————————————————————————————————————
就可以了。
2.3修改日志文件命名格式
——————————————————————————————————————————————————————————————————————————————
alter system set log_archive_max_processes = 5;
alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
——————————————————————————————————————————————————————————————————————————————
2.4查看系统存档模式
——————————————————————
archive log list;
——————————————————————
3.配置数据库相关参数
3.1配置前最好使用show parameter 查看一下是否需要配置
————————————————————————————————————————————————
alter system set aq_tm_processes=2 scope=both;
alter system set global_names=true scope=both;
alter system set job_queue_processes=10 scope=both;
alter system set parallel_max_servers=20 scope=both;
alter system set undo_retention=3600 scope=both;
alter system set nls_date_format='YYYY-MM-DD HH24:MI:SS' scope=spfile;
alter system set streams_pool_size=512M scope=spfile;
alter system set utl_file_dir='*' scope=spfile;
alter system set open_links=4 scope=spfile;
————————————————————————————————————————————————
3.2重启数据库
——————————————————————
shutdown immediate;
startup mount;
alter database open;
——————————————————————
4.源数据库和目的数据库创建相同表空间和用户并赋权,
4.1如果原来有,现象不需要,请执行
——————————————————————————————————————————————————————————————
drop user strmadmin cascade;
DROP TABLESPACE streams_tbs INCLUDING CONTENTS AND DATAFILES;
——————————————————————————————————————————————————————————————
4.2创建表空间和用户,并且进行赋值
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
CREATE TABLESPACE streams_tbs DATAFILE 'D:\u01\oradata\MECOOLDB\streams_tbs.dbf' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
CREATE USER strmadmin IDENTIFIED BY strmadmin DEFAULT TABLESPACE streams_tbs;
grant connect, resource, dba, aq_administrator_role to strmadmin;
begin
dbms_streams_auth.grant_admin_privilege(
grantee => 'strmadmin',
grant_privileges => true
);
end;
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
以上为主库和备库共同的东西,一下需要分别设定
5.配置本地访问名称tnsname.ora文件和listener.ora
主库:路径$HOME\network/admin/
GLOBAL_DBNAME必须指定
————————————————————————————————————————————————————————————————————————
#spfile文件使用
LISTINER_MECOOLDB =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
#用户连接备库的时候使用的
ICGDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.201)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ICGDB)
)
)
#用户连接主库的时候使用的
MECOOLDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MECOOLDB)
)
)
——————————————————————————————————————————————————————————————————————————
备库一样,略
6.在主库上面启用 supplemental log
————————————————————————————————————————————————
ALTER DATABASE FORCE LOGGING;
alter database add supplemental log data;
————————————————————————————————————————————————
查看结果
SELECT SUPPLEMENTAL_LOG_DATA_MIN,
SUPPLEMENTAL_LOG_DATA_PK,
SUPPLEMENTAL_LOG_DATA_UI,
SUPPLEMENTAL_LOG_DATA_ALL
FROM V$DATABASE;
结果:
SUPPLEME SUP SUP SUP
-------- --- --- ---
YES NO NO NO
7.创建db link
主库上:
————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin;
create database link icgdb connect to strmadmin identified by strmadmin using 'icgdb';
————————————————————————————————————————————————————————————————————————————————————————
备库上:
————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin;
create database link mecooldb connect to strmadmin identified by strmadmin using 'mecooldb';
————————————————————————————————————————————————————————————————————————————————————————
8.创建队列流
8.1创建主库队列流
8.1.1增加
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb
exec DBMS_STREAMS_ADM.SET_UP_QUEUE(queue_table => 'SOURCE_QUEUE_TABLE',queue_name => 'SOURCE_QUEUE',queue_user => 'strmadmin');
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.1.2移除
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb
exec dbms_streams_adm.remove_queue(queue_name => 'SOURCE_QUEUE',cascade => true,drop_unused_queue_table => true);
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.1.3检测
————————————————————————————————————————————————————————————————————————————————————
select owner,queue_table,name from dba_queues where owner='STRMADMIN';
————————————————————————————————————————————————————————————————————————————————————
8.2创建备库队列流
8.2.1增加
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb
exec DBMS_STREAMS_ADM.SET_UP_QUEUE(queue_table => 'TARGET_QUEUE_TABLE',queue_name => 'TARGET_QUEUE',queue_user => 'strmadmin');
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.2.2移除
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb
exec dbms_streams_adm.remove_queue(queue_name => 'TARGET_QUEUE',cascade => true,drop_unused_queue_table => true);
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.2.3检测
————————————————————————————————————————————————————————————————————————————————————
select owner,queue_table,name from dba_queues where owner='STRMADMIN';
————————————————————————————————————————————————————————————————————————————————————
9.在主库上创建捕获进程
9.1创建
————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
schema_name => 'icg',
streams_type=> 'capture',
streams_name => 'capture_stream',
queue_name => 'strmadmin.SOURCE_QUEUE',
include_dml => true,
include_ddl => true,
source_database => null,
include_tagged_lcr => false,
inclusion_rule => true
);
END;
————————————————————————————————————————
9.2检测
————————————————————————————————————————
select CAPTURE_NAME,QUEUE_NAME,START_SCN,STATUS,CAPTURE_TYPE from dba_capture;
select * from ALL_CAPTURE_PREPARED_SCHEMAS;
————————————————————————————————————————
10.实例化复制数据库
10.1获取源库互置用户的SCN
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
set serveroutput on;
DECLARE
iscn NUMBER;
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_OUTPUT.PUT_LINE('Instantiation SCN is: ' || iscn);
END;
/
————————————————————————————————————————————————————————
10.2设置为目标库互置用户的SCN
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
BEGIN
DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN(
source_schema_name => 'SYSTEM',
source_database_name => 'MECOOLDB',
instantiation_scn => &iscn
);
END;
/
————————————————————————————————————————————————————————
11.创建传播进程
11.1创建传播进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES(
schema_name => 'icg',
streams_name => 'source_to_target',
source_queue_name => 'strmadmin.SOURCE_QUEUE',
destination_queue_name => 'strmadmin.TARGET_QUEUE@icgdb',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database => 'MECOOLDB',
inclusion_rule => true,
queue_to_queue => true
);
END;
/
————————————————————————————————————————————————————————
11.2检测
————————————————————————————————————————————————————————
select PROPAGATION_NAME,SOURCE_QUEUE_NAME,DESTINATION_QUEUE_NAME,DESTINATION_DBLINK,STATUS from dba_propagation;
————————————————————————————————————————————————————————
11.3修改propagation休眠时间为5,表示实时传播LCR(logical change recoder)。
————————————————————————————————————————————————————————
BEGIN
dbms_aqadm.alter_propagation_schedule(
queue_name => 'SOURCE_QUEUE',
destination => 'icgdb',
destination_queue=> 'TARGET_QUEUE',
latency => 0);
END;
/
————————————————————————————————————————————————————————
11.4目标数据库创建Apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
schema_name => 'icg',
streams_type => 'apply',
streams_name => 'target_apply_stream',
queue_name => 'strmadmin.TARGET_QUEUE',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database => 'MECOOLDB',
inclusion_rule => true
);
END;
/
————————————————————————————————————————————————————————
12.启动STREAM
12.1在目标库启动apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'target_apply_stream', parameter => 'disable_on_error', VALUE => 'n');
EXEC DBMS_APPLY_ADM.START_APPLY(apply_name=>'target_apply_stream');
————————————————————————————————————————————————————————
12.2检测启动情况
————————————————————————————————————————————————————————
select apply_name,queue_name,status from dba_apply;
————————————————————————————————————————————————————————
12.3在主库上启动Capture进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
EXEC DBMS_CAPTURE_ADM.START_CAPTURE(capture_name=>'capture_stream');
————————————————————————————————————————————————————————
12.4检测启动情况
————————————————————————————————————————————————————————
select capture_name,status from dba_capture;
————————————————————————————————————————————————————————
13.停止stream
13.1停止Capture进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
exec dbms_capture_adm.stop_capture(capture_name => 'capture_stream');
————————————————————————————————————————————————————————
13.2停止Apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
exec dbms_apply_adm.stop_apply(apply_name => 'target_apply_stream');
————————————————————————————————————————————————————————
14.清除所有配置(注意在清除钱要先停止stream,请注意,不要误操作了)
——————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
EXEC DBMS_STREAMS_ADM.remove_streams_configuration();
conn strmadmin/strmadmin@icgdb;
EXEC DBMS_STREAMS_ADM.remove_streams_configuration();
——————————————————————————————————————————————————————————————
sqlplus /nolog 启动sqlplus程序
conn / as sysdba 以系统管理员登录
conn strmadmin/strmadmin@icg 以数据库成员登录
show parameter xxx 查看系统配置
alter system set key=value 更改系统配置
lsnrctl stop/start 重新加载监听
startup mount/nomount 启动数据库
shutdown immediate 关闭数据库
alter database open 打开数据库
EXEC DBMS_STREAMS_ADM.remove_streams_configuration(); 清除同步配置
开始
1.查看数据库是否归档
————————————————————————————————————————————
select name,log_mode from v$database;
————————————————————————————————————————————
结果:ARCHIVELOG表示归档成功
2.如果为归档直接跳过,如果不是归档,执行下面操作
2.1增加LOG位置,使用show parameter log_archive_dest_1可以查看
————————————————————————————————————————————————————————————————————————————————————————
alter system set log_archive_dest_1='location=D:/u01/product/11.2.0/db_1/archive_log';
————————————————————————————————————————————————————————————————————————————————————————
2.2重启数据库
——————————————————————
shutdown immediate;
startup mount;
alter database open;
——————————————————————
2.2.1如果发生ORA-00119异常,执行下面操作
可能是$HOME/network/admin/tnsnames.ora中没有指定LISTINER_MECOOLDB地址
可以直接打开D:\u01\admin\MECOOLDB\pfile中的init.ora.xxxx文件,修改loc al_listener="(ADDRESS = (PROTOCOL = TCP)(HOST = ICG-DL-LYS)(PORT = 1521))"
然后执行
————————————————————————————————————————————————————————————————————————————————
create spfile from pfile = 'D:\u01\admin\MECOOLDB\pfile\init.ora.xxxx",
————————————————————————————————————————————————————————————————————————————————
也可以直接修改tnsnames.ora文件,增加
LISTINER_MECOOLDB =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
就可以了。
可能还是启动不起来,这个时候执行一下
——————————————————————————————————————————————————————
create spfile from pfile;
——————————————————————————————————————————————————————
就可以了。
2.3修改日志文件命名格式
——————————————————————————————————————————————————————————————————————————————
alter system set log_archive_max_processes = 5;
alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
——————————————————————————————————————————————————————————————————————————————
2.4查看系统存档模式
——————————————————————
archive log list;
——————————————————————
3.配置数据库相关参数
3.1配置前最好使用show parameter 查看一下是否需要配置
————————————————————————————————————————————————
alter system set aq_tm_processes=2 scope=both;
alter system set global_names=true scope=both;
alter system set job_queue_processes=10 scope=both;
alter system set parallel_max_servers=20 scope=both;
alter system set undo_retention=3600 scope=both;
alter system set nls_date_format='YYYY-MM-DD HH24:MI:SS' scope=spfile;
alter system set streams_pool_size=512M scope=spfile;
alter system set utl_file_dir='*' scope=spfile;
alter system set open_links=4 scope=spfile;
————————————————————————————————————————————————
3.2重启数据库
——————————————————————
shutdown immediate;
startup mount;
alter database open;
——————————————————————
4.源数据库和目的数据库创建相同表空间和用户并赋权,
4.1如果原来有,现象不需要,请执行
——————————————————————————————————————————————————————————————
drop user strmadmin cascade;
DROP TABLESPACE streams_tbs INCLUDING CONTENTS AND DATAFILES;
——————————————————————————————————————————————————————————————
4.2创建表空间和用户,并且进行赋值
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
CREATE TABLESPACE streams_tbs DATAFILE 'D:\u01\oradata\MECOOLDB\streams_tbs.dbf' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
CREATE USER strmadmin IDENTIFIED BY strmadmin DEFAULT TABLESPACE streams_tbs;
grant connect, resource, dba, aq_administrator_role to strmadmin;
begin
dbms_streams_auth.grant_admin_privilege(
grantee => 'strmadmin',
grant_privileges => true
);
end;
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
以上为主库和备库共同的东西,一下需要分别设定
5.配置本地访问名称tnsname.ora文件和listener.ora
主库:路径$HOME\network/admin/
GLOBAL_DBNAME必须指定
————————————————————————————————————————————————————————————————————————
#spfile文件使用
LISTINER_MECOOLDB =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
#用户连接备库的时候使用的
ICGDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.201)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ICGDB)
)
)
#用户连接主库的时候使用的
MECOOLDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.221)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MECOOLDB)
)
)
——————————————————————————————————————————————————————————————————————————
备库一样,略
6.在主库上面启用 supplemental log
————————————————————————————————————————————————
ALTER DATABASE FORCE LOGGING;
alter database add supplemental log data;
————————————————————————————————————————————————
查看结果
SELECT SUPPLEMENTAL_LOG_DATA_MIN,
SUPPLEMENTAL_LOG_DATA_PK,
SUPPLEMENTAL_LOG_DATA_UI,
SUPPLEMENTAL_LOG_DATA_ALL
FROM V$DATABASE;
结果:
SUPPLEME SUP SUP SUP
-------- --- --- ---
YES NO NO NO
7.创建db link
主库上:
————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin;
create database link icgdb connect to strmadmin identified by strmadmin using 'icgdb';
————————————————————————————————————————————————————————————————————————————————————————
备库上:
————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin;
create database link mecooldb connect to strmadmin identified by strmadmin using 'mecooldb';
————————————————————————————————————————————————————————————————————————————————————————
8.创建队列流
8.1创建主库队列流
8.1.1增加
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb
exec DBMS_STREAMS_ADM.SET_UP_QUEUE(queue_table => 'SOURCE_QUEUE_TABLE',queue_name => 'SOURCE_QUEUE',queue_user => 'strmadmin');
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.1.2移除
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb
exec dbms_streams_adm.remove_queue(queue_name => 'SOURCE_QUEUE',cascade => true,drop_unused_queue_table => true);
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.1.3检测
————————————————————————————————————————————————————————————————————————————————————
select owner,queue_table,name from dba_queues where owner='STRMADMIN';
————————————————————————————————————————————————————————————————————————————————————
8.2创建备库队列流
8.2.1增加
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb
exec DBMS_STREAMS_ADM.SET_UP_QUEUE(queue_table => 'TARGET_QUEUE_TABLE',queue_name => 'TARGET_QUEUE',queue_user => 'strmadmin');
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.2.2移除
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb
exec dbms_streams_adm.remove_queue(queue_name => 'TARGET_QUEUE',cascade => true,drop_unused_queue_table => true);
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
8.2.3检测
————————————————————————————————————————————————————————————————————————————————————
select owner,queue_table,name from dba_queues where owner='STRMADMIN';
————————————————————————————————————————————————————————————————————————————————————
9.在主库上创建捕获进程
9.1创建
————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
schema_name => 'icg',
streams_type=> 'capture',
streams_name => 'capture_stream',
queue_name => 'strmadmin.SOURCE_QUEUE',
include_dml => true,
include_ddl => true,
source_database => null,
include_tagged_lcr => false,
inclusion_rule => true
);
END;
————————————————————————————————————————
9.2检测
————————————————————————————————————————
select CAPTURE_NAME,QUEUE_NAME,START_SCN,STATUS,CAPTURE_TYPE from dba_capture;
select * from ALL_CAPTURE_PREPARED_SCHEMAS;
————————————————————————————————————————
10.实例化复制数据库
10.1获取源库互置用户的SCN
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
set serveroutput on;
DECLARE
iscn NUMBER;
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_OUTPUT.PUT_LINE('Instantiation SCN is: ' || iscn);
END;
/
————————————————————————————————————————————————————————
10.2设置为目标库互置用户的SCN
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
BEGIN
DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN(
source_schema_name => 'SYSTEM',
source_database_name => 'MECOOLDB',
instantiation_scn => &iscn
);
END;
/
————————————————————————————————————————————————————————
11.创建传播进程
11.1创建传播进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES(
schema_name => 'icg',
streams_name => 'source_to_target',
source_queue_name => 'strmadmin.SOURCE_QUEUE',
destination_queue_name => 'strmadmin.TARGET_QUEUE@icgdb',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database => 'MECOOLDB',
inclusion_rule => true,
queue_to_queue => true
);
END;
/
————————————————————————————————————————————————————————
11.2检测
————————————————————————————————————————————————————————
select PROPAGATION_NAME,SOURCE_QUEUE_NAME,DESTINATION_QUEUE_NAME,DESTINATION_DBLINK,STATUS from dba_propagation;
————————————————————————————————————————————————————————
11.3修改propagation休眠时间为5,表示实时传播LCR(logical change recoder)。
————————————————————————————————————————————————————————
BEGIN
dbms_aqadm.alter_propagation_schedule(
queue_name => 'SOURCE_QUEUE',
destination => 'icgdb',
destination_queue=> 'TARGET_QUEUE',
latency => 0);
END;
/
————————————————————————————————————————————————————————
11.4目标数据库创建Apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
schema_name => 'icg',
streams_type => 'apply',
streams_name => 'target_apply_stream',
queue_name => 'strmadmin.TARGET_QUEUE',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database => 'MECOOLDB',
inclusion_rule => true
);
END;
/
————————————————————————————————————————————————————————
12.启动STREAM
12.1在目标库启动apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'target_apply_stream', parameter => 'disable_on_error', VALUE => 'n');
EXEC DBMS_APPLY_ADM.START_APPLY(apply_name=>'target_apply_stream');
————————————————————————————————————————————————————————
12.2检测启动情况
————————————————————————————————————————————————————————
select apply_name,queue_name,status from dba_apply;
————————————————————————————————————————————————————————
12.3在主库上启动Capture进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
EXEC DBMS_CAPTURE_ADM.START_CAPTURE(capture_name=>'capture_stream');
————————————————————————————————————————————————————————
12.4检测启动情况
————————————————————————————————————————————————————————
select capture_name,status from dba_capture;
————————————————————————————————————————————————————————
13.停止stream
13.1停止Capture进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
exec dbms_capture_adm.stop_capture(capture_name => 'capture_stream');
————————————————————————————————————————————————————————
13.2停止Apply进程
————————————————————————————————————————————————————————
conn strmadmin/strmadmin@icgdb;
exec dbms_apply_adm.stop_apply(apply_name => 'target_apply_stream');
————————————————————————————————————————————————————————
14.清除所有配置(注意在清除钱要先停止stream,请注意,不要误操作了)
——————————————————————————————————————————————————————————————
conn strmadmin/strmadmin@mecooldb;
EXEC DBMS_STREAMS_ADM.remove_streams_configuration();
conn strmadmin/strmadmin@icgdb;
EXEC DBMS_STREAMS_ADM.remove_streams_configuration();
——————————————————————————————————————————————————————————————
相关推荐
oracle配置手顺,很简单的啊啊。大家可以下载参照啊
简单配置后将oracle数据同步到elasticsearch数据库中
Python实现两个Oracle数据库同步工作
Oracle同步数据到Sql Server,只是初始加载过程,由于本人也是在学习阶段,本资料主要是用于备份,慎入!
两个Oracle 数据表同步,只是使用两个不同Oracle 数据的某些表保持数据相同.也许你能用到.
一个mysql数据库数据同步至oracle数据库代码,同时修改mysql数据表标识。
复制粘贴方式在redhat 上安装oracle。有效哦!不用再看其他资源了,出错排查比较麻烦。这个可以对着做
内容涉及oracle 12的容器数据库,可插入数据库,目前只做了DML的数据同步(不含ddl的同步)
分别有:数据源配置、数据表结构转换、字段更新、数据迁移、根据oracle SQL的UPDATE DELETE 事物执行记录转为Mysql可执行SQL,同步执行到MySql数据库,此项目为个人兴趣爱好练手项目,项目问题欢迎留言,共同进步...
3、通过datax同步oracle相关-oracle到hdfs 网址:https://blog.csdn.net/chenwewi520feng/article/details/130508968 介绍oracle的相关同步,oracle同步到hdfs中示例以及验证
Oracle 白皮书 ADG 同步复制技术.
基于Oracle数据库的数据同步技术大体上可分为两类:Oracle自己提供的数据同步技术和第三方厂商提供的数据同步技术。Oracle自己的同步技术有DataGuard,Streams,Advanced Replication和今年刚收购的一款叫做...
为了满足客户的要求,客户要求两台数据库服务器在不能直接通信的情况下,要保证两台数据库数据保持同步,并且要保证效率,数据量一般每分钟最少可以到达2万条(只能通过端口访问),所以只能使用程序先生成满足特定...
SpringBoot定时任务实现Oracle和mysql数据同步
Oracle linux安装日文版手顺,Oracle linux安装日文版手顺
yugong 是阿里巴巴推出的去Oracle数据迁移同步工具(全量 增量,目标支持MySQL/DRDS)。2008年左右,阿里巴巴开始尝试MySQL的相关研究,并开发了基于MySQL分库分表技术的相关产品,Cobar/TDDL(目前为阿里云DRDS产品),...
巧用dblink结合oracle快照实现两台服务器的数据同步 有详细步骤
oracle 直接同步sybase中数据
GoldenGate Oracle同步到Mysql配置手册,适用于读写分离、灾备等场景,提供大家参考
oracle数据库同步perl脚本示例 其中有2个文件,一个是 perl同步脚本,另一个是存储过程; 大致思路是:perl脚本从数据库A同步数据至库B的临时表中,再通过存储过程将库B中的临时数据过滤导入正式数据当中。