您好,登錄后才能下訂單哦!
最近兩天在虛擬機上搞Oracle 12.2的安裝,安裝的過程挺順利的。但虛擬機重啟之后就無法連接數據庫,執行sqlplus / as sysdba報錯ORA-12547: TNS:lost contact
為什么呢?安裝完后測試都好好的,怎么重啟之后會這樣呢。在網上找了很多方法來處理:
網上給出的解決思路如下:
1、查看操作系統內核參數是否無誤 [oracle@rhel7 database]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15738 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited 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) 2047 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited 2、確認$ORACLE_HOME/bin/oracle文件權限是否有問題 (在rac下需要查看$ORACLE_HOME/bin/oracle和$GRID_HOME/bin/oracle兩個文件), 正確權限為: [oracle@normal adump]$ ll $ORACLE_HOME/bin/oracle -rwsr-s--x 1 oracle oinstall 232399083 Aug 28 17:23 /u01/app/oracle/product/11.2.0/db_1/bin/oracle 如果權限不對 chmod 6751 $ORACLE_HOME/bin/oracle 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, 如果大小為0,需要重新編譯oracle軟件: [oracle@normal backup]$ relink all writing relink log to: /u01/app/oracle/product/11.2.0/db_1/install/relink.log 5、使用操作系統跟蹤命令跟蹤sqlplus連接過程,從而觀察跟蹤文件。 ltrace -f -o /tmp/sqlplus.log sqlplus / as sysdba 或truss命令
參考自:http://blog.csdn.net/ch7543658/article/details/38901355
按照上面的五個步驟都做了一遍還是一直報錯。
最后仔細檢查了一下內核配置和oracle用戶的limit參數配置,發現limits.conf中有一個參數配置的值太小,我配置的是:
oracle hard stack 1024
而官方文檔中建議的是10240。
這才想起來,當時安裝Oracle時偷懶沒有配置內核參數和limits.conf文件,而是使用fix.sh腳本修改的,修改完后發現有些配置沒有寫到配置文件里,就又手動把漏掉的配置寫了進去,結果還寫錯了,最終導致了上面的錯誤的出現。
修改limits.conf文件后重新使用oracle用戶登錄,不再報錯。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。