在CentOS上使用Oracle实现负载均衡通常涉及以下几个步骤:
sudo ./runInstaller
sudo /opt/grid/install/root.sh
sudo /opt/grid/install/ocrconfig.sh -create -force -domain <your_domain>
sudo ./runInstaller
sudo /opt/oracle/product/19.0.0/dbhome_1/root.sh
sudo /opt/oracle/product/19.0.0/dbhome_1/crsctl add resource ora.rac.database -type ora.database -target "racdb"
listener.ora
文件(通常位于$ORACLE_HOME/network/admin
目录下),添加或修改以下内容以启用负载均衡:LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <node1_ip>)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = <node2_ip>)(PORT = 1521)) ) )
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = racdb) (ORACLE_HOME = /opt/oracle/product/19.0.0/dbhome_1) (GLOBAL_DBNAME = racdb) ) )
lsnrctl stop
lsnrctl start
tnsnames.ora
文件(通常位于$ORACLE_HOME/network/admin
目录下),添加或修改以下内容:RACDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = <node1_ip>)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = <node2_ip>)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = racdb) ) )
tnsnames.ora
文件中设置LOAD_BALANCE ON
,当客户端发起连接时,会随机选择一个节点进行连接,从而实现负载均衡。