平台:Unix
1、cd  $ORACLE_HOME/dbs
2、在该目录下键入
orapwd file=orapw<sid> password=<password> 
entries=<max # user's> 
(其中的file必须为orapw在上SID的名字,password最好是sys的密码)
3、在init<SID>.ora文件中,加入
REMOTE_LOGIN_PASSWORDFILE=exclusive 
4、重新启动数据库
注:曾经有人用上述方法不能在connect internal,但是我没碰到。
或者
alter user sys identified by xxx;
据说用这个方法改变了密码,即使再用第一个方法来更改一个不同的密码,但是internal的密码仍然和sys一样
平台:Windows NT
在NT下,有两个方法来保护internal/sys
1、通过ORA_DBA O/S用户组来限制进入internal/sys
2、通过sys密码来限制
改密码的方法:
orapwd file=C:\oracle\ora81\database\pwd<SID>.ora password=mypswd 

改注册表
HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE 
DBA_<SID>_AUTHORIZATION=BYPASS (<7.3.4 version)
DBA_AUTHORIZATION=<password>   ( Oracle 8.x)

直接改sys的密码
alter user sys identified by xxxx;
我认为internal用户就是sys用户。

解决方案 »

  1.   

    我不同意tiner得意见,internal是一个虚拟得具有sys权限的登陆名。
    更改密码是对得,alter user * identified by xxxx;只能修改用户密码
    不能修改internal得密码。
      

  2.   

    我同意befresh的意见,因为sys和internal的确具有不同的密码。但如果internal的密码不能修改,岂不是给人以可乘之机吗?
      

  3.   

    昨天晚上终于成功了,我是用orapwd命令建立一个新的同名密码文件然后去覆盖oracle缺省的密码文件.