国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > Oracle > 正文

繼續(xù)說(shuō)一說(shuō)Oracle的MTS

2024-08-29 13:30:34
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
中國(guó)最大的web開(kāi)發(fā)資源網(wǎng)站及技術(shù)社區(qū),

    在csdn上寫(xiě)了一篇關(guān)于mts的文章后收到了一些網(wǎng)友的mail或是留言,他們還有好多關(guān)乎于mts的一些問(wèn)題。與piner,fenng,biti及其它的一些網(wǎng)友在聊天中,他們都對(duì)使用mts有些不贊同,那天與oracle的工程師交流中他也是有些反對(duì),不過(guò)在我的實(shí)際應(yīng)用過(guò)程中雖遇到了一些問(wèn)題,但總體mts還是讓我很滿意的,使我的一臺(tái)oracle server在peak time的內(nèi)存利用率由95%降到了78%,而且應(yīng)用的速度還很不錯(cuò)。如下我便以問(wèn)題的形式對(duì)mts再進(jìn)行幾點(diǎn)補(bǔ)充。

1、在oracle server調(diào)整為mts方式后,一些客戶端出現(xiàn)了連不上oracle server的狀況,大部分報(bào)的錯(cuò)為tns-12509,如何解決?

回答:
    在實(shí)際過(guò)程中是存在著這方面的情況,我總結(jié)了一下,大部是由oracle8 的client引起的,就是那些配服務(wù)名還得掛著個(gè).world的那種客戶端,其實(shí)解決起來(lái)很簡(jiǎn)單,只需要把tnsname.ora這個(gè)文件中你的那個(gè)服務(wù)名配置的"sid="改成"service_name=",這就ok了。

2、我使用了成都邁普公司的"隧道網(wǎng)關(guān)"這種產(chǎn)品,以前在dedicated方式是好好的,可是改成mts后,為什么client死活連不是oracle的server呢?

回答:
    其實(shí)我們公司也用了這種產(chǎn)品,在mts應(yīng)用之初也遇到了這個(gè)問(wèn)題。出現(xiàn)這個(gè)問(wèn)題的原因?yàn)檫~普的這種產(chǎn)品只為監(jiān)測(cè)靜態(tài)的端返回,它認(rèn)為oracle的監(jiān)聽(tīng)端口即為返回端口,實(shí)際在mts中不是這樣的,多進(jìn)行幾次連接,用netstat -n在客戶端觀看一下就會(huì)明白,mts返回的端口是動(dòng)態(tài)的,所以邁普的這個(gè)產(chǎn)品就不好用了。解燃眉之急的辦法可以這樣:在mts客戶端配置"服務(wù)名"時(shí),請(qǐng)求個(gè)dedicate的連接,即使用server = dedicated選項(xiàng),這就把問(wèn)題解決了。

3、如何跟蹤一下mts的dispatcher和shared server進(jìn)程?

回答:
    這需用到診斷事件了,dispatcher的診斷事件號(hào)為10248,shared server的為10249,如下以shared server為例簡(jiǎn)單說(shuō)一下,假定s015的操作系統(tǒng)的進(jìn)程號(hào)為13161.

sql>conn sys/pass as sysdba
sql>oradebug setospid 13161 
sql>oradebug tracefile_name   --看一下跟蹤文件的名稱
sql>oradebug event 10249 trace name context forever, level 10

也可以在init<sid>.ora中加入如下兩行完成trace:

 event="10248 trace name context forever, level x"  -- dispatchers
 event="10249 trace name context forever, level x"  -- shared servers

4、如何在mts中設(shè)置ipc

回答:
   如下的配置樣例來(lái)自metalink
listener.ora:
=============
 
listener=
  (address_list=
     (address=
        (protocol=ipc)
        (key=<sid name>)
     )
     (address=
        (protocol=ipc)
        (key=<alias in tnsnames.ora for the sid>)
     )
  )
connect_timeout_listener=10
startup_wait_time_listener=0
sid_list_listener=
  (sid_list=
    (sid_desc=
      (sid_name=<sid name>) 
      (oracle_home=<home directory path for oracle>)
    )
  )
 
地址列表中可以使用其它的協(xié)議,加入應(yīng)的地址。這個(gè)例子完全是一個(gè)ipc的例子
 
tnsnames.ora:
=============
 
<alias>=
  (description=
     (address=
        (protocol=ipc)
        (key=<sid name>)
     )
     (connect_data=
        (sid=<sid name>)
     )
  )
 
 
init.ora entries for mts:
=========================
 
mts_dispatchers="ipc,2"
mts_servers=1
mts_max_dispatchers=6
mts_max_servers=3
mts_service=<sid name>
mts_listener_address="(address=(protocol=ipc)(key=<sid name>))"


5、如何查看一下某個(gè)shared_server正在忙什么?

回答:
    其實(shí)這與dedicated方式的查看方法是一樣的,還以s015為例,它的spid為13161,使用如下的sql便可查

出:

select a.username,
       a.machine,
       a.program,
       a.sid,
       a.serial#,
       a.status,
       c.piece,
       c.sql_text
  from v$session a,
       v$process b,
       v$sqltext c
 where b.spid=13161
   and b.addr=a.paddr
   and a.sql_address=c.address(+)
 order by c.piece  

6、我在unix看到一個(gè)shared server的進(jìn)程占用了大量的cpu資源,通過(guò)select addr from v$process where spid=<os process pid>查到進(jìn)程的address,而select * from v$session where paddr=<paddr>確沒(méi)的結(jié)果,所以我無(wú)法得知我的這個(gè)shared server在忙什么,我該怎么辦呢?

回答:

select status from v$circuit
 where circuit in
  (
   select circuit from v$shared_server
    where paddr=<your paddr>
  )
如果status的返回是eof,說(shuō)明實(shí)際這個(gè)shared server已經(jīng)掉死了,你可以把它在操作系統(tǒng)上清除掉了:
eg:
  oracle$kill -9 <shared server's pid>

你不用擔(dān)心kill掉會(huì)有什么大的影響,其它幾分鐘之后,pmon會(huì)為你把這個(gè)shared server進(jìn)程給重新啟動(dòng)的。

7、如何在非down庫(kù)的情況下恢復(fù)到dedicate的連接方式,及啟用更多的dispatcher?

回答:
7.1關(guān)掉:
  sql>alter system set mts_dispatchers='tcp,0';

7.2啟用更多的dispatcher
  sql>alter system set mts_dispatchers='tcp,40';

部分內(nèi)容參照metalink的note:47684.1

 
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 夹江县| 郓城县| 宜宾县| 辉县市| 濉溪县| 富宁县| 凤冈县| 商南县| 河北省| 苏尼特左旗| 丹东市| 海伦市| 苏尼特左旗| 珠海市| 扎囊县| 民乐县| 扶余县| 辽中县| 云龙县| 海林市| 自治县| 呼和浩特市| 连南| 罗山县| 耿马| 涞水县| 巴中市| 屏南县| 通江县| 高州市| 洪江市| 安陆市| 云霄县| 泰兴市| 新乐市| 扶余县| 原平市| 河东区| 霸州市| 汉中市| 墨脱县|