oracle数据库中有2个实例,监听怎么配置
环境 centos 54 + oracle 10g r2
已有实例 xxxio 和监听listener 端口1521
现又新建实例 xxxdb 监听名称listener02 端口 1522实现 listener02 只加载实例 xxxdb
1创建数据库 实例名xxxdb
2netca 创建监听 listener02 端口1522
3配置listenerora 如下
# listenerora Network Configuration File: /u01/app/oracle/product/10g//network/admin/listenerora
# Generated by Oracle configuration tools
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = xxxio)
(ORACLE_HOME = /u01/app/oracle/product/10g/)(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = +ASM)
(ORACLE_HOME = /u01/app/oracle/product/10g/))
(SID_DESC =
(SID_NAME = xxxdb)
(ORACLE_HOME = /u01/app/oracle/product/10g/))
)
SID_LIST_LISTENER02 =
(SID_LIST =
(SID_DESC =
(SID_NAME = xxxdb)
(ORACLE_HOME = /u01/app/oracle/product/10g/))
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))(ADDRESS = (PROTOCOL = TCP)(HOST = 127001)(PORT = 1521)))
)
LISTENER02 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))(ADDRESS = (PROTOCOL = TCP)(HOST = 127001)(PORT = 1522)))
)
说明 : 自己在配置过程中也遇到了好多问题 ,最后通过查看资料和实际测试 证明上述的配置是正确的1首先用netca创建 listener02 后 会在配置文件listenerora中 生成如下的信息 。这说明一个监听创建成功。
可以启动 、关闭 。但是没有加载实例。
LISTENER02 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))(ADDRESS = (PROTOCOL = TCP)(HOST = 127001)(PORT = 1522)))
)
2在配置文件listenerora 中加入如下信息 ,才能将实例xxxdb 加载到监听 listener02中 实现 各尽其职SID_LIST_LISTENER02 = --这的命名是SID_LIST_监听名(SID_LIST =
(SID_DESC =
(SID_NAME = xxxdb)
(ORACLE_HOME = /u01/app/oracle/product/10g/))
)
打开及设置步骤如下:
1、在MyEclipse的菜单栏中选择:Window -> Show View -> TCP/IP Monitor,如果Show View列表中没有TCP/IP Monitor,那么可以在Other中查找下,
2、打开以后,按照如下所示设置下配置:
3、对上图中的一些配置项,做如下补充说明:
Local monitoring port:指定本地代理端口,用于监听服务器端口。
Host name:指定要监听的主机。
Port:指定要监听的服务器端口。
Type:指定要监听的协议类型。
Timeout(in milliseconds):超时设置(毫秒计),0表示不设置。
Start monitor automatically:是否自动开始monitor,勾选表示自动开启。
对于本机开发调试,配置好并且启动(Start)了以后,以后只要进行Web开发,有Client和Server端的TCP/IP请求的开发,都可以利用TCP/IP Monitor来监控客户端和服务端交互的内容。
4、使用TCP/IP Monitor监控
假设设置的TCP/IP Monitor的监听端口是8888,那么可以在浏览器输入监听即可,在TCP/IP Monitor视图中查看相关信息。
监听你系统通信所用的端口,有数据就获取显示就可以了。例如你的服务器ip是16812116,使用的是2000端口号,Socket socket=new Socket("16812116",2000);
DataOutputStream in=new DataOutputStream(socketgetInputStream());
在postgresqlconf中修改
listen_addresses = ''
在pg_hbaconf文件中添加
host all all 0000/0 md5
(md5连接需要密码登录,trust不需要密码)
当我们建立了Oracle数据库后,必须合理地配置监听程序和网络服务名后,客户应用才能访问我们的数据库。所以服务器端必须配置监听程序,而网络服务名在客户端跟服务器端都可以配置。看如下说明:
1。服务器端的监听程序用于接收客户端的连接请求。
在建立了Oracle数据库之后,为了使得客户应用可以访问特定数据库,必须要在监听程序中追加该数据库。一个监听程序可以监听多个Oracle数据库,多个监听程序也可以监听同一个数据库。但是监听程序只能用于同一台服务器上的Oracle数据库。安装了Oracle时,会自动建立默认的监听程序LISTENER一般只需要将需要使用的数据库追加到这个监听程序上就可以了。
监听程序使用的默认端口为1521
保存了监听程序配置之后,必须要重新启动监听程序才能生效。windows中可以在“服务”中重新启动。
例如:假如我在101502745上装了ORACLE服务器,端口是1521,为了让其他客户端应用(不管是本地的还是其他的)可以访问我的名为TESTDB的数据库,首先得在服务器上配置监听器:进入NET MANAGER 新建一个端口,如命名为LISTENER,配置主机名:如101502745和端口1521,配置全局数据库名:如TESTDB,然后保存就好了
2。客户端需要配置网络服务名,应用程序使用网络服务名才能访问Oracle数据库, 一般使用数据库名作为服务名。注意: 网络协议要与监听程序的一致(如TCP/IP)
例如:假如我在101502746上装了ORACLE客户端,进入NET MANAGER,新建一服务命名,如:TEST,然后配置你要连接的DB服务器名字和端口好,如:101502745, 1521,配置服务名,必须跟监听端口的全局数据库名一样:如TESTDB,然后你可以通过输入用户名和密码测试连接成不成功了
3。利用客户端工具测试
在101502746上通过SQLPLUS连接101502745上的DB:TESTDB, 输入用户名密码,HOST STRING输入TEST,看连接是不是成功
0条评论