Oracle从库IP重新绑定(oracle从库修改ip)

Oracle从库IP重新绑定

在Oracle数据库的复制环境中,主库负责将数据写入数据库,而从库则复制主库的数据以供查询。当从库的IP地址变更或者需要将从库的IP地址绑定到另一个接口时,需要对从库上的Oracle实例进行重新配置。

以下是重新绑定从库IP的步骤:

1. 确认从库服务已经停止

在执行重新绑定IP的操作前,需要先确认从库的Oracle实例已经停止服务:

$ lsnrctl stop
$ srvctl stop instance -d -i

2. 修改tnsnames.ora配置文件

在Oracle数据库的复制环境中,主库与从库的连接通过tnsnames.ora配置文件控制。修改tnsnames.ora文件的方式取决于数据库的版本号。

对于Oracle 12c及其以上版本:

$ cd $ORACLE_HOME/network/admin
$ vi tnsnames.ora

=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
)
(CONNECT_DATA =
(SERVICE_NAME = )
)
)

其中,为从库的新IP地址,为Oracle数据库服务所使用的端口号,为主库与从库之间的数据库名称,为从库所使用的服务名。

对于Oracle 11g及其以下版本,编辑文件$ORACLE_HOME/network/admin/tnsnames.ora,添加如下配置信息:

 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
(CONNECT_DATA =
(SERVICE_NAME = )
)
)

3. 修改listener.ora配置文件

listener.ora文件控制着Oracle监听器监听数据库服务的端口号和IP地址。同样根据不同的Oracle版本,需要采用不同的修改方式。

对于Oracle 12c及其以上版本,在listener.ora文件中添加以下内容:

# Listener for Net Services override
LISTENER_ =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
)

# SID description for ORCL
SID_LIST_LISTENER_ =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = )
(ORACLE_HOME = /u01/app/oracle/product/12.1.0/dbhome_1)
(SID_NAME = )
)
)
# Configure Service
. =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
(CONNECT_DATA =
(SERVICE_NAME = )
)
)

在此配置文件中,、、、和分别为从库的新IP地址、Oracle服务所使用的端口、数据库名称、实例名称和服务名。

对于Oracle 11g及其以下版本,在listener.ora文件中添加如下配置信息:

LISTENER =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = ORCL)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
)
(SID_DESC =
(GLOBAL_DBNAME = )
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = )
)
)
. =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
(CONNECT_DATA =
(SERVICE_NAME = )
)
)

4. 重启Oracle数据库服务

完成tnsnames和listener的修改后,重新启动Oracle数据库服务以便于配置生效:

$ lsnrctl start
$ srvctl start instance -d -i

重新启动Oracle数据库实例后,从库IP地址的重新绑定操作就完成了。此时,从库便可以再次复制主库上的数据,供查询使用。


数据运维技术 » Oracle从库IP重新绑定(oracle从库修改ip)