emctl start dbconsole报错

emctl start dbconsole报错如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[oracle@oracle123 ~]$ emctl start dbconsole
The following exception occurred:
java.net.UnknownHostException: egrantdb: egrantdb
at java.net.InetAddress.getAllByName0(InetAddress.java:1174)
at java.net.InetAddress.getAllByName(InetAddress.java:1101)
at java.net.InetAddress.getAllByName(InetAddress.java:1037)
at java.net.InetAddress.getByName(InetAddress.java:987)
at oracle.sysman.emd.targetIntg.agent.AgentTargetInstaller.getLocalHost(AgentTargetInstaller.java:4289)
at oracle.sysman.emd.targetIntg.agent.AgentTargetInstaller.printLocalHost(AgentTargetInstaller.java:4252)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at oracle.sysman.emd.targetIntg.Util$DefaultIntegrationMethod.execute(Util.java:598)
at oracle.sysman.emd.targetIntg.TargetInstaller.execute_(TargetInstaller.java:167)
at oracle.sysman.emd.targetIntg.TargetInstaller.execute(TargetInstaller.java:155)
at oracle.sysman.emSDK.conf.TargetInstaller.printLocalHost(TargetInstaller.java:2364)
at oracle.sysman.emSDK.conf.TargetInstaller.main(TargetInstaller.java:3290)
Although there was an exception it might be possible for the program to continue.
Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name.
[oracle@oracle123 ~]$
```


## 解决方法
1、使hosts与~/.bash_profile的export ORACLE_HOSTNAME=值 相同,一般我们改./bash_profile
```javascript
[oracle@oracle123 ~]$ vim ~/.bash_profile

2、重载环境配置文件

1
[oracle@oracle123 ~]$ source ~/.bash_profile

3、再次尝试启动em

1
2
[oracle@oracle123 ~]$ emctl start dbconsole
OC4J Configuration issue. /u02/app/oracle/oc4j/j2ee/OC4J_DBConsole_oracle123_ora11g not found.

报错减少了。

4、此时需要对emcontrol 进行重建
注意数据库要在startup状态下进行重建,否则创建不成功!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[oracle@oracle123 OC4J_DBConsole]$ emca -repos recreate
EMCA 开始于 2017-3-8 10:10:40
EM Configuration Assistant, 11.2.0.3.0 正式版
版权所有 (c) 2003, 2011, Oracle。保留所有权利。
输入以下信息:
数据库 SID: ora11g
监听程序端口号: 1521
SYS 用户的口令:
SYSMAN 用户的口令:
----------------------------------------------------------------------
警告: 当删除资料档案库时, 数据库将进入静默模式。
----------------------------------------------------------------------
是否继续? [是(Y)/否(N)]: y
2017-3-8 10:11:08 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 /u02/app/cfgtoollogs/emca/ora11g/emca_2017_03_08_10_10_39.log。
2017-3-8 10:11:09 oracle.sysman.emcp.EMReposConfig invoke
信息: 正在删除 EM 资料档案库 (此操作可能需要一段时间)...
2017-3-8 10:13:51 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功删除资料档案库
2017-3-8 10:13:51 oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
2017-3-8 10:21:31 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功创建资料档案库
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2017-3-8 10:21:31
[oracle@oracle123 OC4J_DBConsole]$

5、重建EM

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
[oracle@oracle123 OC4J_DBConsole]$ emca -config dbcontrol db

EMCA 开始于 2017-3-8 10:22:33
EM Configuration Assistant, 11.2.0.3.0 正式版
版权所有 (c) 2003, 2011, Oracle。保留所有权利。

输入以下信息:
数据库 SID: ora11g
监听程序端口号: 1521
监听程序 ORACLE_HOME [ /u02/app/oracle ]:
SYS 用户的口令:
SYS 用户的口令:
SYS 用户的口令:
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ /u02/app/oracle
本地主机名 ................ oracle123
监听程序 ORACLE_HOME ................ /u02/app/oracle
监听程序端口号 ................ 1521
数据库 SID ................ ora11g
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [是(Y)/否(N)]: y
2017-3-8 10:23:24 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 /u02/app/cfgtoollogs/emca/ora11g/emca_2017_03_08_10_22_32.log。
2017-3-8 10:23:33 oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository
信息: 正在将配置数据上载到 EM 资料档案库 (此操作可能需要一段时间)...
2017-3-8 10:25:31 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功上载配置数据
2017-3-8 10:25:35 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 正在保护 Database Control (此操作可能需要一段时间)...
2017-3-8 10:26:22 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 已成功保护 Database Control。
2017-3-8 10:26:22 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2017-3-8 10:28:21 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
2017-3-8 10:28:21 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 https://oracle123:1158/em <<<<<<<<<<<
2017-3-8 10:28:31 oracle.sysman.emcp.EMDBPostConfig invoke
警告:
************************ WARNING ************************

管理资料档案库已置于安全模式下, 在此模式下将对 Enterprise Manager 数据进行加密。加密密钥已放置在文件 /u02/app/oracle/oracle123_ora11g/sysman/config/emkey.ora 中。请务必备份此文件, 因为如果此文件丢失, 则加密数据将不可用。

***********************************************************
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2017-3-8 10:28:31

6、再次启动,发现成功启动EM

1
2
3
4
5
6
[oracle@oracle123 OC4J_DBConsole]$ emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.4.0
Copyright (c) 1996, 2013 Oracle Corporation. All rights reserved.
https://oracle123:1158/em/console/aboutApplication
- An instance of Oracle Enterprise Manager 11g Database Control is already running.
[oracle@oracle123 OC4J_DBConsole]$

成功启动~

# oracle
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×