用于 Oracle 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

设置 Oracle 数据库权限


注意 – 注意 –

请勿对 Oracle 物理备用数据库执行本节中的步骤。


执行本节中的过程以设置 Oracle 主数据库或 Oracle 逻辑备用数据库的数据库权限。

Procedure如何设置 Oracle 数据库权限

  1. 启用对用于故障监视功能的用户和密码的访问。

    • 要使用 Oracle 验证方法,授予此用户访问 v_$sysstat 视图和 v_$archive_dest 视图的权限。


      # sqlplus  "/ as sysdba"
      
      sql>	create user user identified by passwd;
      sql>	alter user user default tablespace system quota 1m on system;
      sql>	grant select on v_$sysstat to user;
      sql>	grant select on v_$archive_dest to user;
      sql>	grant select on v_$database to user;
      sql>	grant create session to user;
      sql>	grant create table to user;
      
      sql>	exit;
      #

      您可以对所有支持的 Oracle 发行版本使用此方法。

    • 要使用 Solaris 验证方法,执行以下步骤:

      1. 确认 remote_os_authent 参数已设置为 TRUE


        # sqlplus  "/ as sysdba"
        sql> show parameter remote_os_authent
        
        NAME                       TYPE        VALUE
        ---------------------- ----------- ---------------
        remote_os_authent         boolean     TRUE
      2. 确定 os_authent_prefix 参数的设置。


        # sql>  show parameter os_authent_prefix
        
        NAME                       TYPE        VALUE
        ---------------------- ----------- ---------------
        os_authent_prefix         string      ops$
      3. 授予数据库使用 Solaris 验证的权限。


        sql> create user prefix user identified by externally default 
        tablespace system quota 1m on system;
        sql> grant connect, resource to prefix user;
        sql> grant select on v_$sysstat to prefix user;
        sql> grant select on v_$archive_dest to prefix user;
        sql> grant create session to prefix user;
        sql> grant create table to prefix user;
        sql> exit;
        
        #

        这些命令中可替换的项目如下:

        • prefix os_authent_prefix 参数的设置。此参数的默认设置为 ops$

        • user 是您对其启用 Solaris 验证的用户。确保此用户拥有 $ORACLE_HOME 目录下的文件。


        注 –

        不要在 prefixuser 之间键入空格。


  2. 为 Sun Cluster 软件配置 NET8。

    listener.ora 文件必须可从群集中的所有节点或区域进行访问。请将这些文件放在可运行 Oracle 资源的每个节点或区域的群集文件系统下或本地文件系统中。


    注 –

    如果将 listener.ora 文件放在 /var/opt/oracle 目录或 $ORACLE_HOME/network/admin 目录以外的位置,必须在用户环境文件中指定 TNS_ADMIN 变量或同等 Oracle 变量。有关 Oracle 变量的信息,请参见 Oracle 文档。您还必须运行 clresource(1CL) 命令以设置资源扩展参数 User_env,该参数指定用户环境文件。有关格式的详细信息,请参见SUNW.oracle_listener 扩展属性SUNW.oracle_server 扩展属性


    Sun Cluster HA for Oracle 对侦听器名称未加任何限制—该名称可为任何有效的 Oracle 侦听器名称。

    以下代码样例识别 listener.ora 中更新的各行。


    LISTENER =
    	(ADDRESS_LIST =
    			(ADDRESS =
    				(PROTOCOL = TCP) 
    					(HOST = logical-hostname) <- use logical hostname
    				(PORT = 1527)
    			)
    	)
    .
    .
    SID_LIST_LISTENER =
    	.
    			.
    						(SID_NAME = SID) <- Database name, 
    default is ORCL	

    以下代码样例识别 tnsnames.ora 中在客户机上更新的各行。


    service_name =
    	.
    			.
    						(ADDRESS = 
    								(PROTOCOL = TCP)
    								(HOST = logicalhostname)	<- logical hostname
    								(PORT = 1527) <- must match port in LISTENER.ORA
    						)
    				)
    				(CONNECT_DATA =
    						(SID = <SID>)) <- database name, default is ORCL

    以下示例显示如何更新以下 Oracle 实例的 listener.oratnsnames.ora 文件。

    实例 

    逻辑主机 

    侦听器 

    ora8

    hadbms3

    LISTENER-ora8

    ora9

    hadbms4

    LISTENER-ora9

    对应的 listener.ora 条目为以下条目。


    LISTENER-ora9 =
    	(ADDRESS_LIST =
    			(ADDRESS =
    				(PROTOCOL = TCP)
    				(HOST = hadbms4)
    				(PORT = 1530)
    			)
    		)
    SID_LIST_LISTENER-ora9 =
    	(SID_LIST =
    			(SID_DESC =
    				(SID_NAME = ora9)
    			)
    		)
    LISTENER-ora8 =
      (ADDRESS_LIST =
        (ADDRESS= (PROTOCOL=TCP) (HOST=hadbms3)(PORT=1806))
      )
    SID_LIST_LISTENER-ora8 =
      (SID_LIST =
         (SID_DESC =
    			(SID_NAME = ora8)
    		 )	
      )

    对应的 tnsnames.ora 条目为以下条目。


    ora8 =
    (DESCRIPTION =
       (ADDRESS_LIST = 
    			(ADDRESS = (PROTOCOL = TCP) 
    			(HOST = hadbms3) 
    			(PORT = 1806))
       	)    
    	(CONNECT_DATA = (SID = ora8))
    )
    ora9 =
    (DESCRIPTION =
      (ADDRESS_LIST =
            (ADDRESS = 
    				(PROTOCOL = TCP) 
    				(HOST = hadbms4) 
    				(PORT = 1530))
      )
      	(CONNECT_DATA = (SID = ora9))
    )
  3. 检验是否已在所有节点上安装和运行 Sun Cluster 软件。


    # cluster status +
    
接下来的操作

转至安装 Sun Cluster HA for Oracle 软件包以安装 Sun Cluster HA for Oracle 软件包。