strace解決sqlplus登陸緩慢的問題一例
strace -T -t -o /tmp/nohost sqlplus / as sysdba
檢視/tmp/nohost內容,此處省略部分內容
- 10:05:39 munmap(0x7fb66c71c000, 404774) = 0 <0.000082>
- 10:05:39 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 9 <0.000094>
- 10:05:39 connect(9, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("221.228.255.1")}, 16) = 0 <0.000076>
- 10:05:39 poll([{fd=9, events=POLLOUT}], 1, 0) = 1 ([{fd=9, revents=POLLOUT}]) <0.000061>
- 10:05:39 sendto(9, "\23\232\1\0\0\1\0\0\0\0\0\0\5test8\0\0\1\0\1", 23, MSG_NOSIGNAL, NULL, 0) = 23 <0.000201>
- 10:05:39 poll([{fd=9, events=POLLIN|POLLOUT}], 1, 5000) = 1 ([{fd=9, revents=POLLOUT}]) <0.000062>
- 10:05:39 sendto(9, "\3d\1\0\0\1\0\0\0\0\0\0\5test8\0\0\34\0\1", 23, MSG_NOSIGNAL, NULL, 0) = 23 <0.000098>
- 10:05:39 poll([{fd=9, events=POLLIN}], 1, 4998) = 1 ([{fd=9, revents=POLLIN}]) <0.006345>
- 10:05:39 ioctl(9, FIONREAD, [39]) = 0 <0.000063>
- 10:05:39 recvfrom(9, "\23\232\201\200\0\1\0\1\0\0\0\0\5test8\0\0\1\0\1\300\f\0\1\0\1\0\0\0"..., 2048, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("221.228.255.1")}, [16]) = 39 <0.000096>
- 10:05:39 poll([{fd=9, events=POLLIN}], 1, 4991) = 0 (Timeout) <4.996143>
- 10:05:44 poll([{fd=9, events=POLLOUT}], 1, 0) = 1 ([{fd=9, revents=POLLOUT}]) <0.000100>
- 10:05:44 sendto(9, "\23\232\1\0\0\1\0\0\0\0\0\0\5test8\0\0\1\0\1", 23, MSG_NOSIGNAL, NULL, 0) = 23 <0.000198>
- 10:05:44 poll([{fd=9, events=POLLIN}], 1, 5000) = 1 ([{fd=9, revents=POLLIN}]) <0.006851>
- 10:05:44 ioctl(9, FIONREAD, [39]) = 0 <0.000151>
- 10:05:44 recvfrom(9, "\23\232\201\200\0\1\0\1\0\0\0\0\5test8\0\0\1\0\1\300\f\0\1\0\1\0\0\0"..., 2048, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("221.228.255.1")}, [16]) = 39 <0.000107>
- 10:05:44 poll([{fd=9, events=POLLOUT}], 1, 4990) = 1 ([{fd=9, revents=POLLOUT}]) <0.000088>
- 10:05:44 sendto(9, "\3d\1\0\0\1\0\0\0\0\0\0\5test8\0\0\34\0\1", 23, MSG_NOSIGNAL, NULL, 0) = 23 <0.000120>
- 10:05:44 poll([{fd=9, events=POLLIN}], 1, 4990) = 1 ([{fd=9, revents=POLLIN}]) <0.008139>
- 10:05:44 ioctl(9, FIONREAD, [98]) = 0 <0.000074>
- 10:05:44 recvfrom(9, "\3d\201\203\0\1\0\0\0\1\0\0\5test8\0\0\34\0\1\0\0\6\0\1\0\0\35\17"..., 2009, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("221.228.255.1")}, [16]) = 98 <0.000084>
- 10:05:44 close(9) = 0 <0.000143>
- 10:05:44 open("/etc/hostid", O_RDONLY) = -1 ENOENT (No such file or directory) <0.000095>
-
10:05:44 uname({sys="Linux", node="test8", ...}) = 0 <0.000061>
問題已經浮出水面了,耗時最長的一步是
而且卡在此處足足有5s,而且最終超時,根據上下文判斷,此處是一個socket連線,而且還涉及到dns伺服器的地址,由此推斷應該和解析有關
檢視/etc/resolv.conf
可見配置了dns,其實我將dns註釋掉之後sqlplus就恢復了正常,但dns不應該成為導致此問題的根本原因,此處明顯是去dns上解析本機了
再來看/etc/hosts
再重新查閱了hosts的正確配置之後發現我的hosts配置方法是錯誤的
我的主機名是test8,在我測試郵件的時候,為了騙過郵件伺服器,我把hosts裡解析隨意加了個域名,卻從未正式瞭解過hosts的配置方法,現在正確配置一下
再測試sqlplus,已經恢復正常 - 10:05:39 poll([{fd=9, events=POLLIN}], 1, 4991) = 0 (Timeout) <4.996143>
-
- [root@test8 etc]# cat /etc/resolv.conf
- # Generated by NetworkManager
- #nameserver 221.228.255.1
- nameserver 221.228.255.1
- nameserver 218.2.135.1
-
- [root@test8 etc]# cat /etc/hosts
- 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
- ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- 192.168.1.8 test8.com
- 192.168.1.29 oem.oracle.com
-
- 格式:
- 一般情況下hosts的內容關於主機名(hostname)的定義,每行為一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明,不被系統解釋。
- 第一部份:網路IP地址;
- 第二部份:主機名.域名,注意主機名和域名之間有個半形的點,比如 localhost.localdomain
- 第二部份:主機名(主機名別名) ,其實就是主機名;
-
- [root@test8 etc]# cat /etc/hosts
- 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
- ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- 192.168.1.8 test8.com test8
- 192.168.1.29 oem.oracle.com
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30166976/viewspace-2682096/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20210518]ssh ip登入緩慢問題解決.txt
- [20211108]sqlplus 本地登入緩慢.txtSQL
- 解決 macOS HomeBrew 下載緩慢的問題Mac
- 由Linux核心bug引起SSH登入緩慢問題的排查與解決Linux
- [20211109]sqlplus本地登入緩慢分析2.txtSQL
- 解決csdn登陸複製的問題
- Oracle EXPDP自動備份緩慢問題解決Oracle
- 生產內網ssh登陸變慢問題原因及解決辦法內網
- 輕鬆解決Github連線緩慢、圖裂問題Github
- 兩行命令解決 Windows 下 Homestead 執行緩慢的問題Windows
- 解決Gradle下載緩慢的問題,將-bin改為-allGradle
- 解決VScode下載外掛十分緩慢的問題VSCode
- Laravel 6 ignition 解決 Class 'xxx' not found 載入緩慢問題Laravel
- 解決Jira和Confluence訪問開啟越來越緩慢問題
- vue-router懶載入速度緩慢問題及解決方法Vue
- 討論TableLayoutPanel載入緩慢和閃爍問題解決方案
- 解決github訪問慢的問題Github
- Oracle最佳化案例-strace sqlplus定位網路問題(三十一)OracleSQL
- shiro 登陸的問題。
- WEB應用訪問緩慢的問題定位Web
- 關於onethink移植後登陸不了後臺問題的解決
- keycloak整合微信登陸~解決國內微信整合的問題
- Composer 下載較慢的問題解決
- 01 Eclipse使用Maven慢的問題解決EclipseMaven
- 解決windows docker lnmp訪問慢問題WindowsDockerLNMP
- MySQL主從複製問題解決一例MySql
- 解決 Windows 系統使用 Homestead 執行 Laravel 本地專案響應緩慢問題WindowsLaravel
- 使用 docker-sync 解決 docker for Mac 啟動的虛擬容器程式執行緩慢的問題DockerMac
- 如何徹底解決pip install慢的問題
- 解決Intellij IDEA中執行緩慢的問題,tomcat控制檯列印亂碼問題,國際化亂碼配置檔案亂碼解決IntelliJIdeaTomcat
- SSH登入很慢問題的解決
- Solaris Linux SSH緩慢診斷與解決Linux
- 解決 Windows 系統使用 Homestead 執行 Laravel 本地專案響應緩慢問題(轉)WindowsLaravel
- vue-router懶載入速度緩慢問題Vue
- Docker官方映象加速解決pull過慢的問題Docker
- 解決建立SpringBoot工程載入較慢的問題Spring Boot
- 解決Rust -- update crates.io過慢的問題Rust
- mysql8.0插入慢的問題解決方案(一)MySql