Oracle Data Guard 环境搭建
一、安装前所需环境
二、 配置主库
1、 强制写日志
2、 设置数据库为归档模式
3、 在主库添加备库日志文件
4、 查看备库日志文件
5、 配置静态监听参数
6、 配置 络连接名
7、 配置pfile
三、 配置备库
1、 配置备库监听参数
2、 配置 络连接名
3、 检验 络连接名
4、 修改之前从主库拷贝过来的pfile
5、 拷贝密码文件
6、 创建启动需要的目录
7、 启动数据库到nomount状态
四、 最后配置
1、 复制主库到备库
2、 开启备库
3、 备库实时应用日志文件
4、 查询主备数据库各自状态
五、 验证数据同步
Oracle Data Guard 环境搭建
一、安装前所需环境
两台虚拟机,两台都配置好 络,装好ORACLE软件,一台装好ORACLE数据库,一台不装数据库
版本信息
二、配置主库
两台虚拟机的hosts需要配置好
此处我的
主库的ip为192.168.43.14 主机名为zzz3
备库的ip为192.168.43.15 主机名为zzz4
打开数据库
强制写日志
alter database force logging;
设置数据库为归档模式
把数据库关闭
shutdown immediate
把数据库启动到nomount模式
startup nomount
归档模式
alter database archivelog;
打开数据库
alter database open;
查看
archive log list;
归档日志路径
alter system set log_archive_dest_1 =’location=/u01/arch’;
归档日志类型
alter system set log_archive_format =’%t_%s_%r.arc’;
在主库添加备库日志文件
个数为当前日志数加1
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo01.log’ size 200M;
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo02.log’ size 200M;
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo03.log’ size 200M;
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo04.log’ size 200M;
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo05.log’ size 200M;
alter database add standby logfile ‘/u02/app/oracle/oradata/orcl3/stdredo06.log’ size 200M;
如果想删除
代码为
ALTER DATABASE DROP STANDBY LOGFILE GROUP 6;
ALTER DATABASE DROP STANDBY LOGFILE GROUP 7;
ALTER DATABASE DROP STANDBY LOGFILE GROUP 8;
ALTER DATABASE DROP STANDBY LOGFILE GROUP 9;
ALTER DATABASE DROP STANDBY LOGFILE GROUP 10;
ALTER DATABASE DROP STANDBY LOGFILE GROUP 11;
查看备库日志文件
select group#,thread#,sequence#,archived,status from v$standby_log;
配置静态监听参数
vim $ORACLE_HOME/network/admin/listener.ora
图中orcl3为实例名
配置 络连接名
vim $ORACLE_HOME/network/admin/tnsname.ora
ORCL_S =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zzz4)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl3)
)
)
ORCL_P =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zzz3)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl3)
)
)
orcl3为实例名
orcl_s为备库
orcl_p为主库
检验是否可用
tnsping orcl_p
如图即为成功
配置pfile
文件为
$ORACLE_HOME/dbs/initorcl3.ora
先拷贝一份到备库
修改主库pfile,加入以下参数
*.db_name=’orcl3′
*.db_unique_name=’orcl_p’
*.log_archive_config=’dg_config=(orcl_p,orcl_s)’
*.log_archive_dest_1=’location=/u01/arch valid_for=(all_logfiles,all_roles) db_unique_name=orcl_p’
*.log_archive_dest_2=’service=orcl_s valid_for=(online_logfiles,primary_role) lgwr affirm sync db_unique_name=orcl_s’
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.standby_file_management=’auto’
*.fal_server=’orcl_s’
*.log_file_name_convert=’/u02/app/oracle/oradata/orcl3′,’/u01/app/oracle/oradata/orcl3′
*.db_file_name_convert=’/u02/app/oracle/oradata/orcl3′,’/u01/app/oracle/oradata/orcl3′
三、配置备库
配置备库监听参数
如主库
配置 络连接名
如主库
检验 络连接名
tnsping orcl_p
tnsping orcl_s
修改之前从主库拷贝过来的pfile
加上如下代码
*.db_name=’orcl3′
*.db_unique_name=’orcl_s’
*.log_archive_config=’dg_config=(orcl_p,orcl_s)’
*.log_archive_dest_1=’location=/u01/arch valid_for=(all_logfiles,all_roles) db_unique_name=orcl_s’
*.log_archive_dest_2=’service=orcl_p valid_for=(online_logfiles,primary_role) lgwr affirm sync db_unique_name=orcl_p’
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.standby_file_management=’auto’
*.fal_server=’orcl_p’
*.log_file_name_convert=’/u02/app/oracle/oradata/orcl3′,’/u01/app/oracle/oradata/orcl3′
*.db_file_name_convert=’/u02/app/oracle/oradata/orcl3′,’/u01/app/oracle/oradata/orcl3′
拷贝密码文件
密码文件为
$ORACLE_HOME/dbs/oraporcl3
创建启动需要的目录
mkdir -p /u01/app/oracle/admin/orcl3/adump
启动数据库到nomount状态
shutdown immediate
startup nomount
四、最后配置
复制主库到备库
到主库使用rman
rman target sys/oracle@orcl_p auxiliary sys/oracle@orcl_s
duplicate target database for standby from active database nofilenamecheck dorecover;
开启备库
到备库
alter database open;
备库实时应用日志文件
alter database recover managed standby database using current logfile disconnect from session;
取消实时应用日志文件的指令
alter database recover managed standby database cancel;
查询主备数据库各自状态
主库
select log_mode,open_mode,database_role from v$database;
备库
select log_mode,open_mode,database_role from v$database;
五、验证数据同步
主库
创建一个表 ,插入若干数据
强制切换日志
到备库查看
数据同步成功
文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树数据库组成表31259 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!