由于原来的数据库已经被删除,再重做oem时需要用到监听,此时直接重做报如下错误:
[Oracle@localhost ~]$ emca -repos recreate
Jul 30, 2014 7:15:53 PM oracle.sysman.emcp.EMReposConfig dropRepository
INFO: Dropping the EM repository (this may take a while) ...
Jul 30, 2014 7:15:54 PM oracle.sysman.emcp.util.PlatformInterface executeCommand
WARNING: Error executing /u01/app/oracle/10.2.0/db_1/sysman/admin/emdrep/bin/RepManager -connect (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl_asm))) -repos_user SYSMAN -action drop -verbose -output_file /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_repos_drop_2014-07-30_07-15-53-PM.log
提示找不到监听,可是监听确实存在
[oracle@localhost ~]$ lsnrctl status
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 30-JUL-2014 19:40:45
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.37.44.111)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 30-JUL-2014 19:15:14
Uptime 0 days 0 hr. 25 min. 31 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/10.2.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.37.44.111)(PORT=1521)))
Services Summary...
Service "orclasm" has 1 instance(s).
Instance "orclasm", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
索性直接创建新的oem
[oracle@localhost ~]$ emca -repos create
STARTED EMCA at Jul 30, 2014 7:22:28 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle. All rights reserved.
Enter the following information:
Database SID: orclasm
Listener port number: 1521
Password for SYS user:
Password for SYSMAN user:
Do you wish to continue? [yes(Y)/no(N)]: Y
Jul 30, 2014 7:22:37 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_2014-07-30_07-22-28-PM.log.
Jul 30, 2014 7:22:37 PM oracle.sysman.emcp.EMReposConfig createRepository
INFO: Creating the EM repository (this may take a while) ...
Jul 30, 2014 7:22:37 PM oracle.sysman.emcp.EMReposConfig invoke
SEVERE: Error creating the repository
Jul 30, 2014 7:22:37 PM oracle.sysman.emcp.EMReposConfig invoke
INFO: Refer to the log file at /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_repos_create_.log for more details.
Jul 30, 2014 7:22:37 PM oracle.sysman.emcp.EMConfig perform
SEVERE: Error creating the repository
Refer to the log file at /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_2014-07-30_07-22-28-PM.log for more details.
Could not complete the configuration. Refer to the log file at /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_2014-07-30_07-22-28-PM.log for more details.
CONFIG: ORA-20001: SYSMAN already exists..
ORA-06512: at line 17
观察生成的日志发现sysman用户已经存在,这是由于用老的em资料库配置数据库导致的,删除该用户
oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-20001: SYSMAN already exists..
ORA-06512: at line 17
at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeImpl(SQLEngine.java:1467)
at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeScript(SQLEngine.java:841)
at oracle.sysman.assistants.util.sqlEngine.SQLPlusEngine.executeScript(SQLPlusEngine.java:265)
再次执行仍然报错,还没完了。。。
CONFIG: ORA-01921: role name 'MGMT_USER' conflicts with another user or role name
oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-01921: role name 'MGMT_USER' conflicts with another user or role name
at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeImpl(SQLEngine.java:1467)
at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeScript(SQLEngine.java:841)
at oracle.sysman.assistants.util.sqlEngine.SQLPlusEngine.executeScript(SQLPlusEngine.java:265)
登入数据库,这下彻底删除与em有关的用户信息
select grantee, granted_role from dba_role_privs where granted_role = 'MGMT_USER';
drop role mgmt_user;
drop user sysman cascade;
drop user mgmt_view cascade;
SET HEADING OFF;
spool a.sql
SELECT 'DROP PUBLIC SYNONYM ' || SYNONYM_NAME || ';'
FROM ALL_SYNONYMS
WHERE OWNER = 'PUBLIC' AND TABLE_OWNER ='SYSMAN';
spool off
SET HEADING ON;
@a.sql
再次创建资料库就行了
Jul 30, 2014 7:32:06 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/10.2.0/db_1/cfgtoollogs/emca/orcl_asm/emca_2014-07-30_07-31-53-PM.log.
Jul 30, 2014 7:32:06 PM oracle.sysman.emcp.EMReposConfig createRepository
INFO: Creating the EM repository (this may take a while) ...
Jul 30, 2014 7:39:28 PM oracle.sysman.emcp.EMReposConfig invoke
INFO: Repository successfully created
Enterprise Manager configuration completed successfully
: