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`命令查看)
![](https://images2017.cnblogs.com/blog/644743/201801/644743-20180101160345940-1218977762.jpg)
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