搜尋
首頁資料庫mysql教程Oracle 10g R2 主备自动切换之客户端Failover配置

为了达到实例宕掉但监听不宕的情况下也行, 监听需要全部是动态注册的, 不允许静态配置的服务名. 因为动态注册的话,当实例宕掉后

1. 主库检查和设置

假设新增的服务名为ORCL_TAF.LK.

SQL> exec dbms_service.create_service(service_name=>'ORCL_TAF.LK', network_name=>'ORCL_TAF.LK');
SQL> exec dbms_service.start_service(service_name=>'ORCL_TAF.LK');
SQL> CREATE OR REPLACE TRIGGER trg_oci_service
after startup on database
DECLARE
role VARCHAR(30);
BEGIN
SELECT DATABASE_ROLE INTO role FROM V$DATABASE;
IF role='PRIMARY' THEN
DBMS_SERVICE.START_SERVICE('ORCL_TAF.LK');
END IF;
END;
/
SQL> show parameter service_names
NAME                                 TYPE            VALUE
------------------------------------ --------------- ------------------------------
service_names                        string          ORCL_TAF.LK

若备库非实时应用,则手工归档确保触发器传到备库:
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;

确认可以显示新增的服务:
$ lsnrctl status
...
Service "ORCL_TAF.LK" has 1 instance(s).
Instance "ORCL", status READY, has 1 handler(s) for this service...

2. 配置OCI客户端(包括纯OCI/OCCI客户端和JDBC-OCI客户端)

为了达到实例宕掉但监听不宕的情况下也行, 监听需要全部是动态注册的, 不允许静态配置的服务名. 因为动态注册的话,,当实例宕掉后,其服务名就会从监听中消失, 此时应用才会去偿试第二个IP地址. 如果有静态配置的话, 则由于监听是可以接受客户端的请求, 将不会去偿试第二个IP地址, 而是报出Oracle not available的错误.

$ vi $ORACLE_HOME/network/admin/tnsnames.ora
--------------------------------------------------------------------------------
DB_ORCL=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=primary_host)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=standby_host)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=ORCL_TAF.LK)
)
)
--------------------------------------------------------------------------------
注意: ADDRESS_LIST中包含主备库服务器和端口信息, 其中SERVICE_NAME为新增的服务名ORCL_TAF.LK.

对于JDBC-OCI客户端配置方法为"jdbc:oracle:oci8:@DB_ORCL".

--End--

linux

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
與其他RDBM相比,MySQL如何處理並發?與其他RDBM相比,MySQL如何處理並發?Apr 29, 2025 am 12:44 AM

MySQLhandlesconcurrencyusingamixofrow-levelandtable-levellocking,primarilythroughInnoDB'srow-levellocking.ComparedtootherRDBMS,MySQL'sapproachisefficientformanyusecasesbutmayfacechallengeswithdeadlocksandlacksadvancedfeatureslikePostgreSQL'sSerializa

MySQL與其他關係數據庫相比如何處理交易?MySQL與其他關係數據庫相比如何處理交易?Apr 29, 2025 am 12:37 AM

mySqlHandLestActionSefectefectionalytheinnodbengine,supportingAcidPropertiessimilartopostgresqlesqlandoracle.1)mySqluessRepeTableReadAbereadasTheDefaultIsolationLeleleteLevel,whatcanBeadJustEdToreDtoreDtoreDtoreadCommittedCommittenCommententCommittedForHigh-TrafficsCenarios.2)

MySQL中有哪些數據類型?MySQL中有哪些數據類型?Apr 29, 2025 am 12:28 AM

MySQL的數據類型分為數值、日期和時間、字符串、二進制和空間類型。選擇正確的類型可以優化數據庫性能和數據存儲。

在MySQL中編寫有效的SQL查詢的最佳實踐是什麼?在MySQL中編寫有效的SQL查詢的最佳實踐是什麼?Apr 29, 2025 am 12:24 AM

最佳實踐包括:1)理解數據結構和MySQL處理方式,2)適當索引,3)避免SELECT*,4)使用合適的JOIN類型,5)謹慎使用子查詢,6)使用EXPLAIN分析查詢,7)考慮查詢對服務器資源的影響,8)定期維護數據庫。這些做法能使MySQL查詢不僅快速,還具備可維護性、可擴展性和資源效率。

MySQL與PostgreSQL有何不同?MySQL與PostgreSQL有何不同?Apr 29, 2025 am 12:23 AM

MySQLisbetterforspeedandsimplicity,suitableforwebapplications;PostgreSQLexcelsincomplexdatascenarioswithrobustfeatures.MySQLisidealforquickprojectsandread-heavytasks,whilePostgreSQLispreferredforapplicationsrequiringstrictdataintegrityandadvancedSQLf

MySQL如何處理數據複製?MySQL如何處理數據複製?Apr 28, 2025 am 12:25 AM

MySQL通過異步、半同步和組複製三種模式處理數據複製。 1)異步複製性能高但可能丟失數據。 2)半同步複製提高數據安全性但增加延遲。 3)組複製支持多主複製和故障轉移,適用於高可用性需求。

您如何使用解釋性語句分析查詢性能?您如何使用解釋性語句分析查詢性能?Apr 28, 2025 am 12:24 AM

EXPLAIN語句可用於分析和提升SQL查詢性能。 1.執行EXPLAIN語句查看查詢計劃。 2.分析輸出結果,關注訪問類型、索引使用情況和JOIN順序。 3.根據分析結果,創建或調整索引,優化JOIN操作,避免全表掃描,以提升查詢效率。

您如何備份並還原MySQL數據庫?您如何備份並還原MySQL數據庫?Apr 28, 2025 am 12:23 AM

使用mysqldump進行邏輯備份和MySQLEnterpriseBackup進行熱備份是備份MySQL數據庫的有效方法。 1.使用mysqldump備份數據庫:mysqldump-uroot-pmydatabase>mydatabase_backup.sql。 2.使用MySQLEnterpriseBackup進行熱備份:mysqlbackup--user=root--password=password--backup-dir=/path/to/backupbackup。恢復時,使用相應的命

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)