您在这里:首页 > 学员专区 > 技术文章
Oracle视频
Oracle
CUUG课程

配置客户端连接到ASM实例

 


  对于Oracle 网络配置,我们通常通过negmgr或者netca来完成客户端连接到数据库实例。而对于连接到ASM实例,同样可以实现从客户端来进行连接。不过Oracle并未为我们提供工具来完成配置,我们可以通过手动配置监听以及客户端tnsnames来实现。本文对此给出描述与示例。

1、服务器端、客户端的环境   
  #服务器端环境,host信息    
  oracle@bo2dbp:~> cat /etc/hosts |grep vip   
  192.168.7.61   bo2dbp-vip.2gotrade.com    bo2dbp-vip   
  192.168.7.62   bo2dbs-vip.2gotrade.com    bo2dbs-vip  
   
  #操作系统及Oracle版本   
  oracle@bo2dbp:~> cat /etc/issue 
 
 Welcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l). 
  
 oracle@bo2dbp:~> sqlplus -v  
  
 SQL*Plus: Release 10.2.0.3.0 - Production 
    
  #服务器端环境,集群信息    
  oracle@bo2dbp:~> ./crs_stat.sh    
   Resource name                                Target     State                
  --------------                                ------     -----                 
  ora.GOBO4.GOBO4A.inst                         ONLINE     ONLINE on bo2dbp     
  ora.GOBO4.GOBO4B.inst                         ONLINE     ONLINE on bo2dbs     
  ora.GOBO4.db                                  ONLINE     ONLINE on bo2dbp     
  ora.bo2dbp.ASM1.asm                           ONLINE     ONLINE on bo2dbp     
  ora.bo2dbp.LISTENER_BO2DBP.lsnr               ONLINE     ONLINE on bo2dbp     
  ora.bo2dbp.gsd                                ONLINE     ONLINE on bo2dbp     
  ora.bo2dbp.ons                                ONLINE     ONLINE on bo2dbp     
  ora.bo2dbp.vip                                ONLINE     ONLINE on bo2dbp     
  ora.bo2dbs.ASM2.asm                           ONLINE     ONLINE on bo2dbs     
  ora.bo2dbs.LISTENER_BO2DBS.lsnr               ONLINE     ONLINE on bo2dbs     
  ora.bo2dbs.gsd                                ONLINE     ONLINE on bo2dbs     
  ora.bo2dbs.ons                                ONLINE     ONLINE on bo2dbs     
  ora.bo2dbs.vip                                ONLINE     ONLINE on bo2dbs     
   
 #客户端信息    
 C:\Users\robinson.cheng>systeminfo 
  
 Host Name:                 PC39 
 OS Name:                   Microsoft Windows 7 Professional 
 OS Version:                6.1.7600 N/A Build 7600 
 OS Manufacturer:           Microsoft Corporation 
 System Type:               x64-based PC 
  
 C:\Users\robinson.cheng>sqlplus -v 
  
 SQL*Plus: Release 10.2.0.3.0 - Production 
 
2、监听器的状态    
 oracle@bo2dbs:~> lsnrctl status LISTENER_BO2DBS | grep ASM 
 Service "+ASM" has 1 instance(s).     #可以看到ASM实例处于BLOCKED状态  
   Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service... 
 Service "+ASM_XPT" has 1 instance(s). 
   Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service... 
 
3、分配ASM SID 
  #使用下面的ASM配置信息来修改监听器配置文件  
 Item                                          Node1            Node2 
 ------                                        --------         ----------- 
 hostname                                      bo2dbp           bo2dbs  
 Oracle SID                                    GOBO4A           GOBO4B 
 ASM SID                                       +ASM1            +ASM2 
 ASM Global DB Name (service name)             +ASM             +ASM 
 
4、修改监听配置文件listener.ora 
 #对于监听器的配置,仅仅是增加子项SID_DESC  
 #下面是增加之后所看到的内容  
 oracle@bo2dbp:~> more $ORACLE_HOME/network/admin/listener.ora 
 # listener.ora.bo2dbp Network Configuration File: /u01/oracle/db/network/admin/listener.ora.bo2dbp  
 # Generated by Oracle configuration tools.  
 LISTENER_BO2DBP = 
   (DESCRIPTION_LIST = 
     (DESCRIPTION = 
       (ADDRESS = (PROTOCOL = TCP)(HOST = bo2dbp-vip.2gotrade.com)(PORT = 1521)(IP = FIRST)) 
       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.51)(PORT = 1521)(IP = FIRST)) 
     ) 
   ) 
  
 SID_LIST_LISTENER_BO2DBP = 
   (SID_LIST = 
     (SID_DESC = 
       (SID_NAME = PLSExtProc) 
       (ORACLE_HOME = /u01/oracle/db) 
       (PROGRAM = extproc) 
     (SID_DESC =          #这整个SID_DESC项即为ASM1实例新增的条目  
       (SID_NAME = +ASM1) 
       (GLOBAL_DBNAME  = +ASM) 
       (ORACLE_HOME = /u01/oracle/db) 
     ) 
   ) 
   
 oracle@bo2dbs:~> more $ORACLE_HOME/network/admin/listener.ora 
 # listener.ora.bo2dbs Network Configuration File: /u01/oracle/db/network/admin/listener.ora.bo2dbs  
 # Generated by Oracle configuration tools.  
 LISTENER_BO2DBS = 
   (DESCRIPTION_LIST = 
     (DESCRIPTION = 
       (ADDRESS = (PROTOCOL = TCP)(HOST = bo2dbs-vip.2gotrade.com)(PORT = 1521)(IP = FIRST)) 
       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.52)(PORT = 1521)(IP = FIRST)) 
     ) 
   ) 
  
 SID_LIST_LISTENER_BO2DBS = 
   (SID_LIST = 
     (SID_DESC = 
       (SID_NAME = PLSExtProc) 
       (ORACLE_HOME = /u01/oracle/db) 
       (PROGRAM = extproc) 
     ) 
     (SID_DESC =                   #这整个SID_DESC项即为ASM2实例新增的条目  
       (SID_NAME = +ASM2) 
       (GLOBAL_DBNAME  = +ASM) 
       (ORACLE_HOME = /u01/oracle/db) 
     ) 
   ) 
 
5、重启监听器 
 oracle@bo2dbp:~> srvctl stop listener -n bo2dbp 
 oracle@bo2dbp:~> srvctl start listener -n bo2dbp 
 oracle@bo2dbp:~> srvctl stop listener -n bo2dbs 
 oracle@bo2dbp:~> srvctl start listener -n bo2dbs 
   
  #查看监听器的状态   
 oracle@bo2dbp:~> lsnrctl status LISTENER_BO2DBP | grep ASM 
 Service "+ASM" has 2 instance(s).  #可以看到多处了一个为UNKNOWN状态,表明使用了静态方式注册  
   Instance "+ASM1", status UNKNOWN, has 1 handler(s) for this service... 
   Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service... 
 Service "+ASM_XPT" has 1 instance(s). 
   Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service... 
  
 oracle@bo2dbs:~> lsnrctl status LISTENER_BO2DBS | grep ASM 
 Service "+ASM" has 2 instance(s).  #示例2上监听器状态也多出了一个为UNKNOWN状态的+ASM2实例  
   Instance "+ASM2", status UNKNOWN, has 1 handler(s) for this service... 
   Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service... 
 Service "+ASM_XPT" has 1 instance(s). 
   Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...  
    
 #Author : Robinson  
    
6、配置客户端tnsnames 
 #Windons 客户端tnsnames.ora添加如下配置条目  
 GOBO4_ASM1 = 
   (DESCRIPTION = 
     (ADDRESS_LIST = 
       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.61)(PORT = 1521)) 
     ) 
     (CONNECT_DATA = 
       (SERVICE_NAME = +ASM) 
     ) 
   ) 
  
 GOBO4_ASM2 = 
   (DESCRIPTION = 
     (ADDRESS_LIST = 
       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.62)(PORT = 1521)) 
     ) 
     (CONNECT_DATA = 
       (SERVICE_NAME = +ASM) 
     ) 
   )     
 
7、测试连接到ASM实例    
 
 C:\Users\robinson.cheng>sqlplus -S sys/oracle@GOBO4_ASM1 as sysdba @inst 
  
 INSTANCE_NAME    HOST_NAME                      STATUS 
 ---------------- ------------------------------ ------------ 
 +ASM1            bo2dbp                         STARTED 
  
  
 C:\Users\robinson.cheng>sqlplus -S sys/oracle@GOBO4_ASM2 as sysdba @inst 
  
 INSTANCE_NAME    HOST_NAME                      STATUS 
 ---------------- ------------------------------ ------------ 
 +ASM2            bo2dbs                         STARTED

 


(以上内容摘于网络,如有侵权,请告之,将第一时间删除)

相关文章 [上一篇] 广东运通四方软件工程师(ORACLE DBA)(3月19日)
010-88589926(88587026)
CUUG热门培训课程
Oracle DBA就业培训
CUUG名师
网络课程
技术沙龙
最新动态

总机:(010)-88589926,88589826,88587026 QQ讨论群:243729577 182441349 邮箱:cuug_bj@cuug.com
通信地址:北京市海淀区紫竹院路98号北京化工大学科技园609室(CUUG)邮政编码:100089 
中国UNIX用户协会 Copyright 2010  ALL Rights Reserved 北京神脑资讯技术有限公司
京ICP备11008061号  京公网安备110108006275号