--==============================
-- 配置非默认端口的动态服务注册
--==============================
一、服务器端的配置
1.配置非默认的listener.ora,即侦听器为list2,且端口号改为,可以使用netca,netmgr或vim等来完成,配置的内容如下:
[oracle@oradb admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/10g/network/admin/listener.ora
# Generated by Oracle configuration tools.
LIST2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oradb.robinson.com)(PORT = 1421))
)
2.配置tnsnames.ora,同样可以使用netca,netmgr或vim等来完成,配置的内容如下:
[oracle@oradb admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/10g/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
list2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = oradb.robinson.com)(PORT = 1421))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl.robinson.com)
)
)
3.启动非默认的侦听器
[oracle@oradb admin]$ lsnrctl start list2
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 15-SEP-2010 19:49:31
Copyright (c) 1991, 2005, Oracle.All rights reserved.
Starting /u01/app/oracle/10g/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /u01/app/oracle/10g/network/admin/listener.ora
Log messages written to /u01/app/oracle/10g/network/log/list2.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oradb.robinson.com)(PORT=1421)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oradb.robinson.com)(PORT=1421)))
STATUS of the LISTENER
------------------------
Aliaslist2
VersionTNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date15-SEP-2010 19:49:31
Uptime0 days 0 hr. 0 min. 0 sec
Trace Leveloff
SecurityON: Local OS Authentication
SNMPOFF
Listener Parameter File/u01/app/oracle/10g/network/admin/listener.ora
Listener Log File/u01/app/oracle/10g/network/log/list2.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oradb.robinson.com)(PORT=1421)))
The listener supports no services
The command completed successfully
4.设定local_listener参数
SQL> show parameter local_listener;
NAMETYPEVALUE
------------------------------------ ----------- ------------------------------
local_listenerstring
SQL> alter system set local_listener = 'list2';
System altered.
5.查看侦听器list2的状态,orcl.robinson.com服务已成功注册
如果没有成功注册,执行这个语句alter system register;
[oracle@oradb admin]$ lsnrctl status list2
----------------------------中间部分省略-----------------------------------
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oradb.robinson.com)(PORT=1421)))
Services Summary...
Service "orcl.robinson.com" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB.robinson.com" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orcl_XPT.robinson.com" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully
二、客户端配置
客户端为OS为Winxp,Oracle客户端软件为Oracle 10g 客户端
可以使用Winxp上的配置工具配置tnsnames.ora,也可以将服务器上的tnsnames.ora配置文件复制到本地OS或将内容更新到本地的tnsnames.ora文件
演示中为从服务器上的tnsnames.ora的内容更新到本地客户端的tnsnames.ora
C:/>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二9月14 20:05:23 2010
Copyright (c) 1982, 2005, Oracle.All rights reserved.
SQL> conn scott/tiger@list2;
Conn