形成錯誤「ORA-12547: TNS:lost contact」的常見緣由有哪些?

 

形成錯誤「ORA-12547: TNS:lost contact」的常見緣由有哪些?

 





真題一、形成錯誤「ORA-12547: TNS:lost contact」的常見緣由有哪些? node

答案:在執行「sqlplus / as sysdba」時可能會報「ORA-12547: TNS:lost contact」的錯誤,常見緣由有以下幾點: 面試

1、查看操做系統內核參數是否無誤 sql

core file size          (blocks, -c) 0 數據庫

data seg size           (kbytes, -d) unlimited 微信

scheduling priority             (-e) 0 網絡

file size               (blocks, -f) unlimited oracle

pending signals                 (-i) 16384 app

max locked memory       (kbytes, -l) 32 dom

max memory size         (kbytes, -m) unlimited tcp

open files                      (-n) 1024

pipe size            (512 bytes, -p) 8

POSIX message queues     (bytes, -q) 819200

real-time priority              (-r) 0

stack size              (kbytes, -s) 10240

cpu time               (seconds, -t) unlimited

max user processes              (-u) 16384

virtual memory          (kbytes, -v) unlimited

file locks                      (-x) unlimited

對於文件/etc/security/limits.conf中的「oracle  hard  stack」值至少應該是10240

2、確認$ORACLE_HOME/bin/oracle文件權限和屬主是否有問題

須要注意的是,在rac環境下須要查看$ORACLE_HOME/bin/oracle$GRID_HOME/bin/oracle兩個文件。在沒有安裝GI的環境下,正確權限爲:

[oracle@OCPLHR ~]$ ll $ORACLE_HOME/bin/oracle

-rwsr-s--x 1 oracle oinstall 232424392 Feb  2 10:30 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[oracle@OCPLHR ~]$

在有grid用戶的狀況下,oracle可執行文件正確屬主應該是oracle:asmadmin,而且權限必須有s才能夠,以下所示:

[root@orclalhr ~]$ which setasmgidwrap

/u01/app/11.2.0/grid/bin/setasmgidwrap

[root@orclalhr ~]$ setasmgidwrap -o /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[root@orclalhr ~]$ ll /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

-rwsr-s--x 1 oracle asmadmin 232399083 Apr 21  2015 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[root@orclalhr ~]# ll /u01/app/11.2.0/grid/bin/oracle

-rwsr-s--x. 1 grid oinstall 203972117 Jan  5  2015 /u01/app/11.2.0/grid/bin/oracle

[root@orclalhr ~]# chmod 6751 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[root@orclalhr ~]# ll /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

-rwsr-s--x 1 oracle asmadmin 232399083 Apr 21  2015 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[root@orclalhr bin]# cd /u01/app/oracle/product/11.2.0/dbhome_1/bin/

[root@orclalhr bin]# which stat

/usr/bin/stat

[root@orclalhr bin]# stat oracle

  File: `oracle'

  Size: 210823844       Blocks: 411776     IO Block: 4096   regular file

Device: 802h/2050d      Inode: 1717737     Links: 1

Access: (6751/-rwsr-s--x)  Uid: (  501/  oracle)   Gid: (  504/asmadmin)

Access: 2017-03-16 12:33:44.809363974 +0800

Modify: 2014-05-18 17:09:50.508549983 +0800

Change: 2017-03-16 11:05:15.733816820 +0800

文件權限的詳細說明以下:

uUser,即文件或目錄的擁有者。

gGroup,即文件或目錄的所屬羣組。

oOther,除了文件或目錄擁有者或所屬羣組以外,其餘用戶皆屬於這個範圍。

aAll,即所有的用戶,包含擁有者,所屬羣組以及其餘用戶。

有關權限代號的部分,列表於下:

r:讀取權限,數字代號爲4

w:寫入權限,數字代號爲2

x:執行或切換權限,數字代號爲1

-:不具任何權限,數字代號爲0

s:當文件被執行時,根據who參數指定的用戶類型設置文件的setuid或者setgid權限。

若是權限不對,那麼能夠執行如下命令進行修復:

chmod 6751 $ORACLE_HOME/bin/oracle 

若是權限不對,那麼使用strace跟蹤命令也能夠看到以下信息:

$strace -f -o /tmp/trace.1.log $ORACLE_HOME/bin/sqlplus / as sysdba

trace.1.log文件中能夠看到以下的內容:

21810 open("/oracle/PROD/db/tech_st/11.1.0/admin/PROD_erptest/diag/rdbms/prod/PROD/alert/log.xml", O_WRONLY|O_CREAT|O_APPEND, 0664) = -1 EACCES (Permission denied)

......

 

21810 open("/oracle/PROD/db/tech_st/11.1.0/admin/PROD_erptest/diag/rdbms/prod/PROD/trace/alert_PROD.log", O_WRONLY|O_CREAT|O_APPEND, 0664) = -1 EACCES (Permission denied)

3、檢查一下環境變量

echo $ORACLE_HOME 

echo $ORACLE_SID 

echo $LD_LIBRARY_PATH --注意:不一樣的操做系統此環境變量會不一樣

echo $PATH

4、檢查$ORACLE_HOME/bin/oracle$ORACLE_HOME/rdbms/lib/config.o的文件大小是否爲0

[oracle@OCPLHR ~]$ ll $ORACLE_HOME/bin/oracle

-rwsr-s--x 1 oracle oinstall 232424392 Feb  2 10:30 /u01/app/oracle/product/11.2.0/dbhome_1/bin/oracle

[oracle@OCPLHR ~]$ ll $ORACLE_HOME/rdbms/lib/config.o

-rw-r--r-- 1 oracle oinstall 1248 Jan 15 21:45 /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/config.o

[oracle@OCPLHR ~]$

若是大小爲0,那麼須要先備份config.o文件,而後從新編譯oracle軟件:

% cd $ORACLE_HOME/rdbms/lib

% mv config.o config.o.bad

[oracle@OCPLHR ~]$ relink all

writing relink log to: /u01/app/oracle/product/11.2.0/dbhome_1/install/relink.log

五、檢查$ORACLE_HOME/network/admin/sqlnet.ora文件中的內容

查看是否設置了限制某些IP地址登陸的內容,此時能夠經過查看監聽日誌的內容來肯定。若是設置了限制登陸的內容,則能夠把tcp.validnode_checking設爲no,或者在tcp.invited_nodes加入容許訪問的IP或機器名。

六、檢查監聽日誌文件的大小,確保監聽日誌文件的大小不能超過2G。若是超過2G,那麼能夠使用以下的方法解決:

[oracle@test ~]$ cd $ORACLE_HOME/network/log

[oracle@test log]$ cat /dev/null > listener.log

七、檢查文件/etc/hosts文件中是否含有如下內容:

[oracle@OCPLHR ~]$ cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1               localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

192.168.59.155 OCPLHR

必須確保/etc/hosts文件中含有127.0.0.1這行。

八、查看系統是否缺乏必要安裝包,例如glibcglibc-devellibaiolibaio-devel

九、使用操做系統跟蹤命令跟蹤sqlplus鏈接過程,從而觀察跟蹤文件

Linux系統的跟蹤命令:

strace -o /tmp/output.txt -T -tt -e trace=all  sqlplus / as sysdba

strace -t -p 4545

Unix跟蹤sqlplus進程:

truss -dfaie -o /tmp/sched_trace.out.02271 sqlplus '/as sysdba'

 






Local SQL*Plus Connection and DBCA Fails With: ORA-12547: TNS:Lost Contact (文檔 ID 422173.1)

https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=346867971665735&id=422173.1&displayIndex=3&_afrWindowMode=0&_adf.ctrl-state=17yvi1ujp4_126#REF


DBCA and Local SQL*Plus Connection Fails With: ORA-12547: TNS:Lost Contact ORA-12753 (文檔 ID 2206832.1)


Troubleshooting ORA-12547 TNS: Lost Contact (文檔 ID 555565.1) 轉到底部轉到底部


 



Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Mac OS X,Solaris,Tru64 Unix Operating Systems Installation and Configuration Requirements Quick Reference (8.0.5 to 11.2) (文檔 ID 169706.1)






About Me

.............................................................................................................................................

● 本文做者:小麥苗,部份內容整理自網絡,如有侵權請聯繫小麥苗刪除

● 本文在itpub(http://blog.itpub.net/26736162/abstract/1/)、博客園(http://www.cnblogs.com/lhrbest)和我的微信公衆號(xiaomaimiaolhr)上有同步更新

● 本文itpub地址:http://blog.itpub.net/26736162/abstract/1/

● 本文博客園地址:http://www.cnblogs.com/lhrbest

● 本文pdf版、我的簡介及小麥苗雲盤地址:http://blog.itpub.net/26736162/viewspace-1624453/

● 數據庫筆試面試題庫及解答:http://blog.itpub.net/26736162/viewspace-2134706/

● DBA寶典今日頭條號地址:http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

.............................................................................................................................................

● QQ羣號:230161599(滿)、618766405

● 微信羣:可加我微信,我拉你們進羣,非誠勿擾

● 聯繫我請加QQ好友646634621,註明添加原因

● 於 2018-02-01 06:00 ~ 2018-02-31 24:00 在魔都完成

● 文章內容來源於小麥苗的學習筆記,部分整理自網絡,如有侵權或不當之處還請諒解

● 版權全部,歡迎分享本文,轉載請保留出處

.............................................................................................................................................

小麥苗的微店https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

小麥苗出版的數據庫類叢書http://blog.itpub.net/26736162/viewspace-2142121/

好消息:小麥苗OCP、OCM開班啦,詳情請點擊http://blog.itpub.net/26736162/viewspace-2148098/

.............................................................................................................................................

使用微信客戶端掃描下面的二維碼來關注小麥苗的微信公衆號(xiaomaimiaolhr)及QQ羣(DBA寶典),學習最實用的數據庫技術。

小麥苗的微信公衆號小麥苗的DBA寶典QQ羣2《DBA筆試面寶典》讀者羣小麥苗的微店

   小麥苗的微信公衆號      小麥苗的DBA寶典QQ羣2     《DBA筆試面試寶典》讀者羣       小麥苗的微店

.............................................................................................................................................


DBA筆試面試講解羣
《DBA寶典》讀者羣 歡迎與我聯繫
相關文章
相關標籤/搜索