欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

oracle数据库连接配置

程序员文章站 2022-07-13 08:47:37
...

本示例以win 7作为数据库测试服务器,主要介绍oracle数据库三大配置文件sqlnet.ora 、tnsnames.ora 、listener.ora。

 

sqlnet.ora 用在oracle client端,用于配置连接服务端oracle的相关参数
tnsnames.ora 用在oracle client端,用户配置连接数据库的别名参数,就像系统中的hosts文件一样
listener.ora 用在oracle server端,配置oracle服务端程序的监听办法,比如限制某些ip等参数

 

1、sqlnet.ora

 

sqlnet.ora可以删除,这样在oracle客户端连接数据库的时候,默认采用tnsnames.ora中的配置。该配置文件中默认设置了两个参数

 

SQLNET.AUTHENTICATION_SERVICES= (NTS)

 定义登录数据库的认证方式。NONE表示Oracle数据库身份验证,NTS表示操作系统身份验证,两种方式可以并用。可以设置成

 

 

SQLNET.AUTHENTICATION_SERVICES=(NONE,NTS)

 

先后顺序表明验证的优先方式。

 

2、tnsnames.ora

提供了客户端连接某个数据库的详细信息,主机地址,端口,数据库实例名等。

 

LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.1.17)(PORT = 1521))

#LOCAL
ORCL_LOCAL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.1.17)(PORT = 1521))
    )
    (CONNECT_DATA =
      #(SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

#10.10.1.107
ORCL_107 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.1.107)(PORT = 1521))
    (CONNECT_DATA =
      #(SERVER = DEDICATED)
      (SERVICE_NAME = orcl.10.1.107)
    )
  )

 ADDRESS_LIST   表示该客户机要经由多种协议与一台或多台服务器连接。在该样式文件中就表示该客户机要用TCP/IP协议来和服务器相连。

 

PROTOCOL  指明要连接使用的协议,参数一般是TCP,可以根据服务器情况选择一种配置方式。

HOST 一般是ip地址,也可以是主机名,这个主机名字只要能用ping hostname通就行,一般在客户端系统的host文件上配好主机名和ip地址的映射关系。

PORT 标准是1521,根据服务器端的监听端口而定。

SERVICE_NAME 就是数据库的服务名(Global Database Name),用system用户登陆查看service_name

 

-- 以system账户登录
sqlplus /nolog
conn system/orcl
--命令查看service_name
show parameter service_name

SID    指定要连接的服务器上ORACLE数据库的ORACLE_SID。

 

SERVER=DEDICATED 表示用专用服务器连接ORACLE数据库。

ORCL_LOCAL/ORCL_107是连接描述符,用于在远程登录时指定。比如连接到ORCL_107可以通过sqlplus登录访问

sqlplus dev/dev@orcl_107

 注意:sqlplus远程访问需要先设置TNS_ADMIN环境变量

环境变量名称:TNS_ADMIN
环境变量值:D:\orcl\product\11.2.0\dbhome_1\NETWORK\ADMIN

 具体配置地址以本机安装地址为准。

 

3、listener.ora

tnslsnr进程是监听、并接受远程连接数据库请求的监听进程,listener.ora是tnslsnr进程的配置文件,监听的参数都是从该配置文件中读取。

该文件位于服务端,如果只安装oracle客户端,一般不存在这个文件。如果你只需要在本地连接数据库,不接受远程连接,那么也不需要启动tnslsnr进程,也不需要去维护listener.ora文件。监听配置示例:

 

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = orcl)
      (ORACLE_HOME = d:\orcl\product\11.2.0\dbhome_1)
      (SID_NAME = orcl)
    )
  )
  
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.1.17)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = d:\orcl

 监听服务配置后需要重启数据库服务实例,命令如下:

 

#通过sqlplus登录
sqlplus /nolog
conn dev/dev
#停止数据库实例
shutdown immediate
#启动实例服务
startup 

 

启动监听进程的命令,在命令模式下,执行lsnrctl start命令就启动了监听进程tnslsnr。

 

#查看监听服务状态
lsnrctl status
#开启监听服务
lsnrctl start
#关闭监听服务
lsnrctl stop

 

 

相关标签: oracle