1、ORA⑴2518: TNS:listener could not hand off client connection
在團(tuán)隊(duì)成員增多時(shí),常常出現(xiàn)“沒(méi)法分發(fā)客戶端連接”等問(wèn)題。在網(wǎng)上搜索1番后,終究解決了該問(wèn)題,現(xiàn)將解決方案總結(jié)以下,以供參考和以后備用。
更改SPFILEORCL.ORA文件中的process
緣由:團(tuán)隊(duì)成員增多,原有http://www.jyygyx.com/db/設(shè)置不夠用,致使連接plsql和啟動(dòng)tomcat時(shí)常常拋出“沒(méi)法分發(fā)客戶端連接”的異常。
解決方案:
第1步:調(diào)劑process和session值
1. 檢查process和session是不是夠用。
a)使用plsql連接到oracle,查看process進(jìn)程數(shù):
2. 調(diào)劑這兩個(gè)參數(shù)值大小。
系統(tǒng)進(jìn)程數(shù)process和系統(tǒng)會(huì)話數(shù)session之間存在1個(gè)關(guān)系:
process數(shù)=session數(shù)*1.1+5
我們?cè)谂渲脮r(shí)參考該規(guī)律進(jìn)行設(shè)定。
a) 修改process值
alter system set processes=1000 scope=spfile; --將process值改成1000
b) 修改session值
alter system set sessions=1105 scope=spfile; --將sessions值改成1105
3. 備份pfile,重啟oracle
a) 修改完成后,備份pfile
create pfile from spfile; --從spfile(運(yùn)行時(shí)配置)創(chuàng)建pfile(系統(tǒng)配置)
c) 重啟oracle
重啟的方法有很多種,可以重啟oracle服務(wù),或重啟http://www.jyygyx.com/db/。Windows下可以直接重啟服務(wù)。
第2步:修改dispatchers個(gè)數(shù)
如果第1步解決不了問(wèn)題。可以進(jìn)行第2步的操作。
1.查看當(dāng)前dispatchers個(gè)數(shù),和dispatchers使用率select name,busy,status,accept,idle from v$dispatcher; --查看當(dāng)前dispatchers個(gè)數(shù)和部份信息。1般默許安裝的庫(kù)只有1個(gè)。
select name,(busy/(busy+idle))*100 "busy rate%" from v$dispatcher; --查看dispatchers使用率
如果使用率大于50%,則要斟酌增加dispatchers個(gè)數(shù)。
2.調(diào)劑dispatchers個(gè)數(shù)alter system set dispatchers='(protocol=tcp)(dispatchers=3)(service=youroracleservicenameXDB)';
--修改dispatchers個(gè)數(shù)為3.
3. 重啟oracle。
當(dāng)重啟服務(wù)的時(shí)候,出現(xiàn)沒(méi)有監(jiān)聽(tīng)程序的毛病
2.ORA⑴2541: TNS:無(wú)監(jiān)聽(tīng)程序
1:F:oracleproduct10.2.0db_1 etworkadminlistener.ora 中添加以下代碼:
3、oralce不可用
創(chuàng)建SPFILEORCL.ORA文件,注意:SPFILEORCL,ORCL是實(shí)例的名字
cmd中運(yùn)行: