SQL*Net message from client
http://blog.itpub.net/26015009/viewspace-775110/
SQL*Net message from client 事件產生的原因分析
今天同事執行一個程式,修改表的內容,但執行一半總是掛起,查詢資料庫看有什麼在等待,
查詢v$session_wait
SELECT S.SID,
S.SERIAL#,
S.USERNAME,
S.STATUS,
S.MACHINE,
S.PROGRAM,
S.MODULE,
A.SQL_TEXT
FROM V$SESSION S,
V$SQLAREA A
WHERE S.USERNAME IS NOT NULL
AND S.SQL_ADDRESS = A.ADDRESS
S.SERIAL#,
S.USERNAME,
S.STATUS,
S.MACHINE,
S.PROGRAM,
S.MODULE,
A.SQL_TEXT
FROM V$SESSION S,
V$SQLAREA A
WHERE S.USERNAME IS NOT NULL
AND S.SQL_ADDRESS = A.ADDRESS
看見同事那個會話在那掛起,看見SQL*Net message from client 等待時間最長,其實這個是oracle空閒等待時間,只要網路沒有問題,可以不用考略這個wait。後來同事修改了下程式透過了,他是因為執行了大查詢,而無反應。
下面是參考文件:
1.對於一個session來說,每時每刻都在wait 的狀態。
WAIT FOR IO / WAIT FOR CPU / WAIT FOR LATCH /WAIT FOR ...
這一點你可以Query v$session_wait,總有data.
2.對於Server process來說,但它處理完所有需要處理的東西之後,它就進入另一個WAIT,SQL*Net message from client ,等待著Cilent發來資訊讓它處理,而我們把這種wait叫做ildel event,並不代表真正的loading
3.舉一個例子,你在工作,比如說1:00-1:30在檢查DB狀態,1:30 - 2:00在讀文件。但是,有時候你沒什麼事做,這時候老闆問你在幹嗎,你就會說,我在等待任務呢,實際上是在休息,就相當於你wait for "任務from老闆“,事實上是在休息,也就是沒有loading.
4.當然也有其他情況,比如,你在座位上休息 (wait for "任務from老闆“ ) ,本來應該是idle的。但是過一會,你老闆跑來,暴跳如雷:“我剛才想叫你出去買咖啡,怎麼打了半天電話也沒人接“,你一查,原來是分機沒接好。這種情況下的 (wait for "任務from老闆“ ) 就不正常了。相對應的Oracle裡的就是網路不暢,Client想發資訊給Server process,結果不成功,而Server process一直是wait for SQL*Net message from client .
5.結論,只要網路沒問題。SQL*Net message from client 這個wait不用管。
WAIT FOR IO / WAIT FOR CPU / WAIT FOR LATCH /WAIT FOR ...
這一點你可以Query v$session_wait,總有data.
2.對於Server process來說,但它處理完所有需要處理的東西之後,它就進入另一個WAIT,SQL*Net message from client ,等待著Cilent發來資訊讓它處理,而我們把這種wait叫做ildel event,並不代表真正的loading
3.舉一個例子,你在工作,比如說1:00-1:30在檢查DB狀態,1:30 - 2:00在讀文件。但是,有時候你沒什麼事做,這時候老闆問你在幹嗎,你就會說,我在等待任務呢,實際上是在休息,就相當於你wait for "任務from老闆“,事實上是在休息,也就是沒有loading.
4.當然也有其他情況,比如,你在座位上休息 (wait for "任務from老闆“ ) ,本來應該是idle的。但是過一會,你老闆跑來,暴跳如雷:“我剛才想叫你出去買咖啡,怎麼打了半天電話也沒人接“,你一查,原來是分機沒接好。這種情況下的 (wait for "任務from老闆“ ) 就不正常了。相對應的Oracle裡的就是網路不暢,Client想發資訊給Server process,結果不成功,而Server process一直是wait for SQL*Net message from client .
5.結論,只要網路沒問題。SQL*Net message from client 這個wait不用管。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26477398/viewspace-1404483/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【等待事件】SQL*Net message from dblink事件SQL
- [20190622]收集SQLNet Message From Client資訊.txtSQLclient
- [20180918]等待事件SQL/Net more data from client.txt事件SQLclient
- ABP Framework Consuming HTTP APIs from a .NET ClientFrameworkHTTPAPIclient
- 【等待事件】SQL*Net vector date to client事件SQLclient
- 【等待事件】SQL*Net more data to client事件SQLclient
- Connect SQL Server from Linux Client using Windows Authentication and troubleshoot stepsSQLServerLinuxclientWindows
- 【等待事件】SQL*Net more data from dblink事件SQL
- [20201214]再遇SQL*Net break/reset to client.txtSQLclient
- Message from debugger: Terminated due to signal 13
- improve spring integration read message performance from mqSpringORMMQ
- Flink SQL Client初探SQLclient
- 【問題解決】java.sql.SQLException: null, message from server: “Host ‘xxx.xx.xx.xxx‘ is blocked because ofJavaSQLExceptionNullServerBloC
- [20180925]等待事件SQLNet more data from client 6.txt事件SQLclient
- [20180922]等待事件SQLNet more data from client 4.txt事件SQLclient
- [20180920]等待事件SQLNet more data from client 3.txt事件SQLclient
- [20180926]等待事件SQLNet more data from client 7.txt事件SQLclient
- Flink SQL Client綜合實戰SQLclient
- flink sql client讀取hive時卡住SQLclientHive
- MySQL異常刨析:ata source rejected establishment of connection, message from server: “Too many connectionMySqlServer
- .NET Framework 4和.NET Framework 4 Client Profile的區別Frameworkclient
- SQL-Hive中的Select From解析SQLHive
- Unknown initial character set index ‘255‘ received from server. Initial client character set can beIndexServerclient
- 教你寫個簡單的 Redis Client 框架 - .NET CoreRedisclient框架
- .net hbase client--終於浮出水面的輪子client
- [20201110]How to get the Data Guard broker configuration from a SQL query.txtSQL
- Android Handler機制之Message及Message回收機制Android
- ASP.Net LINQ to SQl查詢ASP.NETSQL
- java.sql.SQLException: ORA-00923: 未找到要求的 FROM 關鍵字JavaSQLException
- .Net防sql注入的方法總結SQL
- Git commit message 規範GitMIT
- {"error":400,"message":"over quota"}Error
- 如何修改git commit message?GitMIT
- Error response from daemon: Get "https://registry-1.docker.io/v2/": netErrorHTTPDocker
- 雲端計算之路-出海記-小目標:Hello World from .NET 5.0 on AWS
- C++ Simple Message/Logging ClassC++
- PTP ACS9522 Message rate
- Tkinter (12) 訊息部件 Message
- message: "This action is unauthorized."報錯Zed