listener.ora/tnsnames.ora/sqlnet.ora介绍
listener.ora/tnsnames.ora/sqlnet.ora介绍
listener.ora
listener.ora用在oracle server端,配置oracle服务端程序的监听办法,比如限制某些ip等参数。
listener.ora是服务器端用的,oracle监听程序,就是读的这个文件,里面有oracle服务器端的socket监听地址和端口(如果要想局域网中的其他人,能够访问我本地的oracle,要把我本机的地址写进去,如192.168.6.10
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.6.10)(PORT = 1521)) ) )
例1:
# 动态监听配置(只能远程关闭数据库,无法远程启动) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.9.20)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) # 静态监听配置(可以远程启动、停止数据库) SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=orcl) (SID_NAME=orcl) (ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1) ) )
tnsnames.ora
tnsnames.ora用在oracle client端,用户配置连接数据库的别名参数,就像系统中的hosts文件一样。提供了客户端连接某个数据库的详细信息,主机地址、端口、数据库实例名等。
tnsnames.ora是记录客户端访问数据库的本地配置:客户端是通过tnsnames.ora来识别连接服务器的,如果你没有添加tnsnames.ora,那么你就连接不上服务器。文件路径:$ORACLE_HOME/network/admin
ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 主机地址)(PORT = 端口)) ) (CONNECT_DATA = (SERVICE_NAME = ORCL) ) )
例2:
orcl = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.9.20)(PORT = 1521)) ) (CONNECT_DATA = (SID = orcl) (SERVER = DEDICATED) ) )
sqlnet.ora
sqlnet.ora用在oracle client端,用于配置连接服务端oracle的相关参数,主要用于配置Oracle查找网络时的一些行为方式。sqlnet.ora可以删除,当它不存在时,会默认采用tnsnames.ora中的配置,或使用默认配置。
例3:
SQLNET.ALLOWED_LOGON_VERSION = 11 # 允许哪个版本的oracle客户端连接 NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)