Oracle實例別名
IMCDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = IMCDB.imc.com)
)
)
IMCDB:連接描述符名(實例別名)
HOST = localhost:如果在/etc/hosts文件中配置了localhost主機名映射,可以直接寫localhost,否則需要寫具體的IP地址
SERVICE_NAME = db_name.db_domain
db_name和db_domain的值可以在"$ORACLE_BASE/admin/Oracle實例名/pfile/init.ora.xxx"文件中查看
如果用戶沒有設置db_domain,可以只寫db_name,否則應該加上db_domain
db_name是實例名(可以通過`echo $ORACLE_SID`命令查看)

Oracle監聽實例
在Oracle數據庫中,如果不配置監聽實例,那么Oracle將無法監測這個實例的變化,當實例A啟動的時候,用戶進程可以遠程連接數據庫實例A,
當實例A停止后,用戶進程想遠程啟動這個實例A就無法辦到了,因為沒有配置監聽,Oracle不知道遠程終端想啟動哪個實例。所以常常出現的
情況是用戶遠程重啟Oracle數據庫后,發現Oracle數據庫沒有啟動。
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=IMCDB.imc.com)
(ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1)
(SID_NAME=IMCDB)
)
)
GLOBAL_DBNAME:db_name.db_domain
ORACLE_HOME:這個也是需要配置的,不能缺省
SID_NAME:這個指的是數據庫實例名
經常遇見的問題
ERROR:
ORA-12541: TNS:no listener