登录OEM,相当于远程登录,需要配置好监听并开启,然后开启em:emctl start dbconsole,然后在浏览器中输入
服务器IP:em端口号/em
今天在登录EM时遇到两个问题:
1)以sys用户登录时,出现了如下的错误提示:
这是什么原因呢?提示说用户名和密码不可用。用户名肯定没有问题,那一定是在密码这里出错了,那我们来从密码的角度寻找原因,sysdba身份远程的登录,登录是使用了口令文件验证,经查看在$ORACLE_HOME/dbs密码文件orapwPROD是存在的,那问题出在哪里了呢?哦~~ 看看我前面写的文章,对密码文件的使用控制还有一个参数,那就是remote_login_passwordfile。那我们来查看一下,此时的这个是如何设置的:
哦~~果然是被设置了none,这下清楚了,让我们把这个参数改成shared或exclusive应该就没有问题了
这个参数是静态参数,需要重启数据库后生效
重启数据库后,我来在来看一下这个参数的值:
好,已经被设置了shared,这样我们可以来使用口令认证了,我们在登录OEM看看:
登陆成功啦!!!
2)成功之后,我在以scott/tiger,normal登录OEM,又出错了:
提示说数据库的权限不足!仔细想了一下,scott用户登录OEM需要什么权限吗?没有想到。然后在想OEM里面都是什么内容呢?是对数据库的操作管理!哦!那一定得必需是数据库管理者呀!试试看:
grant dba to scott;
这样在登录oem就没有问题啦~
3)我把这些上面的两点都设置好了,我登录OEM时,这次遇到更严重的问题:
嘎的!这是什么情况,直接是无法连接到OEM了。经过反复的猜测推敲,在保证IP和端口都没有设置错误的情况下,数据库的各项配置没有问题,我把问题转到了服务器(也就是操作系统上),我尝试着看了linux的防火墙:
嗯,防火墙开启状态。此时,我在windows的oracle客户端连接数据库也无法成功连接
我此时ping了linux的IP地址可以通:
然后tnsping就不行了:
那我们来把linux的防火墙关掉:
再来试试OEM和客户端的连接:
看到都没问题,成功连入了。
总结:看来是问题确实是在防火墙这里了,因为初学oracle 对刚刚接触的Linux不是很了解,通过ping和tnsping我猜 测,防火墙屏蔽了OEM1158和监听1521的端口导致的。
补充:测试中用到linux命令
防火墙的关闭打开和状态查询:
关闭:/etc/rc.d/init.d/iptables stop
启动:/etc/rc.d/init.d/iptables start
状态:service iptables status
ntsysv命令,图形化的界面来启停linux的各项服务!
2012/10/26 10:30