You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Oracle两类问题求助:ORA-28000账户锁定解决与11g重装卡住

我来帮你搞定这两个Oracle常见问题,都是实操中经常碰到的,一步步来就行:

解决Oracle ORA-28000: the account is locked错误

这个错误就是你的账户被锁定了,大概率是多次登录失败触发了安全策略,或是DBA手动锁了账户,解决步骤很直接:

  • 先用有DBA权限的账户(比如sys或者system)登录Oracle,SQL*Plus命令行的话就输:
    sqlplus / as sysdba
    
  • 先确认下账户的状态,看看是不是真的锁了:
    SELECT username, account_status FROM dba_users WHERE username = '你的账户名';
    
    这里把你的账户名换成实际要解锁的账户,比如SCOTT
  • 解锁账户,要是需要重置密码的话可以一起操作:
    ALTER USER 你的账户名 ACCOUNT UNLOCK;
    -- 要是忘了密码,加这句重置,把新密码换成你要设的
    ALTER USER 你的账户名 IDENTIFIED BY 新密码;
    
  • 最后再查一遍账户状态,确认显示OPEN就搞定了:
    SELECT username, account_status FROM dba_users WHERE username = '你的账户名';
    

要是经常出现锁账户的情况,还可以调整安全策略,比如放宽失败登录次数或者缩短锁定时间:

-- 允许10次失败登录,默认可能是5次
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 10;
-- 锁定1小时(单位是天,1/24就是1小时),默认可能是1天
ALTER PROFILE DEFAULT LIMIT PASSWORD_LOCK_TIME 1/24;
解决Oracle 11g卸载后重新安装卡住的问题

这种情况99%是卸载不干净,残留的文件、注册表或者服务导致安装程序冲突了,得彻底清干净再装:

  • 第一步:卸载所有Oracle相关程序
    打开控制面板的「程序和功能」,把所有带Oracle字样的程序都删掉,包括数据库、客户端、安装器这些,跟着卸载向导走完流程。
  • 第二步:删掉Oracle相关目录
    • 删掉原来的安装目录,比如默认的C:\app,要是提示文件被占用,重启电脑再删就行。
    • 删掉系统盘的C:\Program Files\OracleC:\Program Files (x86)\Oracle(64位系统才有这个)。
    • 删掉用户目录下的Oracle文件夹,比如C:\Users\你的用户名\AppData\Roaming\OracleC:\Users\你的用户名\AppData\Local\OracleAppData是隐藏文件夹,得先显示隐藏文件。
  • 第三步:清理注册表
    按下Win+R输入regedit打开注册表编辑器,找到下面这些键值删掉:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Oracle
    • 64位系统还要删HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Oracle
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下所有以Oracle开头的服务项
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application里的Oracle相关项
      注意:改注册表前最好备份一下,别误删其他东西。
  • 第四步:清理环境变量
    右键「此电脑」→「属性」→「高级系统设置」→「环境变量」,删掉系统变量里的ORACLE_HOMEORACLE_SID,再把PATH里所有包含Oracle路径的部分删掉。
  • 第五步:重启后重新安装
    把上面的步骤都做完,重启电脑,然后运行Oracle 11g的安装程序,选全新安装就行,建议用默认路径或者换个新路径,避免残留影响。

内容的提问来源于stack exchange,提问作者jalil

火山引擎 最新活动