3 环境准备
3.1 设定初始化参数
使用pfile的修改init<SID>.ora文件,使用spfile的通过alter system命令修改spile文件。主、从数据库分别执行如下的语句:
Sqlplus ‘/ as sysdba’
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=25M scope=spfile;
alter system set utl_file_dir='*' scope=spfile;
alter system set open_links=4 scope=spfile;
执行完毕后重启数据库。
3.2 将数据库置为归档模式
设置log_archive_dest_1到相应的位置;设定log_archive_start为TRUE,即启用自动归档功能;设定log_archive_format指定归档日志的命令格式。
举例:
sqlplus ‘/ as sysdba’
alter system set log_archive_dest_1=’location=/yang/arch’ scope=spfile;
alter system set log_archive_start=TRUE scope=spfile;
alter system set log_archive_format=’ arch%t_%s_%r.arc’ scope=spfile;
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
数据库置为归档模式后,可以按如下方式检验一下:
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /yang/arch
Oldest online log sequence 534
Next log sequence to archive 536
Current log sequence 536
观注标红的部分。
3.3 创建stream 管理用户
3.3.1 创建主环境stream管理用户
#以sysdba身份登录
connect / as sysdba
#创建主环境的Stream专用表空间
create tablespace tbs_stream datafile '/yang/oradata/prod/tbs_stream01.dbf'
size 100m autoextend on maxsize unlimited segment space management auto;
#将logminer的数据字典从system表空间转移到新建的表空间,防止撑满system表空间
execute dbms_logmnr_d.set_tablespace('tbs_stream');
#创建Stream管理用户
create user strmadmin identified by strmadmin
default tablespace tbs_stream temporary tablespace temp;
#授权Stream管理用户
grant connect,resource,dba,aq_administrator_role to strmadmin;
begin
dbms_streams_auth.grant_admin_privilege(
grantee => 'strmadmin',
grant_privileges => true);
end;
/
3.3.2 创建从环境stream管理用户
#以sysdba身份登录
connect / as sysdba
#创建Stream专用表空间,我的从库用了ASM,这一步也可以参见3.3.1
create tablespace tbs_stream datafile '+VGDATA/h10g/datafile/tbs_stream01.dbf'
size 100m autoextend on maxsize unlimited segment space management auto;
#同样,将logminer的数据字典从system表空间转移到新建的表空间,防止撑满system表空间
execute dbms_logmnr_d.set_tablespace('tbs_stream');
#创建Stream管理用户
create user strmadmin identified by strmadmin
default tablespace tbs_stream temporary tablespace temp;
#授权Stream管理用户
grant connect,resource,dba,aq_administrator_role to strmadmin;
begin
dbms_streams_auth.grant_admin_privilege(
grantee => 'strmadmin',
grant_privileges => true);
end;
/
3.4 配置网络连接
3.4.1配置主环境tnsnames.ora
主数据库(tnsnames.ora)中添加从数据库的配置。
H10G =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.43)(PORT = 1521))
)
(CONNECT_DATA =
(SID = h10g)
(SERVER = DEDICATED)
)
)
3.4.2配置从环境tnsnames.ora
从数据库(tnsnames.ora)中添加主数据库的配置。
PROD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.35)(PORT = 1521))
)
(CONNECT_DATA =
(SID = prod)
(SERVER = DEDICATED)
)
)