Oracle配置非默认端口的动态服务注册


--==============================

-- 配置非默认端口的动态服务注册

--==============================

 

Oracle客户端连接到服务器,除了使用静态注册方式之外,9i后续的版本支持动态注册服务,同时可以将服务注册到非默认的端口。将服务注册到非默认端口可以提高数据库系统的安全性。

关于Oracle从客户端连接到数据库的详细配置方法可以参考:配置Oracle客户端连接到数据库

 

一、服务器端的配置

1.配置非默认的listener.ora,即侦听器为list2,且端口号改为,可以使用netcanetmgrvim等来完成,配置的内容如下:

[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,同样可以使用netcanetmgrvim等来完成,配置的内容如下:

[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

 

二、客户端配置

客户端为OSWinxpOracle客户端软件为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 星期二914 20:05:23 2010

 

Copyright (c) 1982, 2005, Oracle.All rights reserved.

 

SQL> conn scott/tiger@list2;

Connected.

 

将客户端的网络服务名更新为abc,如下

abc =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = oradb.robinson.com)(PORT = 1421))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl.robinson.com)

)

)

尝试再次连接,可以成功连接,由此可以看出跟网络服务名无关,重要的连接描述信息

SQL> conn system/RedHat@abc

Connected.

  • 1
  • 2
  • 下一页

相关内容

    暂无相关文章