首页 > DBA, 默认 > DB怪问题(请周总帮忙)

DB怪问题(请周总帮忙)

需求:安装BEPL的时候要求10gR2(10.2.0.3.0)数据库。并要求提供sys用户远程登陆。

数据库版本:10gR2(10.2.0.3.0) linux_x86_64

ORACLE_HOME=/d01/app/oracle/product/10.2.0/db_1                
export ORACLE_HOME                                             
ORACLE_SID=orcl                                               
export ORACLE_SID 

plsql developer ,以sys用户,sysdba角色连接 报错:ORA-01017
#数据库默认不允许sys用户以sysdba角色远程连接。

更改:
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapworcl password=sys entries=16 force=y
chmod 4640 $ORACLE_HOME/dbs/orapworcl

vi initorcl.ora
添加:
REMOTE_LOGIN_PASSWORDFILE = EXCLUSIVE

#启动
$ORACLE_HOME/bin/sqlplus '/as sysdba'
>startup

#问题依旧。
>grant sysdba to system;
ERROR at line 1:
ORA-01994: GRANT failed: password file missing or disabled

#其实文件是存在的,但不知为何还报这样的错。

rm /tmp/stracedba.log
strace -f -o /tmp/stracedba.log  $ORACLE_HOME/bin/sqlplus '/ as sysdba'
>startup
ptrace: umoven: Input/output error
Database opened.
SQL> ptrace: umoven: Input/output error
>grant sysdba to system;
Grant succeeded.

more /tmp/stracedba.log
/orapw
1636  stat("/d01/app/oracle/product/10.2.0/db_1/dbs/orapworcl", {st_mode=S_IFREG|0640, st_size=3072, ...}) = 0
1636  stat("/d01/app/oracle/product/10.2.0/db_1/dbs/orapworcl", {st_mode=S_IFREG|0640, st_size=3072, ...}) = 0

#可以找到。

#现象总结: strace方式启动数据库,能找到orapw文件。说明orapw文件存在且没错。但strace方式启动数据库不能自动注册listen,当然是不能作为正常数据库使用的。但是以正常方式启动数据库就报告password file missing or disabled。
这是什么原因?

 

 

关于作者:

昵称:商云方
档案信息:顾问, HAND张江技术中心
联系方式:你可以通过yunfang.shang@hand-china.com联系作者
点击查看商云方发表过的所有文章...
本文永久链接: http://blog.retailsolution.cn/archives/214

 

 

对本文的评价:

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

 

 

分类: DBA, 默认 标签: , , , ,
  1. yunfang
    2008年10月10日09:06 | #1

    周总,我在Home的服务器中按如下步骤执行是成功的,没有报错误:
    ORACLE_HOME=/d01/app/oracle/product/10.2.0/db_1
    export ORACLE_HOME
    ORACLE_SID=orcl
    export ORACLE_SID

    $ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapworcl password=sys entries=16 force=y
    chmod 4640 $ORACLE_HOME/dbs/orapworcl

    vi initRETL.ora

    $ORACLE_HOME/bin/sqlplus '/as sysdba'
    SQL> startup
    SQL> grant sysdba to system;

    Grant succeeded.

    张江服务器环境与Home环境的区别就是:
    硬件不同
    但linux软件版本一样,rpm装的都一样.

    张江环境是从Home环境迁移过去的,是从home环境把整个/d01/app 打包后迁移过去的,使用到现在没有发现其他与home环境有不一样的异常,唯有这个password文件的问题上有差异,可能是什么原因?

  2. yunfang
    2008年10月10日09:08 | #2

    硬件的差别在IO上主要是:
    张江环境做的Raid 0
    home环境没有raid

    张江环境: DELL 2950
    CPU : 4核
    硬盘: 146G + 2*300G ( sas硬盘 15k转速度, 2*300做Raid0, /d01 被mount到这个raid 0上)
    内存: 8G

    Home环境: DELL 850E
    CPU: P4 3.0 超线程(逻辑双核)
    硬盘: 250G (sata硬盘,7.2k转速, 只有一块,无RAID, /d01是个目录)
    内存: 4G

  3. 2008年10月10日12:49 | #3

    参考Note:730067.1
    1. Shutdown the database and other processes related to the ORACLE_HOME
    2. Navigate to $ORACLE_HOME/rdbms/lib
    3. Take a backup of the current CONFIG.O and delete it :
    mv config.o to config.o.bkp
    4. Check the config.s or config.c to verify whether the name of the 'dba' and 'oper' groups are appropriate, if not correct them accordingly
    5. MAke a new CONFIG.O by using the below command :
    make -f ins_rdbms.mk config.o ioracle
    6. Relink oracle

    实际操作是:
    1. make -f ins_rdbms.mk config.o ioracle
    2. relink oracle

  4. 2008年10月10日13:03 | #4

    此错误与数据库迁移有关,问题已经解决,谢谢周总!

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
您必须在 登录 后才能发布评论.