posts - 310, comments - 6939, trackbacks - 0, articles - 3
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

oracle10G下在isqlplus中启用sys账户的解决办法

Posted on 2008-06-09 08:47 诗特林 阅读(1887) 评论(0)  编辑  收藏 所属分类: Oracle

oracle10G下在isqlplus中启用sys账户的解决办法

 

一般用户登陆isqlplus的网址http://ip:5560/isqlplus(或是点击http://573b95830e0143a:5500/em中的相关连接下的iSQL*Plus),进入该网址后会直接进入数据库用户登陆界面,使用数据库中的普通用户即可登陆。

DBA用户登陆isqlpus的网址http://ip:5560/isqlplus/dba,进入该网址后首先会弹出一个登陆框,要求先输入iSQL*Plus DBA的用户和密码,注意这里不是数据库用户,而是isqlplus应用服务器要求的用户和密码。
要以DBA身份登陆isqlplus,必须先配置好oc4j用户。

采用xml配置文件认证的方式。该配置文件位于%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/config

但是该配置文件中的密码是加密过的,所以我们不能手动修改该文件,而是通过JAZN(Java AuthoriZatioN)来配置。JAZN是oracle提供的一个JASS(Java Authentication and Authorization Service)工具.

通过JAZN,可以完成以下任务
如何进入JAZN命令环境

0.打开CMD命令窗口先;

1.进入到目录%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/

2.确保JAVA_HOME环境变量指向了正确的jdk(需要1.4以上)路径,可以使用oracle自带的jdk,位于%ORACLE_HOME%/jdk

3.执行以下命令
java -Djava.security.properties=%ORACLE_HOME%/sqlplus/admin/iplus/provider -jar $ORACLE_HOME/oc4j/j2ee/home/jazn.jar -user "iSQL*Plus DBA/admin" -password welcome -shell

当ORACLE_HOME设置不正确时,就直接采用路径比较安全(java -Djava.security.properties=G:\oracle\product\10.1.0\Db_2/sqlplus/admin/iplus/provider -jar G:\oracle\product\10.1.0\Db_2/oc4j/j2ee/home/jazn.jar -user "iSQL*Plus DBA/admin" -password welcome -shell)

其中realm=iSQL*Plus DBA,user=admin,这些可以从xml配置文件中看到,admin的默认密码是welcome,但是admin用户默认没有webDba权限,不能直接用于登陆isqlplus。
进入JAZN命令环境后,可以执行所有的任务:

1.新建用户ning,密码pass
JAZN:> adduser "iSQL*Plus DBA" isqluser  pass

2.列出用户
JAZN:> listusers
iSQL*Plus DBA/admin
iSQL*Plus DBA/isqluser
3.授予用户登陆isqlplus DBA的权限
JAZN:> grantrole webDba "iSQL*Plus DBA" isqluser
4.退出JAZN命令环境
JAZN:> exit
假设上面我们创建了一个用户isqluser,密码为pass,并且已经授予webDba权限。

接下来在CMD下重新启动isqlplus应用服务器
isqlplusctl stop
isqlplusctl start
再进入网址http://ip:5560/isqlplus/dba,在弹出的对话框中输入isqluser和pass,就可以进入到数据库登陆界面了,选择以sysdba或sysoper身份登陆了。


只有注册用户登录后才能发表评论。


网站导航: