【Oracle Database】客户端通过监听器连接数据库实例
原创
©著作权归作者所有:来自51CTO博客作者dbprofessional的原创作品,谢绝转载,否则将追究法律责任
服务名 --根据业务需求修改
[oracle@node01 ~]$ sqlplus / as sysdba
SQL> show parameter service_names;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string core
实例名 --允许修改不建议修改
SQL> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string core
数据库名 --不允许修改
SQL> show parameter db_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string core
监听器
[oracle@node01 ~]$ cat $ORACLE_HOME/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = node01)(PORT = 1521)) --协议,主机,端口
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/app/oracle
[oracle@node01 ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 21-AUG-2023 14:09:09
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=node03)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date 21-AUG-2023 11:05:31
Uptime 0 days 3 hr. 3 min. 38 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/node01/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=node01)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "core" has 1 instance(s).
Instance "core", status READY, has 1 handler(s) for this service...
Service "coreXDB" has 1 instance(s).
Instance "core", status READY, has 1 handler(s) for this service...
The command completed successfully
客户端(本地命名方式)
[oracle@node02 ~]$ cat $ORACLE_HOME/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
CORE = --连接字符串(网络服务名)根据业务需求修改
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = node01)(PORT = 1521)) --协议,主机,端口
)
(CONNECT_DATA =
(SERVICE_NAME = core) --与服务名保持一致
)
)
[oracle@node02 ~]$ sqlplus sys/oracle@core as sysdba --用户名/密码@连接字符串(网络服务名)
SQL> select * from dual;
D
-
X
总结:listener.ora文件中的协议,主机,端口,与通过PMON动态注册的服务名,
与tnsnames.ora文件中的协议,主机,端口,服务名需要保持一致,客户端才可以正常连接数据库服务器。