有关客户端关闭监听器和Hostname远程连接的问题,谢谢各位

develophome 2008-04-26 06:07:03
小弟最近在看Oracle网络方面的配置,存在下面两个疑问,请大家指点指点,谢谢!
一、在服务器端设置了监听器listener1的密码为abc,
配置信息如下:
PASSWORDS_LISTENER= (A215BB730881B34F)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.123.45)(PORT = 1521))
)
)
请问在客户端应怎样使用lsnrctl关闭服务器监听器?


二、在客户端的sqlnet.ora里配置了NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME, EZCONNECT),
在服务器192.168.123.45的listener.ora里配置了
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = reps_db)
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.1.0\db_1)
(PROGRAM = extproc)
)
)
为什么不能通过connect system/Xueshanoracle@192.168.123.45来连接reps_db数据库实例?
...全文
223 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
oracle20080619 2008-06-26
  • 打赏
  • 举报
回复
有关客户端关闭服务器监听器实验如下:
1、客户端 tnsnames.ora
# TNSNAMES.ORA Network Configuration File: e:\oracle\ora92\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.51.16)(PORT = 1521))
)DATA =
(SERVICE_NAME = pki)
)
)
2、客户端 lsnrctl stop test
C:\Documents and Settings\Administrator>lsnrctl stop test

LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 26-6月 -2008 17:27
:32

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.51.16)(PORT=1521))(
CONNECT_DATA=(SERVICE_NAME=pki)))
命令执行成功

3、服务器端设置密码
LSNRCTL> change_password
Old password:
New password:
Reenter new password:
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
LISTENER的口令已更改
命令执行成功

LSNRCTL> save_config
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
保存的LISTENER配置参数。
监听器参数文件 C:\oracle\ora92\network\admin\listener.ora
旧的参数文件C:\oracle\ora92\network\admin\listener.bak
命令执行成功
4、服务器端启动监听
LSNRCTL> start
启动tnslsnr:请稍候...

TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
系统参数文件为C:\oracle\ora92\network\admin\listener.ora
写入C:\oracle\ora92\network\log\listener.log的日志信息
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=bjca)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Produc
tion
启动日期 26-6月 -2008 17:28:33
正常运行时间 0 天 0 小时 0 分 2 秒
跟踪级别 off
安全性 OFF
SNMP OFF
监听器参数文件 C:\oracle\ora92\network\admin\listener.ora
监听器日志文件 C:\oracle\ora92\network\log\listener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xxxx)(PORT=1521)))
服务摘要..
服务 "192.168.51.16" 包含 1 个例程。
例程 "pki", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
5、客户端停止监听
C:\Documents and Settings\Administrator>lsnrctl stop test

LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 26-6月 -2008 17:40
:41

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.51.16)(PORT=1521))(
CONNECT_DATA=(SERVICE_NAME=pki)))
TNS-01169: 监听器尚未识别口令
UltraBejing 2008-04-30
  • 打赏
  • 举报
回复
我也想知道,正在找這方面的資料~~~~~
develophome 2008-04-28
  • 打赏
  • 举报
回复
我将服务器端的GLOBAL_DBNAME改为192.168.123.45,客户端也配置了HOSTNAME,
但是在客户端connect system/Xueshanoracle@192.168.123.45时报错
ORA-28547:连接服务器失败,可能是Net8管理错误。
vc555 2008-04-27
  • 打赏
  • 举报
回复
监听器就是用来监听客户端连接的。怎么能从客户端去关闭它呢?
S_M_E 2008-04-27
  • 打赏
  • 举报
回复


host name方式只支持tcp/ip协议的"小局域网 "
修改listener.ora中的如下信息
(SID_DESC =
(GLOBAL_DBNAME = ur_hostname) --你的机器名
(ORACLE_HOME = E:\oracle\ora92) --oracle home
(SID_NAME = orcl) --sid name
)
然后在客户端的sqlnet.ora中,确保有NAMES.DIRECTORY_PATH= (HOSTNAME) 你就可以利用数据库服务器的名称访问数据库了.
这时connect system/Xueshanoracle@192.168.123.45是可以的。但在internet上就没用。可以在客户端或本地建立连接字串。

注意NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME, EZCONNECT),中参数的顺序,tnsnames放在前面,它是用来定义连接字串的,然后才是hostname本地解析。


develophome 2008-04-27
  • 打赏
  • 举报
回复
sheniun,如果还是得定义服务名来简化连接字符串,那么按HOSTNAME文件来解析有什么意义?
lsnrctl start我试过,有报错,因为没指定密码。请你给出一个具体的做法,好吗?

ruihuahan 2008-04-26
  • 打赏
  • 举报
回复
请问在客户端应怎样使用lsnrctl关闭服务器监听器?
=========================================
windows 平台可以用 WMI 脚本关闭侦听服务。
S_M_E 2008-04-26
  • 打赏
  • 举报
回复
lsnrctl

start 启动指定的监听器

stop 关闭指定的监听器

status 查看监听信息。

services

=====
NAMES.DIRECTORY_PATH 指定当解析客户端连接标识符时命名方法 naming metthods 采用的优先顺序 从左至右递减,指明的是解析方式,而不是说连接时就不需使用 合适的连接标识符。只指定IP,还要端口等其他连接信息。可以定义 服务名 来简化连接主机字串。





本章主要讲解oracle客户端连接oracle效劳器,主要有以下内容: 1.配置本地net效劳名配置 2.用sqlplus连接; 3.用toad连接; 一、配置本地net效劳名 首先说明我们的效劳器的IP为60.220.246.53,oracle的SID为czdb。 翻开配置本地net效劳名向导如下列图: 点击进入Net Configuration Assistant,出现如下列图所示: Oracle客户端连接Oracle服务器全文共9页,当前为第1页。 Oracle客户端连接Oracle服务器全文共9页,当前为第1页。 选择默认的添加,然后下一步,如下列图: Oracle客户端连接Oracle服务器全文共9页,当前为第2页。输入效劳名(效劳名其实就是oracle的SID)czdb,然后点击下一步: Oracle客户端连接Oracle服务器全文共9页,当前为第2页。 选择默认TCP,然后选择下一步: Oracle客户端连接Oracle服务器全文共9页,当前为第3页。输入主机名〔即oracle效劳器主机IP〕60.220.246.53,然后进入下一步: Oracle客户端连接Oracle服务器全文共9页,当前为第3页。 然后选择 ,进入下一步: 里面的详细信息说的是密码不对,说明是连接到了效劳器,我们只要改一下用户名和密码就可以了,然后点击更改登录: OK,测试成功; 另说明:查询本用户下的所有表的信息叫数据字典: user_tables;DBA_users; 两类数据字典表 dba一般是system用户 查表的信息从数据字典里查如:select table_name from user_tables; dual是名义表,不存任何东西. Oracle客户端连接Oracle服务 全文共9页,当前为第4页。 Oracle客户端连接Oracle服务 全文共9页,当前为第4页。 Oracle远程连接数据库总结 Oracle代码 : orCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = .xx.xx)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) orCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xx.xx)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) 主要的参数为HOST、PORT、SERVICE_NAME 可能的问题: * 连接超时:很大可能性是windows自带的防火墙开着,屏蔽了1521端口 Oracle远程连接数据库总结 注:本文讲述了oracle数据库实例连接的配置过程,三个重要的配置文件位于C:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN目录下 1. sqlplus sys/oracle@orcl sqlnet.ora 文件格式NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)。客户端就会首先在tnsnames.ora文件中找orcl的记录。如果没有相应的记录那么尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例。 Oracle客户端连接Oracle服务器全文共9页,当前为第5页。这个文件类似于unix 的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES时,才会尝试使用这个文件。   #你所要连接的时候输入得TNSNAME,如果listner启动失败尝试改IP地址   ora10gcsdl1 = Oracle客户端连接Oracle服务器全文共9页,当前为第5页。 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ora10gcsdl1) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IBM-66336DAFE8F .ibm )(PORT = 1521)) (CONNECT_DATA = (SERVE

17,380

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧