Welcome 微信登录

首页 / 数据库 / MySQL / Oracle网络管理

一、配置文件说明网络相关的3个配置文件,分别为listener.ora、tnsname.ora、sqlnet.ora,windows目录在Oracle_HOME/dbhome_1/NETWORK/ADMIN文件夹下其中listener.ora是服务器端的配置,如果数据库要让远程客户端访问就必须配置该文件;tnsname.ora是客户端的配置,如果客户端要连接某服务器就必须配置该配置文件;sqlnet.ora决定客户端如何查找连接字符串。sqlnet.ora的配置如下
SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME
tnsname.ora目录中有如下配置
lala =(DESCRIPTION=(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.7.31)(PORT = 1522)))(CONNECT_DATA=(SERVER = SHARED)(SERVICE_NAME = orcl)))
如果通过sqlplus连接数据库
C: >sqlplus sys/oracle@lala as sysdba
首先该操作数据库首先会查找tnsname.ora配置文件中是否有lala的配置记录如果tnsname.ora没有改配置记录,那么就会把lala当做是主机名。如果sqlnet.ora的配置如下
SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES)
那么sqlplus就只会查找tname.ora的配置。二、服务端(listener.ora)配置文件动态注册:配置如下
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.31)(PORT = 1521))))
如果需要配置多个监听器只需要增加类似配置文件
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.31)(PORT = 1521))))LISTENER1 =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.31)(PORT = 1522))))
动态监听,数据库必须指定local_listener参数的值,登录数据库修改参数
SQL> alter system set local_listener="(DESCRIPTION=(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.7.31)(PORT = 1522)))"
说明数据库会动态注册到LISTENER1监听器,然后注册监听
SQL> alter system register;
静态注册:配置如下
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.31)(PORT = 1521)))) SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME= orcl)(ORACLE_HOME=C:apporacleproduct11.2.0dbhome_1) (GLOBAL_DBNAME=orcl) 
查看监听状态是会不管orcl实例有没有启动会有orcl的记录,但是都是UNKNOWN状态。三、客户端(tnsname.ora)配置文件如果服务器配置有共享连接,那么客户端可以使用共享方式连接,也可以设置专用连接。客户端的连接默认按照服务器端的连接方式。配置文件如下
#共享连接方式orcl_shared =(DESCRIPTION=(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.7.31)(PORT = 1521)))(CONNECT_DATA=(SERVER = SHARED)(SERVICE_NAME = orcl)))#专用连接方式orcl_dedicated =(DESCRIPTION=(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.7.31)(PORT = 1521)))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME = orcl)))
 现在可以测试客户端连接的状态,首先查看服务器监听器的状态
C:Usersdkzx>lsnrctl service aa LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 13-2月 -2014 20:46:10 Copyright (c) 1991, 2010, Oracle. All rights reserved. 正在连接到(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.7.31)(PORT=1521)))服务摘要..服务 "orcl" 包含 1 个实例。实例 "orcl", 状态 READY, 包含此服务的 7 个处理程序...处理程序:"D005" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 7480>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60195))"D004" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 18340>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60194))"D003" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 12164>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60193))"D002" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 17708>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60192))"D001" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 14068>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60191))"D000" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 9144>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60190))"DEDICATED" 已建立:0 已拒绝:0 状态:readyLOCAL SERVER命令执行成功
如图,共享连接方式(D00x)和专用连接方式(DEDICATED)目前都没有建立连接,现在用共享连接方式连接数据库。
C: >sqlplus sys/oracle@orcl_shared as sysdba
再次查看服务器监听状态,发现已经建立一条共享连接方式(D000),专用连接方式(DEDICATED)没有建立连接。
C:Usersdkzx>lsnrctl service aa LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 13-2月 -2014 20:50:06 Copyright (c) 1991, 2010, Oracle. All rights reserved. 正在连接到(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.7.31)(PORT=1521)))服务摘要..服务 "orcl" 包含1 个实例。实例 "orcl", 状态 READY, 包含此服务的 7 个处理程序...处理程序:"D005" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 7480>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60195))"D004" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 18340>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60194))"D003" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 12164>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60193))"D002" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 17708>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60192))"D001" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 14068>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60191))"D000" 已建立:1 已被拒绝:0 当前: 1 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 9144>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60190))"DEDICATED" 已建立:0 已拒绝:0 状态:readyLOCAL SERVER命令执行成功
下面使用专用连接登陆数据库
C: >sqlplus sys/oracle@orcl_dedicated as sysdba
查看服务端监听状态,发现专用连接方式(DEDICATED)也有一个连接
C:Usersdkzx>lsnrctl service aa LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 13-2月 -2014 20:53:15 Copyright (c) 1991, 2010, Oracle. All rights reserved. 正在连接到(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.7.31)(PORT=1521)))服务摘要..服务 "orcl" 包含 1 个实例。实例 "orcl", 状态 READY, 包含此服务的 7 个处理程序...处理程序:"D005" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 7480>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60195))"D004" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 18340>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60194))"D003" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 12164>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60193))"D002" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 17708>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60192))"D001" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 14068>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60191))"D000" 已建立:1 已被拒绝:0 当前: 1 最大: 1022 状态: readyDISPATCHER <machine: DKZX-PC, pid: 9144>(ADDRESS=(PROTOCOL=tcp)(HOST=dkzx-PC)(PORT=60190))"DEDICATED" 已建立:1 已拒绝:0 状态:readyLOCAL SERVER命令执行成功
更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle数据库文件系统迁移到ASM磁盘裸设备创建ASM磁盘相关资讯      Oracle管理  Oracle网络管理 
  • Oracle 管理之 Linux 网络基础  (02/16/2013 18:37:35)
本文评论 查看全部评论 (0)
表情: 姓名: 字数

版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图