下面的步骤详细的说明了在Oracle 11gR2 RAC Database环境下使用emca配置集群dbconsole遇到的部分问题及解决的方法。

1.数据库环境。
 
Oracle Exadata Machine x4-2  
Oracle RAC Database 11.2.0.4.6 for Linux x86_64bit  
[root@dm01db01 ~]# uname -r  
2.6.39-400.126.1.el5uek  

2.使用EMCA创建EM。
 
[root@dm01db01 ~]# su - oracle  
[oracle@dm01db01 ~]$ emca -config dbcontrol db  -repos create -cluster  
......  
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor  
......  
收到ORA-12514报错。  

emca工具输出的日志被存放在$GRID_BASE/cfgtoollogs/emca目录下。  

查看/u01/app/grid/cfgtoollogs/emca/emca_2014_06_18_10_26_50.log日志:  
......  
Jun 18, 2014 10:27:17 AM oracle.sysman.emcp.util.GeneralUtil initSQLEngineRemotely  
CONFIG: SQLEngine connecting with Service Name: +ASM, oracleHome: /u01/app/11.2.0.4/grid, and user: ASMSNMP scan name: dm01-scan scan port: 1521  
Jun 18, 2014 10:27:17 AM oracle.sysman.emcp.util.GeneralUtil initSQLEngineRemotely  
WARNING: Error during db connection : ORA-12514: TNS:listener does not currently know of service requested in connect descriptor  

Jun 18, 2014 10:27:17 AM oracle.sysman.emcp.util.GeneralUtil initSQLEngineRemotely  
CONFIG: Waiting for 5 second before reconnection  
Jun 18, 2014 10:27:22 AM oracle.sysman.emcp.util.GeneralUtil initSQLEngineRemotely  
CONFIG: SQLEngine connecting with Service Name: +ASM, oracleHome: /u01/app/11.2.0.4/grid, and user: ASMSNMP host: dm01db02 port: 1521  
Jun 18, 2014 10:27:22 AM oracle.sysman.emcp.util.GeneralUtil initSQLEngineRemotely  
CONFIG: SQLEngine created successfully and connected  
Jun 18, 2014 10:27:22 AM oracle.sysman.emcp.ParamsManager setParam  
CONFIG: Setting param: CONFIRMATION ANSWER value:  
Jun 18, 2014 10:27:28 AM oracle.sysman.emcp.ParamsManager setParam  
CONFIG: Setting param: CONFIRMATION ANSWER value: no  

    从最后面的日志可以看出,报ORA-12514错误的原因是不能通过SCAN LISTENER连接到ASM实例,说明ASM实例没有向SCAN LISTENER动态注册。  

3.ASM实例向SCAN LISTENER动态注册。
 
[root@dm01db01 ~]# su - grid  
[grid@dm01db01 ~]$ sqlplus / as sysasm  

SQL*Plus: Release 11.2.0.4.0 Production on Wed Jun 18 23:18:09 2014  

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


Connected to:  
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production  
With the Real Application Clusters and Automatic Storage Management options  

SQL> show parameter spfile  

NAME                                 TYPE  
------------------------------------ ---------------------------------  
VALUE  
------------------------------  
spfile                               string  
+DBFS_DG/cluster-clu1/asmparam  
eterfile/registry.253.84996746  
5  
SQL> show parameter remote  

NAME                                 TYPE  
------------------------------------ ---------------------------------  
VALUE  
------------------------------  
remote_listener                      string  

remote_login_passwordfile            string  
EXCLUSIVE  
remote_os_authent                    boolean  
FALSE  
remote_os_roles                      boolean  
FALSE  
SQL> alter system set remote_listener='dm01-scan:1521';  

System altered.  

SQL> alter system register;  

System altered.  
 
SQL> show parameter remote_listener  

NAME                                  TYPE  
------------------------------------ ---------------------------------  
VALUE  
------------------------------  
remote_listener                      string  
dm01-scan:1521  
SQL> exit  
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production  
With the Real Application Clusters and Automatic Storage Management options  
[grid@dm01db01 ~]$ lsnrctl status listener_scan1  

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 18-JUN-2014 23:19:09  

Copyright (c) 1991, 2013, Oracle.  All rights reserved.  

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))  
STATUS of the LISTENER  
------------------------  
Alias                     LISTENER_SCAN1  
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production  
Start Date                17-JUN-2014 12:25:14  
Uptime                    1 days 10 hr. 53 min. 55 sec  
Trace Level               off  
Security                  ON: Local OS Authentication  
SNMP                      OFF  
Listener Parameter File   /u01/app/11.2.0.4/grid/network/admin/listener.ora  
Listener Log File         /u01/app/11.2.0.4/grid/log/diag/tnslsnr/dm01db01/listener_scan1/alert/log.xml  
Listening Endpoints Summary...  
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))  
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.3.16)(PORT=1521)))  
Services Summary...  
Service "+ASM" has 2 instance(s).  
  Instance "+ASM1", status READY, has 1 handler(s) for this service...  
  Instance "+ASM2", status READY, has 1 handler(s) for this service...  
Service "tequdb" has 2 instance(s).  
  Instance "tequdb1", status READY, has 1 handler(s) for this service...  
  Instance "tequdb2", status READY, has 1 handler(s) for this service...  
The command completed successfully  

4.再次使用EMCA创建EM。
 
[root@dm01db01 ~]# su - oracle  
[oracle@dm01db01 ~]$ emca -config dbcontrol db  -repos create -cluster  

STARTED EMCA at Jun 18, 2014 11:19:44 PM  
EM Configuration Assistant, Version 11.2.0.3.0 Production  
Copyright (c) 2003, 2011, Oracle.  All rights reserved.  

Enter the following information:  
Database unique name: tequdb  
Service name: tequdb  
Listener port number: 1521  
Listener ORACLE_HOME [ /u01/app/11.2.0.4/grid ]:   
Password for SYS user:    
Password for DBSNMP user:    
Password for SYSMAN user:    
Cluster name: cluster-clu1  
Email address for notifications (optional):   
Outgoing Mail (SMTP) server for notifications (optional):   
ASM ORACLE_HOME [ /u01/app/11.2.0.4/grid ]:   
ASM port [ 1521 ]:   
ASM username [ ASMSNMP ]:   
ASM user password:    
-----------------------------------------------------------------  

You have specified the following settings  

Database ORACLE_HOME ................ /u01/app/oracle/product/11.2.0.4/dbhome_1  

Database instance hostname ................ Listener ORACLE_HOME ................ /u01/app/11.2.0.4/grid  
Listener port number ................ 1521  
Cluster name ................ cluster-clu1  
Database unique name ................ tequdb  
Email address for notifications ...............   
Outgoing Mail (SMTP) server for notifications ...............   
ASM ORACLE_HOME ................ /u01/app/11.2.0.4/grid  
ASM port ................ 1521  
ASM user role ................ SYSDBA  
ASM username ................ ASMSNMP  

-----------------------------------------------------------------  
Do you wish to continue? [yes(Y)/no(N)]: y  
Jun 18, 2014 11:20:26 PM oracle.sysman.emcp.EMConfig perform  
INFO: This operation is being logged at /u01/app/oracle/cfgtoollogs/emca/tequdb/emca_2014_06_18_23_19_44.log.  
Jun 18, 2014 11:20:40 PM oracle.sysman.emcp.EMReposConfig createRepository  
INFO: Creating the EM repository (this may take a while) ...  
Jun 18, 2014 11:20:40 PM oracle.sysman.emcp.EMReposConfig createRepository  
WARNING: ORA-28003: password verification for the specified password failed  
ORA-20006: Password too simple  

Jun 18, 2014 11:20:40 PM oracle.sysman.emcp.EMReposConfig invoke  
SEVERE: Error creating the repository  
Jun 18, 2014 11:20:40 PM oracle.sysman.emcp.EMReposConfig invoke  
INFO: Refer to the log file at /u01/app/oracle/cfgtoollogs/emca/tequdb/emca_repos_create_<date>.log for more details.  
Jun 18, 2014 11:20:40 PM oracle.sysman.emcp.EMConfig perform  
SEVERE: Error creating the repository  
Refer to the log file at /u01/app/oracle/cfgtoollogs/emca/tequdb/emca_2014_06_18_23_19_44.log for more details.  
Could not complete the configuration. Refer to the log file at /u01/app/oracle/cfgtoollogs/emca/tequdb/emca_2014_06_18_23_19_44.log for more details.  

这个告警参考如下MOS文章:  

EMCA: RepManager Fails With Password Verification Error ORA-28003 (文档 ID 779098.1)  
修改时间:2013-10-23  Oracle 11gR2 RAC Database使用emca配置集群dbconsole_Oracle类型:PROBLEM  

In this Document


Symptoms

Cause

Solution

References


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.

APPLIES TO:

Enterprise Manager Base Platform - Version 10.2.0.1 to 10.2.0.5 [Release 10.2]  
Information in this document applies to any platform.  
Checked for relevance on 22-Oct-2013  

SYMPTOMS

While using EMCA to create DB Console repository, this fails with:

CONFIG: ORA-28003: password verification for the specified password failed  
ORA-20003: Password should contain at least one \

CAUSE

This is treated in internal BUG 4195090.

SOLUTION

a) Disable the Password verification
b) Create the Repository
c) Enable the password verification.

Note: For disabling the password verification function, Note 114930.1 can be used. For example:

SQL> alter profile default limit password_verify_function null;



5.禁用密码验证函数。
 
[root@dm01db01 ~]# su - oracle  
[oracle@dm01db01 ~]$ sql  

SQL*Plus: Release 11.2.0.4.0 Production on Wed Jun 18 23:29:28 2014  

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


Connected to:  
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production  
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,  
Data Mining and Real Application Testing options  

SQL> set linesize 200  
SQL> set pagesize 200  
SQL> select * from dba_profiles where profile='DEFAULT';  

PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT  
------------------------------ -------------------------------- -------- ----------------------------------------  
DEFAULT                        COMPOSITE_LIMIT                  KERNEL   UNLIMITED  
DEFAULT                        SESSIONS_PER_USER                KERNEL   UNLIMITED  
DEFAULT                        CPU_PER_SESSION                  KERNEL   UNLIMITED  
DEFAULT                        CPU_PER_CALL                     KERNEL   UNLIMITED  
DEFAULT                        LOGICAL_READS_PER_SESSION        KERNEL   UNLIMITED  
DEFAULT                        LOGICAL_READS_PER_CALL           KERNEL   UNLIMITED  
DEFAULT                        IDLE_TIME                        KERNEL   UNLIMITED  
DEFAULT                        CONNECT_TIME                     KERNEL   UNLIMITED  
DEFAULT                        PRIVATE_SGA                      KERNEL   UNLIMITED  
DEFAULT                        FAILED_LOGIN_ATTEMPTS            PASSWORD 10  
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_REUSE_TIME              PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_REUSE_MAX               PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_VERIFY_FUNCTION         PASSWORD VERIFY_FUNCTION_11G  
DEFAULT                        PASSWORD_LOCK_TIME               PASSWORD 1  
DEFAULT                        PASSWORD_GRACE_TIME              PASSWORD 7  

16 rows selected.  

SQL> alter profile default limit password_verify_function null;  

Profile altered.  

6.使用EMCA创建EM。
 
[oracle@dm01db01 ~]$ emca -config dbcontrol db  -repos create -cluster  

STARTED EMCA at Jun 18, 2014 11:30:26 PM  
EM Configuration Assistant, Version 11.2.0.3.0 Production  
Copyright (c) 2003, 2011, Oracle.  All rights reserved.  

Enter the following information:  
Database unique name: tequdb  
Service name: tequdb  
Listener port number: 1521  
Listener ORACLE_HOME [ /u01/app/11.2.0.4/grid ]:   
Password for SYS user:    
Password for DBSNMP user:    
Password for SYSMAN user:    
Cluster name: cluster-clu1  
Email address for notifications (optional):   
Outgoing Mail (SMTP) server for notifications (optional):   
ASM ORACLE_HOME [ /u01/app/11.2.0.4/grid ]:   
ASM port [ 1521 ]:   
ASM username [ ASMSNMP ]:   
ASM user password:    
-----------------------------------------------------------------  

You have specified the following settings  

Database ORACLE_HOME ................ /u01/app/oracle/product/11.2.0.4/dbhome_1  

Database instance hostname ................ Listener ORACLE_HOME ................ /u01/app/11.2.0.4/grid  
Listener port number ................ 1521  
Cluster name ................ cluster-clu1  
Database unique name ................ tequdb  
Email address for notifications ...............   
Outgoing Mail (SMTP) server for notifications ...............   
ASM ORACLE_HOME ................ /u01/app/11.2.0.4/grid  
ASM port ................ 1521  
ASM user role ................ SYSDBA  
ASM username ................ ASMSNMP  

-----------------------------------------------------------------  
Do you wish to continue? [yes(Y)/no(N)]: y  
Jun 18, 2014 11:31:01 PM oracle.sysman.emcp.EMConfig perform  
INFO: This operation is being logged at /u01/app/oracle/cfgtoollogs/emca/tequdb/emca_2014_06_18_23_30_26.log.  
Jun 18, 2014 11:31:14 PM oracle.sysman.emcp.EMReposConfig createRepository  
INFO: Creating the EM repository (this may take a while) ...  
Jun 18, 2014 11:33:54 PM oracle.sysman.emcp.EMReposConfig invoke  
INFO: Repository successfully created  
Jun 18, 2014 11:34:03 PM oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository  
INFO: Uploading configuration data to EM repository (this may take a while) ...  
Jun 18, 2014 11:34:50 PM oracle.sysman.emcp.EMReposConfig invoke  
INFO: Uploaded configuration data successfully  
Jun 18, 2014 11:34:50 PM oracle.sysman.emcp.EMDBCConfig instantiateOC4JConfigFiles  
INFO: Propagating /u01/app/oracle/product/11.2.0.4/dbhome_1/oc4j/j2ee/OC4J_DBConsole_dm01db01_tequdb to remote nodes ...  
Jun 18, 2014 11:34:52 PM oracle.sysman.emcp.EMDBCConfig instantiateOC4JConfigFiles  
INFO: Propagating /u01/app/oracle/product/11.2.0.4/dbhome_1/oc4j/j2ee/OC4J_DBConsole_dm01db02_tequdb to remote nodes ...  
Jun 18, 2014 11:34:54 PM oracle.sysman.emcp.EMAgentConfig deployStateDirs  
INFO: Propagating /u01/app/oracle/product/11.2.0.4/dbhome_1/dm01db01_tequdb to remote nodes ...  
Jun 18, 2014 11:34:55 PM oracle.sysman.emcp.EMAgentConfig deployStateDirs  
INFO: Propagating /u01/app/oracle/product/11.2.0.4/dbhome_1/dm01db02_tequdb to remote nodes ...  
Jun 18, 2014 11:34:58 PM oracle.sysman.emcp.util.DBControlUtil secureDBConsole  
INFO: Securing Database Control (this may take a while) ...  
Jun 18, 2014 11:35:39 PM oracle.sysman.emcp.util.DBControlUtil startOMS  
INFO: Starting Database Control (this may take a while) ...  
Jun 18, 2014 11:36:03 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration  
INFO: Database Control started successfully  
Jun 18, 2014 11:36:03 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration  
INFO: >>>>>>>>>>> The Database Control URL is https://dm01db01.tequ.com:1158/em <<<<<<<<<<<  
Jun 18, 2014 11:46:24 PM oracle.sysman.emcp.EMDBPostConfig showClusterDBCAgentMessage  
INFO:   
****************  Current Configuration  ****************  
 INSTANCE            NODE           DBCONTROL_UPLOAD_HOST  
----------        ----------        ---------------------  

tequdb            dm01db01            dm01db01.tequ.com  
tequdb            dm01db02            dm01db01.tequ.com  


Jun 18, 2014 11:46:24 PM oracle.sysman.emcp.EMDBPostConfig invoke  
WARNING:   
************************  WARNING  ************************  

Management Repository has been placed in secure mode wherein Enterprise Manager data will be encrypted.  The encryption key has been placed in the file: /u01/app/oracle/product/11.2.0.4/dbhome_1/dm01db01_tequdb/sysman/config/emkey.ora. Ensure this file is backed up as the encrypted data will become unusable if this file is lost.   

***********************************************************  
Enterprise Manager configuration completed successfully  
FINISHED EMCA at Jun 18, 2014 11:46:24 PM  

成功创建EM。  

7.重新启用密码验证函数。
 
SQL> alter profile default limit password_verify_function VERIFY_FUNCTION_11G;  

Profile altered.  

SQL> select * from dba_profiles;  

PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT  
------------------------------ -------------------------------- -------- ----------------------------------------  
DEFAULT                        COMPOSITE_LIMIT                  KERNEL   UNLIMITED  
DEFAULT                        SESSIONS_PER_USER                KERNEL   UNLIMITED  
DEFAULT                        CPU_PER_SESSION                  KERNEL   UNLIMITED  
DEFAULT                        CPU_PER_CALL                     KERNEL   UNLIMITED  
DEFAULT                        LOGICAL_READS_PER_SESSION        KERNEL   UNLIMITED  
DEFAULT                        LOGICAL_READS_PER_CALL           KERNEL   UNLIMITED  
DEFAULT                        IDLE_TIME                        KERNEL   UNLIMITED  
DEFAULT                        CONNECT_TIME                     KERNEL   UNLIMITED  
DEFAULT                        PRIVATE_SGA                      KERNEL   UNLIMITED  
DEFAULT                        FAILED_LOGIN_ATTEMPTS            PASSWORD 10  
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_REUSE_TIME              PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_REUSE_MAX               PASSWORD UNLIMITED  
DEFAULT                        PASSWORD_VERIFY_FUNCTION         PASSWORD VERIFY_FUNCTION_11G  
DEFAULT                        PASSWORD_LOCK_TIME               PASSWORD 1  
DEFAULT                        PASSWORD_GRACE_TIME              PASSWORD 7  

16 rows selected.  

配置完成后检查是否能够正常的登录EM工具,另外还有两点需要注意:  
1).emca是用操作系统oracle用户执行的。  
2).不能使用IP地址访问EM工具,一定使用机器名访问,例如:https://dm01db01.tequ.com:1158/em  

同时这篇文章也是对《  构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化  》的10.6.2小节的补充和完善。