Oracle忘记所有密码怎么办

最近遇到一个Oracle的问题,密码要过期了,但是除了用户密码,其他密码都不知道了,修改不了密码怎么办呢?

试了各种方法,最终下面的方式生效了:

首先,使用orapwd生成新的密码文件:

bash 复制代码
orapwd file="PWDorcl.ora" password="ps123456" entries=40 force=y

其中file是指密码文件,PWD是固定开头,orcl是实例名称。

password设置的就是sys的密码。

可以在安装目录下的database目录下查看自己对应的密码文件是啥,保持名字一样就可以。

上面的命令,很可能因为目录权限问题,直接修改不成功,可以在其他目录先生成ora文件,然后用它替换database的ora文件,重启系统

有的sys密码,其他的都好办了。

sql 复制代码
sqlplus /nolog
-- 使用密码ps123456连接sys用户,作为系统dba
conn sys/ps123456 as sysdba
-- 然后就可以修改所有用户的密码了
alter user sys identified by ps123456;

修改完还可以查看解锁啥的:

sql 复制代码
alter user SYSTEM account unlock;
-- 查看所有用户
select username from dba_users;
相关推荐
lzhdim10 分钟前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室41 分钟前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
TDengine (老段)1 小时前
TDengine Tag 设计哲学与 Schema 变更机制
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
YOU OU2 小时前
Spring IoC&DI
java·数据库·spring
Muscleheng3 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿4 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-4 小时前
Redis 命令
数据库·redis·缓存
小江的记录本4 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`5 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存
二宝哥5 小时前
离线安装maven
java·数据库·maven