oracle ip地址改变后 错误 未解决
Oracle 错误
OracleDBConsoleorcl:Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。在运行Enterprise Manager(企业管理器OEM)的时候,需要启动这个服务。(非必须启动),但是有时候当我们修改了主机名或改变了ip地址后这个服务会启动不了,导致em访问不了。
我们可以考虑删掉原来的配置,自己从新配置。个人解决这个问题是在虚拟机的xp上 。
1. OracleDBConsoleorcl 启动错误
虚拟机ip地址改变后出现错误 启动OracleDBConsoleorcl 失败

1)删除原来配置 emca -repos drop
数据库SID:orcl
监听程序端口号:1521
SYS/SYSTEM口令:password(这个是我自己设置的系统管理员 密码)

2)创建新的配置 emca -repos create

3)重新配置dbcontrol: emca -config dbcontrol db


4)以上三步完成之后,输入“set ORACLE_UNQNAME=ORCL”,按回车键,设置环境变量,再次输入“emctl start dbconsole”,按回车键启动服务。将这个网址在浏览器中输入'http://192.168.233.128/em/console/aboutApplication'回车即可正常跳入登录页面使用。如图所示。
set ORACLE_UNQNAME=ORCL(设置环境变量)
以上不能成功
于是,修改ip

5)输入网址访问
http://192.168.233.128:1158/em/console/database/instance/repDown?target=orcl&type=oracle_database

还是有错误

查看上图位置的信息
Check if repos user already exists. 原值 6: WHERE username=UPPER('&EM_REPOS_USER'); 新值 6: WHERE username=UPPER('SYSMAN'); 原值 8: IF ( '&EM_CHECK_TYPE' = 'EXISTS') THEN 新值 8: IF ( 'NOT_EXISTS' = 'EXISTS') THEN 原值 11: raise_application_error(-20000, '&EM_REPOS_USER does not exists..'); 新值 11: raise_application_error(-20000, 'SYSMAN does not exists..'); 原值 14: ELSIF ( '&EM_CHECK_TYPE' = 'NOT_EXISTS' ) THEN 新值 14: ELSIF ( 'NOT_EXISTS' = 'NOT_EXISTS' ) THEN 原值 17: raise_application_error(-20001, '&EM_REPOS_USER already exists..'); 新值 17: raise_application_error(-20001, 'SYSMAN already exists..'); 原值 21: raise_application_error(-20002, 'Invalid Check type &EM_CHECK_TYPE'); 新值 21: raise_application_error(-20002, 'Invalid Check type NOT_EXISTS'); DECLARE * 第 1 行出现错误: ORA-20001: SYSMAN already exists.. ORA-06512: 在 line 17 用sqlplus登陆sys用户的时候,用户名应该输入:sys as sysdba,否则会报错! 在sql deverloper中新建一个sys的连接也是一样的,用户名要写为:sys as sysdba


查看当前连接的的会话

一个个杀死当前连接的会话,其中有一个未当前操作的,不能删

解决之前的错误
第 1 行出现错误:
ORA-20001: SYSMAN already exists..
ORA-06512: 在 line 17
解决方法:
Logon SQLPLUS as user SYS or SYSTEM, and drop the sysman account and management objects:
**登录SYS或者SYSTEM** sqlplus sys as sysdba
**登录后输入以下命令**
SQL> drop user sysman cascade;
SQL> drop role MGMT_USER;
SQL> drop user MGMT_VIEW cascade;
SQL> drop public synonym MGMT_TARGET_BLACKOUTS;
SQL> drop public synonym SETEMVIEWUSERCONTEXT;
重新配置 emca -config dbcontrol db 出现以下错误,决定卸载重装
配置: Error Message: PRKC-1117 : 无法在节点 "WINXP-PRO-VM" 的键 "HKEY_LOCAL_MACHINE" 下删除注册表子键 "SOFTWARE\Oracle\SYSMAN\OracleDBConsoleorcl", [?????????¨???????
]
oracle.ops.mgmt.cluster.ClusterException: PRKC-1117 : 无法在节点 "WINXP-PRO-VM" 的键 "HKEY_LOCAL_MACHINE" 下删除注册表子键 "SOFTWARE\Oracle\SYSMAN\OracleDBConsoleorcl", [?????????¨???????
]
at oracle.ops.mgmt.cluster.ClusterWindows.deleteRegKeyOnNode(ClusterWindows.java:480)
at oracle.sysman.emcp.util.ClusterUtil.deleteRegKeyOnNode(ClusterUtil.java:1097)
at oracle.sysman.emcp.util.PlatformInterface.deleteLocalWindowsService(PlatformInterface.java:780)
at oracle.sysman.emcp.util.PlatformInterface.serviceCommand(PlatformInterface.java:620)
at oracle.sysman.emcp.EMDBPreConfig.performConfiguration(EMDBPreConfig.java:719)
at oracle.sysman.emcp.EMDBPreConfig.invoke(EMDBPreConfig.java:233)
at oracle.sysman.emcp.EMDBPreConfig.invoke(EMDBPreConfig.java:160)
at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:141)
at oracle.sysman.emcp.EMConfigAssistant.invokeEMCA(EMConfigAssistant.java:479)
at oracle.sysman.emcp.EMConfigAssistant.performConfiguration(EMConfigAssistant.java:1123)
at oracle.sysman.emcp.EMConfigAssistant.statusMain(EMConfigAssistant.java:463)
at oracle.sysman.emcp.EMConfigAssistant.main(EMConfigAssistant.java:412)
浙公网安备 33010602011771号