1、使用SQL PLUS.
在DOS模式下运行SQL PLUS.
SQL> conn
请输入用户名: sys as sysdba
输入密码:
连接成功
SQL>desc dba_users 注意:如果此时提示发现该视图无效。用D:oracleproduct10.2.0db_1RDBMSADMINsql.bsq 新建立user_astatus_map , DBA_USERS . 否则会显示如下信息:
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
PROFILE NOT NULL VARCHAR2(30)
INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30)
EXTERNAL_NAME VARCHAR2(4000)
SQL> select username,account_status from dba_users where username='SYSMAN' ;
USERNAME ACCOUNT_STATUS
------------------------------ --------------------------------
SYSMAN LOCKED
SQL>alter user sysman account unlock;
用户已更改。
此时系统就可以连接到数据库了。
2011-8-3 3:05:05 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:appzhoucfgtoollogsemcaorclemca_2011_08_03_03_04_31.log。
2011-8-3 3:05:05 oracle.sysman.emcp.EMConfig perform
严重: 监听程序未启动或数据库服务未注册到该监听程序。启动该监听程序并注册数据库服务, 然后重新运行 EM Configuration Assistant。
有关详细资料, 请参阅 D:appzhoucfgtoollogsemcaorclemca_2011_08_03_03_04_31.log 中的日志文件。
无法完成配置。 有关详细资料, 请参阅 D:appzhoucfgtoollogsemcaorclemca_2011_08_03_03_04_31.log 中的日志文件。
很显然,我的监听器是打开的,很不甘心,于是这次我专门针对这个严重错误去搜索,有很多种说法,有用net manager配置路径的,但我好不容易找到它在哪里,打开后却发现不知道怎么配置,于是换个方案:
不重建emca,先emca -repos drop删除emca,然后emca -config dbcontrol db重建emca吧。
看到这个方案就伤心,还记得上一次我的oracle就是被这个方案搞坏的,终于这次没敢尝试,于是继续搜索:
经过仔细研究发现,在emConfig.log中使用如下hostname:
配置: connectDesc : (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=BlueAeri-PC)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))
但是在listener.ora中是这样的:
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
显然 BlueAeri-PC 是不能访问 localhost的,因此有两个解决方法:
1、单机用户适用:增加操作系统环境变量:ORACLE_HOSTNAME=localhost
2、服务器适用:在listener.ora中增加对BlueAeri-PC或ip地址的侦听
提示,在emConfig.log中仍然会报以下错误,不过不用理会:
配置: 未设置参数 ORACLE_HOSTNAME 的值。
我记得以前找过的许多方法都说是IP问题了,于是兴致勃勃的去找到这两个文件打开一看,又傻眼了,他们都是localhost,我就无语了,最后在抱着试一试的心态下,我给电脑配置了ORACLE_HOSTNAME的环境变量,然后,重新配置em,十多分钟后……竟然配置成功了,接着,我怀着七上八下的心打开浏览器,终于见到了我可爱的登陆界面,尝试登陆也成功了,有时候,幸福就是来的这么突然,在你快要放弃的时候它就突然出现在你眼前。
总结:oracle的服务是很脆弱的,对IP特别敏感,在个人电脑上(因为服务器一般不会随便变更IP地址)这点尤为重要,所以我们在关电脑前最好先把oracle的服务都关了。(其实对于这个问题的解决的麻烦过程,主要还在于对oracle的三层结果不是很清楚,其底层配置命令的用途究竟为何也不甚了解,所以以后如果选择oracle数据库的童鞋一定要首先对其整个结构有了基础的了解,才不会在这些蛋疼的问题上浪费时间,OVER!!!)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22408460/viewspace-1115406/ ,如需转载,请注明出处,否则将追究法律责任。