sqlnet.ora簡單解析
sqlnet.ora是一個文本配置文件,主要用于控制客戶端訪問數(shù)據(jù)庫服務(wù)器,一般情況下,里面僅有下面兩行內(nèi)容
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
其中:
SQLNET.AUTHENTICATION_SERVICES= (NTS):作用為指定啟動一個或多個認證服務(wù)。
認證服務(wù)是指oracle的身份驗證服務(wù),一般有以下三種取值,
NONE:不允許通過OS系統(tǒng)用戶登錄數(shù)據(jù)庫,需要提供用戶名及密碼;
ALL:允許所有的登錄方式;
NTS:允許本地操作系統(tǒng)用戶認證.
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT):作用為指定client name解析方法的次序。
連接數(shù)據(jù)庫時,會有以下語句格式的輸入:
CONNECT username/password@db_alias AS [SYSOPER | SYSDBA] ;
db_alias是在tnsnames.ora中定義的數(shù)據(jù)庫別名,比如:
ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = newmachine)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl1)
)
)
#其中ORCL1為別名
在連接數(shù)據(jù)庫時,怎么知道ORCL1是什么呢?這就和sqlnet.ora中的配置有關(guān),當?shù)谝粋€指定為TNSNAMES時,就先到tnsnames.ora文件中去找對應的db_alias;
如果找不到,再按指定的第二種方式去找;如果都找不到,就將指定的db_alias當做主機名在網(wǎng)絡(luò)上進行解析,得到數(shù)據(jù)庫服務(wù)器的地址。
EZCONNECT表示簡單連接,意思是不用在tnsnames.ora文件中查詢服務(wù)名進行數(shù)據(jù)庫連接,比如:
connect username/password@hostname:port/service_nameas sysdba
