天天看点

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

用户可按需安装非RAC模式的oracle程序及实例,按需配置监听器,只需确保所有服务器与oracle相关的参数完全一致即可。

将Oracle应用配置成高可用模式需要记录下列参数,您可以自行整理这些参数,也可以参考以下实例来查看这些参数:

示例:

su - oracle -c 'echo $ORACLE_BASE'

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

示例:

su - oracle -c 'echo $ORACLE_HOME'

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

示例:

su - oracle -c 'echo $ORACLE_SID'

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

示例:

su - oracle -c 'echo $TNS_ADMIN'

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

监听器配置文件名称一般为“listener.ora”

示例:

su - oracle -c 'cat$TNS_ADMIN/listener.ora'

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

如上图中第一个等号“=”前的名称为监听器名称

Oracle实例安装位置

示例:

su – oracle

sqlplus / as sysdba

select t1.name,t2.name from v$tablespacet1,v$datafile t2 where t1.ts# = t2.ts#;

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

如上图中实例名目录所处的路径为实例安装位置。

示例:

cd /opt/app/oracle #进入ORACLE_BASE

find -name "c*.ctl" #一般控制文件名为control**.ctl

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

只有通过此脚本,才能使HA程序自动控制Oracle实例及监听器的启停。

从上面链接下载脚本,解压备用。

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

修改第34行ORACLE_OWNER=后的值为oracle的用户名,一般为“oracle”;

修改第35行ORACLE_SID=后的值为SID;

修改第36行LISTENER_NAME=后的值为监听器的名称;

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

修改第34行ORACLE_SID=后的值为SID;

修改第35行ORACLE_HOME=后的值为ORACLE_HOME;

修改第36行ORACLE_OWNER=后的值为oracle的用户名,一般为“oracle”;主 备

将mc_lsnr_ctl脚本和mc_orcl_ctl脚本传输到所有服务器的非镜像盘目录下(本例为“/home”),并赋予777权限

示例:

chmod 777 /home/mc_*_ctl

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

主 备

示例:

/home/mc_lsnr_ctl status

/home/mc_lsnr_ctl start

/home/mc_lsnr_ctl status

/home/mc_lsnr_ctl stop

/home/mc_lsnr_ctl status

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

mc_lsnr_ctl脚本支持三种参数:start、stop、status

status参数将返回该脚本中所指定oracle监听器的运行状态;

start参数可以将脚本中指定监听器启动;

stop参数可以将脚本中指定监听器停止;

测试需要将此三种参数均测试至少一遍,确保其正常。主 备

示例:

/home/mc_orcl_ctl status

/home/mc_orcl_ctl start

/home/mc_orcl_ctl status

/home/mc_orcl_ctl stop

/home/mc_orcl_ctl status

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

mc_orcl_ctl脚本支持三种参数:start、stop、status

status参数将返回该脚本中所指定oracle实例的运行状态;

start参数可以将脚本中指定实例启动;

stop参数可以将脚本中指定实例停止;

测试需要将此三种参数均测试至少一遍,确保其正常。

在进行下列操作之前,请先确保已经根据《ServHA Mirror for Linux前序配置手册》搭建起了一个基本的高可用环境主

主机:将oracle的实例目录和控制文件放入镜像盘(这里假设镜像盘挂载在/odata上)。

示例:

mv /opt/app/oracle/oradata /odata

mv /opt/app/oracle/flash_recovery_area /odata

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

备机:将上述相同路径的目录/文件删除。

示例:

rm –rf /opt/app/oracle/oradata

rm –rf /opt/app/oracle/flash_recovery_area

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

主 备

将移入镜像盘的目录/文件软连接到oracle原路径。

示例:

ln –s /odata/oradata /opt/app/oracle

ln –s /odata/flash_recovery_area /opt/app/oracle

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)
linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

为涉及到的路径设置所有者。

示例:

chown –R oracle:oinstall /opt/app/oracle/oradata

chown –R oracle:oinstall/opt/app/oracle/flash_recovery_area

chown –R oracle:oinstall /odata/oradata

chown –R oracle:oinstall /odata/flash_recovery_area

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

仅为软连接设置所有者。

示例:

chown –R oracle:oinstall /opt/app/oracle/oradata

chown –R oracle:oinstall/opt/app/oracle/flash_recovery_area

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

在主机做oracle启动/停止测试。

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

主 备

该操作需在主备机上分别操作

使用vi编辑监听器配置文件

示例:

vi/opt/app/oracle/product/11.2.0/db_1/network/admin/listener.ora

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

*若无此文件,请建立,注意权限所有者为oracle:oinstall。

将内容按以下要求进行编辑

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

*若监听器配置文件中没有“SID_LIST_LISTENER”、“LISTENER”等区块,请自行添加;

*“SID_LIST”区块下允许有多个“SID_DESC”区块;ServHA

在ServHA配置监控端中操作

选中资源树,创建自定义资源,如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

在弹出的“创建自定义资源”窗口中按下图所示填入参数,并点“保存”:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

创建成功后资源树界面如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

选中资源树,创建自定义资源,如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

在弹出的“创建自定义资源”窗口中按下图所示填入参数,并点“保存”:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

创建成功后资源树界面如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

将监听器资源分别拖拽到IP资源和存储资源之下,并将Oracle实例资源拖拽到监听器资源之下,如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

选中备机资源树,点击启动,如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

待其操作完成,效果如下图:

linux mysql 双机热备_ORACLE 数据库双机热备方案(Linux)

此时可以进行使用虚拟IP远程访问测试。

测试通过后,将资源树切回主机。

至此,使用ServHA在Linux下配置Oracle的双机热备操作完成。