点击蓝色字关注“SQL数据库运维”,回复“SQL”获取2TB学习资源!
前言
很久之前在Oracle里创建的一个测试用户,今天想搞个测试用下这个用户,登录时突然登录不上去了,提示我“密码已过期”,让我输入新密码
正文
作为Oracle数据库刚入门的我本着按照系统提示进行下一步操作,输入密码
点击确定,系统又提示我下面这个(英语不好的,大致应该可以看懂吧),还是登录不上去。
温馨小提示:如果正在看文章的您英语賊垃圾,推荐一个小方法,截图发送至微信,然后点开大图,右键“翻译”即可(可能不太准确,但是大致意思是对的)。
翻译如下:
言归正传,回到刚刚说的修改密码的问题上,刚输入新的密码还是不行,那就想其他办法了。
再次打开PLSQL Developer 14 (64 bit)工具,使用具有SYSDBA或SYSOPER角色的管理员账户登录到数据库,这里我用的是下边这个账户登录,输入管理员账户的用户名和密码进行登录。
登录成功,运行以下命令来查看用户的密码状态:
--替换"your_username"为要修改密码的用户名
SELECT username, account_status, expiry_date FROM dba_users WHERE username='your_username';
--这里我的需要修改密码的用户名:JT_CS
SELECT username, account_status, expiry_date FROM dba_users WHERE username='JT_CS';
结果查询如下:
如果"account_status"列显示为"EXPIRED(GRACE)",则表示密码已过期,但用户仍然处于过渡期。如果"account_status"列显示为"EXPIRED",则表示密码已过期,并且用户被阻止登录。
可以看到用户名为“JT_CS”的用户显示“EXPIRED”,所以目前无论我怎么登录都登录不上去。
修改密码过期的问题,可以运行以下命令:
--替换"your_username"为要修改密码的用户名,"new_password"为新密码。
ALTER USER your_username IDENTIFIED BY new_passWord;
--修改用户名为:JT_CS的密码
ALTER USER JT_CS IDENTIFIED BY 123456789;
运行以下命令来确认密码已成功修改:
--确保"account_status"列显示为"OPEN"。
SELECT username, account_status, expiry_date FROM dba_users WHERE username='JT_CS';
查询结果如下:
修改完毕,登录试试
登录成功。
以上就是Oracle数据库用户名密码过期后无法进行用户登录的详细步骤,此方法只是其中的一种修改方式,如果您有更好的方法可以一起进行分享交流,当然,如果您发现文章中有瑕疵或者错误,也欢迎您的指正,大家一起进步,从“菜鸟”到“凤凰”的蜕变。
点击关注“SQL数据库运维”,后台或浏览至公众号文章底部点击“发消息”回复关键字:进群,带你进入高手如云的技术交流群。后台回复关键字:SQL,获取学习资料。
动动小手点击加关注呦☟☟☟