Oracle密码过期处理

当Oracle数据库的密码过期时,系统会提示ORA-28001错误。本文将详细介绍如何将密码设置为永不过期,修改密码的步骤,以及如果账户被锁定时如何解锁,并提供批处理方式生成SQL文件的方法。

数据库密码过期

alter profile default limit password_life_time unlimited; alter user itempv2 identified by 123456; commit;

1.系统提示 ORA-28001

 //ORA-28001: the password has expired
 select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';

2. 修改为unlimited

alter profile default  limit password_life_time unlimited; 
commit;

3. 修改密码

alter user XXXUSER identified by Welcome1;

4. 如果账号被锁住,则需要解锁命令

//如果账号被锁住,则需要解锁命令
alter user XXXUSER identified by oracle account unlock; 

写成批处理方式(会在文件夹中生成*.SQL 文件)

@echo off
goto End
 
:SetPasswordUnlimited
echo 设置密码永过期... 
echo alter profile default  limit password_life_time unlimited;>>%~dp0SetPasswordUnlimited.sql
echo commit;>>%~dp0SetPasswordUnlimited.sql
echo exit;>>%~dp0SetPasswordUnlimited.sql
sqlplus sys/%password%@127.0.0.1 as sysdba "@%~dp0SetPasswordUnlimited.sql"
del /F/Q "%~dp0SetPasswordUnlimited.sql"
echo 设置密码永过期.
goto End

:AlertPassword
echo 更改用户密码... 
set /p userName=输入用户名:
set /p userPassword=输入密码:
echo alter user %userName% identified by %userPassword%;
echo alter user %userName% identified by %userPassword%;>>%~dp0AlertPassword.sql
echo commit;>>%~dp0AlertPassword.sql
echo exit;>>%~dp0AlertPassword.sql
sqlplus sys/%password%@127.0.0.1 as sysdba "@%~dp0AlertPassword.sql"
del /F/Q "%~dp0AlertPassword.sql"
echo 更改用户密码.
goto End

:UnlockUser
echo 解锁用户...
set /p userName=输入用户名: 
echo alter user %userName% identified by oracle account unlock;>>%~dp0UnlockUser.sql
echo commit;>>%~dp0UnlockUser.sql
echo exit;>>%~dp0UnlockUser.sql
sqlplus sys/%password%@127.0.0.1 as sysdba "@%~dp0UnlockUser.sql"
del /F/Q "%~dp0UnlockUser.sql"
echo 解锁用户.
goto End 

:CheckProfiles
set /p userName=输入用户名:
set /p password=输入密码: 
echo select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';>>%~dp0CheckProfiles.sql
sqlplus %userName%/%password%%@127.0.0.1 "@%~dp0CheckProfiles.sql"
goto End

:End 
echo 0:QUIT  1:设置密码永过期 2:更改用户密码  3:解锁用户  4:查看密码过期配置

set /p value=请输入1-4if %value%==0 exit
if %value%==4 goto CheckProfiles

set /p password=输入SYS密码:
if %value%==1 goto SetPasswordUnlimited
if %value%==2 goto AlertPassword
if %value%==3 goto UnlockUser


goto End 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ynchyong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值