数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

oracle网络配置相关概念


发布日期:2023年07月26日
 
oracle网络配置相关概念

网络配置文件默认的目录在$ORACLE_HOME/network/admin 目录下

sqlnetora

sqlnetora文件决定找数据库服务器别名的方式

参数SQLNETAUTHENTICATION_SERVICES= (NONENTS)表明用户连接Oracle服务器时使用哪种验证方式

NONE表示Oracle身份验证

NTS表示操 作系统身份验证

两种方式可以并用

ORA_DBA组中的域用户和本地用户不需要Oracle用户名和密码就可以登录Oracle

而且该组的用户登录数据库后都具有SYSDBA权限(多个实 例时可以建立类似这样的组ORA_SID_DBA其中SID指实例名

同理:ORA_OPER组中的成员具有SYSOPER角色的权限

登录方式 sqlplus / as sysdba

或者sqlplus nolog然后SQL>connect / as sysdba

NAMESDEFAULT_DOMAIN = WORLD

NAMESDIRECTORY_PATH = (TNSNAMES ONAMES HOSTNAME)

表明解析客户端连接时所用的主机字符串的方式

TNSNAMES表示采用TNSNAMESORA文件来解析

ONAMES表示使用自己的名称服务器(Oracle Name Server)来解析目前Oracle建议使用轻量目录访问协议LDAP来取代ONAMES

HOSTNAME表示使用host文件DNSNIS等来解析

如果你的ORACLE客户端和服务器默认的域名不一样需要用#号注释第一行

#NAMESDEFAULT_DOMAIN = WORLD

使它不起作用

NAMESDIRECTORY_PATH指定找服务器别名的顺序 (本地的tnsnamesora文件 命名服务器 主机名方式)

服务器的sqlnetora里可以设置检查客户端是否alive的时间间隔

sqlnetexpire_time =

也可以设置环境变量TNS_ADMIN指向你想用的sqlnetora和tnsnamesora目录

例如

TNS_ADMIN=/home/oracle/config/;export TNS_ADMIN

tnsnamesora

写数据库服务器别名的详细内容

有以下几种写法:

# 一般的写法

APPDB =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))

)

(CONNECT_DATA =

(SERVICE_NAME = appdb)

)

)

# 明确标明用dedicated方式连接数据库

APPD=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=))

(CONNECT_DATA=

(SERVICE_NAME=appdb)

(SERVER=DEDICATED)))

# 对多个listener端口做均衡负载方式连接数据库

APPS =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))

(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))

)

(CONNECT_DATA =

(SERVICE_NAME = appdb)

)

)

# 注意如果数据库服务器用MTS客户端程序需要用database link时最好明确指明客户端用dedicated直连方式

# 不然会遇到很多跟分布式环境有关的ORACLE BUG

# 一般情况下数据库服务器用直接的连接会好一些除非你的实时数据库连接数接近

上一篇:Oracle8 PL/SQL编程风格与系统性能的提高

下一篇:Oracle数据库备份与恢复之二:SQL*Loader