各位Oracle高手帮帮忙啊!本人是Oracle新手,在逻辑备份恢复时遇到问题无法解决。
我拥有的分不是很多,所以只能求各位大哥不吝赐教,小弟不胜感激。问题概述:使用exp命令和imp命令执行数据库导出导入,但导入后,EM无法连接!系统环境:Oracle 10.2.0.1.0版,操作系统CENTOS4.2版(Linux)。问题详细描述如下:
demo数据库,建有rise用户,该用户具有所有系统权限,具有DBA,EXP_FULL_DATABASE和IMP_FULL_DATABASE角色.
用rise用户执行数据库逻辑备份,命令如下:
$ exp rise/{正确的密码} file=/home/rs/Desktop/demo.dmp full=y 
导出完成后,把demo数据库实例删除了(用dbca删除的,没有什么错误),然后重新创建demo实例,创建成功后,可以通过浏览器登录EM.
然后用SYSTEM用户执行导入操作(这时SYSTEM没有EXP_FULL_DATABASE和IMP_FULL_DATABASE角色),命令如下:
imp system/{正确的密码} file=/home/rs/Desktop/demo.dmp full=y ignore=y destroy=y
执行后有很多违反唯一性约束的错误,但最后的提示是: 成功终止导入, 但出现警告。
这时候EM出问题了,执行 emctl start dbconsole 命令,和平时没两样,一切正常,提示是:http://localhost.localdomain:5501/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control .......................... started.但是在浏览器中却无法连接。EM用不了了!
返回终端,使用emctl status dbconsole查看控制台状态,结果却是:
http://localhost.localdomain:5501/em/console/aboutApplication
Oracle Enterprise Manager 10g is not running.
再执行emctl start dbconsole,结果如下:
TZ set to PRC
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation.  All rights reserved.
http://localhost.localdomain:5501/em/console/aboutApplication
Agent Version     : 10.1.0.4.1
OMS Version       : 10.1.0.4.0
Protocol Version  : 10.1.0.2.0
Agent Home        : /oracle/product/10.2.0/db_1/localhost.localdomain_demo
Agent binaries    : /oracle/product/10.2.0/db_1
Agent Process ID  : 9723
Parent Process ID : 8343
Agent URL         : http://localhost.localdomain:1831/emd/main
Started at        : 2009-09-16 19:36:38
Started by user   : rs
Last Reload       : 2009-09-16 19:36:38
Last successful upload                       : (none)
Last attempted upload                        : 2009-09-16 20:07:11
Total Megabytes of XML files uploaded so far :     0.00
Number of XML files pending upload           :       93
Size of XML files pending upload(MB)         :     5.07
Available disk space on upload filesystem    :    41.60%
Agent is already started. Will restart the agent
Stopping agent ... stopped.
Starting Oracle Enterprise Manager 10g Database Control .......................... started.
------------------------------------------------------------------
Logs are generated in directory /oracle/product/10.2.0/db_1/localhost.localdomain_demo/sysman/log但是,EM还是不能用!第二次尝试。把demo删除重建,给SYSTEM用户赋予EXP_FULL_DATABASE和IMP_FULL_DATABASE角色.然后如前面一样执行导入操作,完成后问题依旧!第三次尝试。重建demo数据库实例,创建rise用户,赋予EXP_FULL_DATABASE和IMP_FULL_DATABASE角色以及所有系统权限.执行导入,命令:
imp rise/risetech file=/home/rs/Desktop/demo.dmp full=y grants=y ignore=y destroy=y完成后问题依旧!再试:使用System用户导出,重建数据库后使用System用户导入。问题依旧!

解决方案 »

  1.   

    查看服务里面OracleDBConsoleorcl服务启动没?如果没有启动,em肯定不能用
    可以尝试重新配置em:
             emca -repos drop
    emca -repos create
    emca -config dbcontrol db
    emctl start dbconsole
      

  2.   

    tianxiaocui2007你好,我这服务器上还有其他的数据库实例,它们的EM都是正常的,就单单Demo实例的EM不能连接,不能运行起来。
    你说的尝试重新配置EM,我想问下这是对全部的实例的EM重新配置还是单单针对Demo实例的?重新配置了之后会不会对其他数据库实例有影响呢?
    我对这个概念还不清楚,望指教。
    非常感谢!!
      

  3.   

    create和drop repos需要指定ORACLE_SID的环境变量的。这里可以启动,可能是oc4j里的一些问题了你先看看oc4j里的日志文件先,看有没有什么错误提示日志文件在
    $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_XXXXX_SID\log
      

  4.   

    谢谢楼上两位,重新配置后EM好了。
    还想问个问题就是,用EXP和IMP命令执行全数据库导入导出,为什么有时候EM是好的,但大部分时候EM都是被破坏了需重新配置才能用呢?
    哪位高手知道原因,指点一下?