oracle数据库连接配置
本示例以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
推荐阅读
-
PHP5中使用PDO连接数据库的方法
-
Oracle数据库需要打补丁到最低的Patchset/PSU/RU翻译描述
-
python cx_Oracle的基础使用方法(连接和增删改查)
-
Linux安装配置MariaDB数据库全程详解
-
Linux服务器要如何启动oracle数据库(命令启动法)
-
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
-
Django+mysql配置与简单操作数据库实例代码
-
通过创建SQLServer 2005到 Oracle10g 的链接服务器实现异构数据库数据转换方案
-
基于python连接oracle导并出数据文件
-
Navicat怎么连接PostgreSQL数据库?Navicat Premium新建连接PostgreSQL数据库教程