這個(gè)問(wèn)題不局限在DataGuard配置這個(gè)場(chǎng)景。簡(jiǎn)單排查一下這個(gè)錯(cuò)誤,供參考。
1.問(wèn)題現(xiàn)象
1)登陸時(shí)的報(bào)錯(cuò)
[oracle@secdb1 ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 – Production on Sun Jul 24 20:01:10 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-01075: you are currently logged on
2)即便登陸成功在執(zhí)行SQL命令的時(shí)候一樣會(huì)收到報(bào)錯(cuò)
sys@secdb> select * from dual;
select * from dual
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-00018: maximum number of sessions exceeded
2.問(wèn)題分析
單純從ORA-01075報(bào)錯(cuò)信息本身無(wú)法定位問(wèn)題。
從alert日志中發(fā)現(xiàn)“ORA-00018: maximum number of sessions exceeded”報(bào)錯(cuò)信息。細(xì)查之后發(fā)現(xiàn)此時(shí)后臺(tái)出現(xiàn)大量的歸檔進(jìn)程,而且數(shù)據(jù)庫(kù)中的processes=50,是由于超出了session限制導(dǎo)致的這個(gè)報(bào)錯(cuò)。
數(shù)據(jù)庫(kù)后臺(tái)的進(jìn)程信息如下:
[oracle@secdb1 ~]$ ps -ef | grep secdb | grep -v grep
oracle 10023 1 0 19:13 ? 00:00:00 ora_pmon_secdb
oracle 10025 1 0 19:13 ? 00:00:00 ora_psp0_secdb
oracle 10027 1 0 19:13 ? 00:00:00 ora_mman_secdb
oracle 10029 1 0 19:13 ? 00:00:00 ora_dbw0_secdb
oracle 10031 1 0 19:13 ? 00:00:00 ora_lgwr_secdb
oracle 10033 1 0 19:13 ? 00:00:00 ora_ckpt_secdb
oracle 10035 1 0 19:13 ? 00:00:00 ora_smon_secdb
oracle 10037 1 0 19:13 ? 00:00:00 ora_reco_secdb
oracle 10039 1 0 19:13 ? 00:00:00 ora_cjq0_secdb
oracle 10041 1 0 19:13 ? 00:00:00 ora_mmon_secdb
oracle 10043 1 0 19:13 ? 00:00:00 ora_mmnl_secdb
oracle 10063 1 0 19:13 ? 00:00:00 ora_p000_secdb
oracle 10065 1 0 19:13 ? 00:00:00 ora_p001_secdb
oracle 10067 1 0 19:13 ? 00:00:00 ora_p002_secdb
oracle 10069 1 0 19:13 ? 00:00:00 ora_p003_secdb
oracle 10071 1 0 19:13 ? 00:00:00 ora_p004_secdb
oracle 10077 1 0 19:13 ? 00:00:00 ora_arc0_secdb
oracle 10079 1 0 19:13 ? 00:00:00 ora_arc1_secdb
oracle 10081 1 0 19:13 ? 00:00:00 ora_arc2_secdb
oracle 10083 1 0 19:13 ? 00:00:00 ora_arc3_secdb
oracle 10085 1 0 19:13 ? 00:00:00 ora_arc4_secdb
oracle 10087 1 0 19:13 ? 00:00:00 ora_arc5_secdb
oracle 10089 1 0 19:13 ? 00:00:00 ora_arc6_secdb
oracle 10091 1 0 19:13 ? 00:00:00 ora_arc7_secdb
oracle 10093 1 0 19:13 ? 00:00:00 ora_arc8_secdb
oracle 10095 1 0 19:13 ? 00:00:00 ora_arc9_secdb
oracle 10100 1 0 19:13 ? 00:00:00 ora_arca_secdb
oracle 10103 1 0 19:13 ? 00:00:00 ora_arcb_secdb
oracle 10105 1 0 19:13 ? 00:00:00 ora_arcc_secdb
oracle 10107 1 0 19:13 ? 00:00:00 ora_arcd_secdb
oracle 10109 1 0 19:13 ? 00:00:00 ora_arce_secdb
oracle 10111 1 0 19:13 ? 00:00:00 ora_arcf_secdb
oracle 10113 1 0 19:13 ? 00:00:00 ora_arcg_secdb
oracle 10115 1 0 19:13 ? 00:00:00 ora_arch_secdb
oracle 10117 1 0 19:13 ? 00:00:00 ora_arci_secdb
oracle 10119 1 0 19:13 ? 00:00:00 ora_arcj_secdb
oracle 10121 1 0 19:13 ? 00:00:00 ora_arck_secdb
oracle 10123 1 0 19:13 ? 00:00:00 ora_arcl_secdb
oracle 10125 1 0 19:13 ? 00:00:00 ora_arcm_secdb
oracle 10127 1 0 19:13 ? 00:00:00 ora_arcn_secdb
oracle 10132 1 0 19:13 ? 00:00:00 ora_arco_secdb
oracle 10135 1 0 19:13 ? 00:00:00 ora_arcp_secdb
oracle 10137 1 0 19:13 ? 00:00:00 ora_arcq_secdb
oracle 10139 1 0 19:13 ? 00:00:00 ora_arcr_secdb
oracle 10141 1 0 19:13 ? 00:00:00 ora_arcs_secdb
oracle 10143 1 0 19:13 ? 00:00:00 ora_arct_secdb
oracle 10173 1 29 19:13 ? 00:00:26 ora_qmnc_secdb
oracle 10229 1 0 19:14 ? 00:00:00 ora_q000_secdb
oracle 10296 10294 0 19:14 ? 00:00:00 oraclesecdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
可見(jiàn)后臺(tái)啟動(dòng)了非常多的歸檔進(jìn)程,正是這些進(jìn)程占滿(mǎn)了所有50個(gè)session,導(dǎo)致系統(tǒng)無(wú)法登陸。
3.問(wèn)題處理
1)停止數(shù)據(jù)庫(kù)
既然已經(jīng)無(wú)法正常登陸到數(shù)據(jù)庫(kù),只能強(qiáng)制使用操作系統(tǒng)命令將其終止。
$ ps -ef |grep $ORACLE_SID|grep -v grep|awk \\\'{print $2}\\\’ | xargs kill -9
$ ipcs -m | grep oracle | awk \\\'{print $2}\\\’ | xargs ipcrm shm
嚴(yán)重警告:以上命令嚴(yán)禁在任何數(shù)據(jù)庫(kù)服務(wù)器上進(jìn)行嘗試!
關(guān)于上面兩條命令的闡述請(qǐng)參考《【Kill】?jī)蓷lLinux命令徹底殺死Oracle》(http://space.itpub.net/519536/viewspace-619787)
2)修改系統(tǒng)參數(shù)processes為500
3)重新啟動(dòng)數(shù)據(jù)庫(kù)
問(wèn)題處理完畢。
4.小結(jié)
此處遭遇的這個(gè)問(wèn)題比較巧合,后臺(tái)正好超過(guò)了50個(gè)session,在我調(diào)整完processes為500之后,后臺(tái)session數(shù)還是穩(wěn)定在50左右。
這個(gè)案例告訴我們:在項(xiàng)目實(shí)施過(guò)程之前一定要對(duì)每一個(gè)參數(shù)細(xì)細(xì)斟酌和考量,不要人為的給自己增加困難。
Good luck.
secooler
10.07.24
— The End —
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)三五互聯(lián)官網(wǎng):m.shinetop.cn