Oracle SYS用戶無法登錄數(shù)據(jù)庫ORA-12162的解決方法
錯誤詳情
[Oracle@orcl bin]$ ./sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Mon Aug 18 08:12:04 2025 Copyright (c) 1982, 2013, Oracle. All rights reserved. ERROR: ORA-12162: TNS:net service name is incorrectly specified
OS登錄解析
注意:Oracle 數(shù)據(jù)庫使用SYSDBA用戶在OS級別登錄時,需要滿足最基本的兩個條件
- 必須設(shè)置ORACLE_HOME路徑,并將其加入到PATH變量中
- 必須設(shè)置ORACLE_SID變量,ORACLE_SID表明需要登錄的數(shù)據(jù)庫
錯誤原因
- 雖然此處報錯顯示未指定正確監(jiān)聽名稱,但是SYSDBA用戶是通過操作系統(tǒng)認(rèn)證的,無需通過監(jiān)聽識別即可直接登錄數(shù)據(jù)庫。當(dāng)前庫并未設(shè)置ORACLE_HOME和ORACLE_SID變量,導(dǎo)致無法程序無法識別實例,從而無法連接數(shù)據(jù)庫。
- 將ORACLE_HOME添加到PATH中的目的是可以直接運行Oracle的相關(guān)程序,如:sqlplus、lsnrctl、tnsping等常用工具。無需再進(jìn)入到文件夾中調(diào)用執(zhí)行。
解決方案
1、設(shè)置變量
$ export ORACLE_BASE=/u01/db/11.2.0.4 $ export ORACLE_HOME=$ORACLE_BASE/orcl $ export PATH=$ORACLE_HOME/bin:$PATH $ export ORACLE_SID=ORCL
2、登錄即可
[oracle@orcl ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Fri Aug 22 20:48:44 2025 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
理解SYS用戶
1、介紹
Oracle數(shù)據(jù)庫中的 SYS用戶 是系統(tǒng)內(nèi)置的超級管理員賬戶,具有最高權(quán)限,所有Oracle的數(shù)據(jù)字典的基表和視圖都存放在SYS用戶中,承擔(dān)數(shù)據(jù)庫核心管理任務(wù)。重點:不受數(shù)據(jù)庫的限制訪問和管理整個數(shù)據(jù)庫的能力。
2、特點
- 最高權(quán)限:SYS用戶擁有DBA、SYSDBA、SYSOPER等角色或權(quán)限。SYS用戶可以進(jìn)行創(chuàng)建/刪除用戶、表空間、數(shù)據(jù)庫實例、備份和恢復(fù)等高級操作,是Oracle權(quán)限最高的用戶。
- 數(shù)據(jù)字典:所有Oracle的數(shù)據(jù)字典的基表和視圖都存放在SYS用戶中,這些基表和視圖對于Oracle的運行至關(guān)重要。
- 密碼管理:SYS用戶通過OS級別的密碼文件對其密碼進(jìn)行管理,雖然可以通過SQL語法直接修改密碼,但前提是OS級別的密碼文件必須先存在,否則無法通過SQL語法直接修改SYS用戶的密碼。默認(rèn)密碼是change_on_install
- 登錄方式:SYS用戶必須以SYSDBA身份登錄。
3、SYS登錄認(rèn)證方式
- 操作系統(tǒng)認(rèn)證:當(dāng)完成數(shù)據(jù)庫安裝后,可直接通過sysdba用戶登錄數(shù)據(jù)庫,而不會驗證用戶名和密碼,該認(rèn)證方式的用戶稱為特權(quán)用戶。操作系統(tǒng)認(rèn)證主要通過sqlnet.ora文件控制,一旦取消該認(rèn)證,sys用戶將無法直接登錄數(shù)據(jù)庫,需要校驗其密碼正確才可以登錄。
# 取消操作系統(tǒng)認(rèn)證 $ cd $ORACLE_HOME/network/admin $ vi sqlnet.ora SQLNET.AUTHENTICATION_SERVICE=NONE -- 默認(rèn)不存在該參數(shù),設(shè)置為NTS即開啟 [oracle@orcl ~]$ sqlplus / as sysdba -- 登錄 SQL*Plus: Release 11.2.0.4.0 Production on Fri Aug 22 20:48:44 2025 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
- 數(shù)據(jù)庫認(rèn)證:該方式一般針對普通用戶而言,主要是將密碼記錄在數(shù)據(jù)庫的表中,但用戶需要登錄時必須輸入正確的用戶名和密碼加監(jiān)聽服務(wù)連接到數(shù)據(jù)庫中進(jìn)行校驗,校驗正確方可登錄。
[oracle@orcl ~]$ sqlplus apps/apps@orcl -- 普通用戶登錄方式 SQL*Plus: Release 11.2.0.4.0 Production on Fri Aug 22 20:52:50 2025 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
到此這篇關(guān)于Oracle SYS用戶無法登錄數(shù)據(jù)庫-ORA-12162的文章就介紹到這了,更多相關(guān)Oracle SYS用戶無法登錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Oracle數(shù)據(jù)庫如何切換登錄用戶(system和sys)
- Oracle SYSAUX表空間使用率過高的處理辦法
- 解決Oracle19c?ORA-00904:“WMSYS“.“WM_CONCAT“:標(biāo)識符無效問題
- Oracle的SYS_GUID()函數(shù)用法及說明
- Oracle?system/用戶被鎖定的解決方法
- 關(guān)于Oracle12C默認(rèn)用戶名system密碼不正確的解決方案
- Oracle 數(shù)據(jù)庫忘記sys與system管理員密碼重置操作方法
- oracle忘記sys/system/scott用戶密碼的解決方法
- ORACLE時間函數(shù)(SYSDATE)深入理解
相關(guān)文章
Oracle存儲過程里操作BLOB的字節(jié)數(shù)據(jù)的辦法
該篇文章介紹了如何在Oracle存儲過程中操作BLOB的字節(jié)數(shù)據(jù),作者研究了如何獲取BLOB的字節(jié)長度、如何使用DBMS_LOB包進(jìn)行BLOB操作、如何進(jìn)行字節(jié)級操作以及如何使用UTL_RAW包,感興趣的朋友一起看看吧2025-03-03
教你一招怎樣查看Oracle中sid和service_name
Oracle的SID和Service?Name是數(shù)據(jù)庫中的兩個重要概念,下面這篇文章主要給大家介紹了關(guān)于如何查看Oracle的sid和service_name的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12
Oracle數(shù)據(jù)庫中如何給表賦予權(quán)限
賦權(quán)是指將特定的權(quán)限授予用戶或用戶組,以便他們可以執(zhí)行特定的操作,如查詢、插入、更新和刪除數(shù)據(jù),創(chuàng)建和修改表結(jié)構(gòu),以及執(zhí)行其他管理任務(wù),這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫中如何給表賦予權(quán)限的相關(guān)資料,需要的朋友可以參考下2024-01-01
安裝Oracle時出現(xiàn)環(huán)境變量Path的值大于1023的解決辦法
這篇文章主要介紹了安裝Oracle時出現(xiàn)環(huán)境變量Path的值大于1023的解決辦法,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧2016-12-12
Oracle中的半聯(lián)結(jié)和反聯(lián)結(jié)詳解
這篇文章主要介紹了Oracle中的半聯(lián)結(jié)和反聯(lián)結(jié)詳解,也稱半連接和反連接,其實就是in、exists,需要的朋友可以參考下2014-07-07
淺析常用數(shù)據(jù)庫的自增字段創(chuàng)建方法匯總
本篇文章是對常用數(shù)據(jù)庫的自增字段創(chuàng)建方法進(jìn)行了全面的匯總介紹,需要的朋友參考下2013-07-07
Oracle數(shù)據(jù)IMP和EXP命令用法詳解
這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)IMP和EXP命令用法詳解的相關(guān)資料,我們可以使用Oracle自帶的exp、imp命令來進(jìn)行數(shù)據(jù)庫備份,imp和exp稱之為導(dǎo)入導(dǎo)出,這種方式也能快速的導(dǎo)入導(dǎo)出table或數(shù)據(jù)庫,需要的朋友可以參考下2023-11-11
oracle數(shù)據(jù)庫數(shù)據(jù)檢查方法步驟記錄
這篇文章主要介紹了檢查Oracle數(shù)據(jù)庫運行狀況的步驟,包括數(shù)據(jù)庫實例狀態(tài)、性能指標(biāo)、監(jiān)控和警報、日志檢查、備份和恢復(fù)、安全性以及數(shù)據(jù)完整性檢查,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-02-02

