srvctl 工具都有哪些功能
oracle 12c:新特性-RAC數(shù)據(jù)庫的增強
What-if命令評估
通過srvctl使用新的What-if命令評估選項,現(xiàn)在可以確定運行此命令所造成的影響。這一新添加到srvctl的命令,可以在沒有實際執(zhí)行或是不對當前系統(tǒng)做任何改變的情況下模擬此命令。這在想要對一個已存在的系統(tǒng)進行更改卻對結果不確定的時候特別有用。這樣,此命令就會提供進行變更的效果。而–eval 選項也可以通過crsctl 命令來使用來源:CUUG官網(wǎng)。
例如,如果你想要知道停止一個特定數(shù)據(jù)庫會發(fā)生什么,那么你就可以使用以下示例:
$ ./srvctl stop databa –d MYDB –eval
$ ./crsctl eval modify resource -attr “value”
srvctl的改進
對于srvctl命令還有一些新增功能。以下演示了如何用這些新增功能停止或啟動集群上的數(shù)據(jù)庫或?qū)嵗Y源。
srvctl start databa|instance –startoption NOMOUNT|MOUNT|OPEN
如何用srvctl命令添加ASM amp;DATABASE&LISTENER 注冊信息
1.模擬刪除ASM & DATABASE 注冊信息
刪除前請確認這些資源已經(jīng)是STOP 狀態(tài)
[oracle@vmrehl4n1 ~]$ srvctl remove databa -d myrac
Remove the databa myrac? (y/[n]) y
[oracle@vmrehl4n1 ~]$ srvctl remove asm -n vmrehl4n1 -i +ASM1
[oracle@vmrehl4n1 ~]$ srvctl remove asm -n vmrehl4n2 -i +ASM2
2.添加ASM & DATABASE 注冊信息
[oracle@vmrehl4n1 ~]$ srvctl add databa -d myrac -o /app/oracle/product/10.2.0/db_1
[oracle@vmrehl4n1 ~]$ srvctl add instance -d myrac -i myrac1 -n vmrehl4n1
[oracle@vmrehl4n1 ~]$ srvctl add instance -d myrac -i myrac2 -n vmrehl4n2
[oracle@vmrehl4n1 ~]$ srvctl add asm -n vmrehl4n1 -i +ASM1 -o /app/oracle/product/10.2.0/db_1
[oracle@vmrehl4n1 ~]$ srvctl add asm -n vmrehl4n2 -i +ASM2 -o /app/oracle/product/10.2.0/db_1
查看[oracle@vmrehl4n2 admin]$ crs_stat -p ora.myrac.myrac1.inst
顯示的此行
REQUIRED_RESOURCES=ora.vmrehl4n1.vip ora.vmrehl4n1.ASM1.asm
如果沒有ora.vmrehl4n1.ASM1.asm
需要繼續(xù)運行以下命令,否則CRS自動啟動時不能啟動DATABASE:
[oracle@vmrehl4n1 ~]$ srvctl modify instance -d myrac -i myrac1 -s +ASM1
[oracle@vmrehl4n1 ~]$ srvctl modify instance -d myrac -i myrac2 -s +ASM2
srvctl status asm 只顯示一個節(jié)點 什么原因
二節(jié)點的asm沒啟動起來,這里已經(jīng)寫了是Failed to start ASM,原因是Start of resource "ora.asm -init" failed,在節(jié)點1運行ora.asm -init腳本時出現(xiàn)的問題,應該是asm實例的問題,
請教RAC的 srvctl add rvice中rvice概念
這個添加的rvice是Failover中的rvice服務,也就是你在DBCA建庫的過程中可以同時使用DBCA工具創(chuàng)建的rvice服務。 這個服務實質(zhì)就是TAF(Transparent Application Failover),不過它與TAF的區(qū)別是不用在客戶端的tnsnames.ora文件中配置,而...
drupal如何實現(xiàn)集群管理?
1.在管理集群數(shù)據(jù)庫的時候,因為數(shù)據(jù)庫處于應用層所以要使用srvctl命令來進行管理,通過-h可以查看命令的使用方法
請點擊輸入圖片描述
2.通過status可以查看數(shù)據(jù)庫在各節(jié)點的狀態(tài)
請點擊輸入圖片描述
3.通過stop命令可以停止集群數(shù)據(jù)庫,如果不能正常停止的話可以加-f參數(shù)強制停止
請點擊輸入圖片描述
4.在啟動集群數(shù)據(jù)庫的時候可以通過-n來指定節(jié)點名稱,通過-o來指定啟動狀態(tài),但在應用-n指定節(jié)點名稱時卻提示無效,-o的參數(shù)有nomount,mount,open
請點擊輸入圖片描述
5.同樣在關閉的時候也可以指定關閉的方式,如下圖,-o的參數(shù)可以為abort,immediate,nomal,transactional
請點擊輸入圖片描述
6.同時通過config指令可以查看數(shù)據(jù)庫的基本信息
請點擊輸入圖片描述
7.同樣通過enable,disable可以設定是否讓數(shù)據(jù)庫隨著系統(tǒng)啟動而自動啟動
請點擊輸入圖片描述
如何診斷RAC環(huán)境下sysdate 返回錯誤時間問題
1. 操作系統(tǒng)級別的時區(qū)設置,并確保操作系統(tǒng)命令date 能返回正確的時間。對于如何查看不同平臺的時區(qū)設置,請參考note 1209444.1
2. 確認GI 配置文件<gi_home>/crs/install/s_crsconfig_<節(jié)點名>_env.txt文件中的變量TZ和操作系統(tǒng)的TZ 設置一致。
3. 確認是否在databa或listener資源層面設置了TZ變量。如果設置了,是否和OS,GI的設置是一致的。
4. 另外,rver process的環(huán)境變量LIBPATH 或 LD_LIBRARY_PATH 也會對oracle訪問操作系統(tǒng)函數(shù)產(chǎn)生影響。而且GI 的agent進程(適用于版本11.2.0.3 及以上的版本)在啟動資源時(例如:databa資源)會自動的將進程的以下環(huán)境變量清空
LD_LIBRARY_PATH, SHLIB_PATH (HP-UX), LD_LIBPATH_PATH_64 (Solaris), LIBPATH(AIX)
所以,如果您的databa是使用srvctl 命令啟動的,就需要確認上面的環(huán)境變量被設置正確。
例如:srvctl tenv databa -d <db_name> -t 'LIBPATH=<gi_home/lib>'
注意:不同的Unix平臺,以上命令可能會不同。
所以,我們也去要確認databa 資源的LIBPATH 或 LD_LIBRARY_PATH 變量是否被設定。
例如:srvctl getenv databa -d <db_name>
另外,在診斷這種問題時,需要搜集以下信息。
1. <gi_home>/crs/install/s_crsconfig_<節(jié)點名>_env.txt文件
2. 操作系統(tǒng)時區(qū)設置(cat /etc/sysconfig/clock) 和環(huán)境變量TZ的設置。以及pmon進程的環(huán)境變量。
3. databa和 listener資源的環(huán)境變量
例如:srvctl getenv databa -d <db_name>
srvctl getenv listener -l <listener name>
4. 如果以上的信息沒有問題,那么就需要搜集listener 進程的truss(或strace) 輸出找到有問題的環(huán)境變量設置。
5. 如果1—4 中的信息仍然無法找到問題的原因,請搜集客戶端和服務器端的sqlnet trace,以便確認是否有任何的’alter ssion t ...’命令修改了會話的時區(qū)或者相關的變量。
客戶端sqlnet trace:設置以下參數(shù)到客戶端的sqlnet.ora 文件中。
trace_level_client=16
trace_directory_client=c:\tmp ==> 確保該路徑存在
trace_file_client=client
trace_unique_client=on
trace_timestamp_client=on
服務器端sqlnet trace:設置以下參數(shù)到服務器端的sqlnet.ora文件中
trace_level_rver=16
trace_file_rver=rver
trace_directory_rver=/tmp ==> 確保該路徑存在
trace_timestamp_rver=ON