Oracle用户登录不上怎么办,可能是这个原因

2024年 1月 15日 101.7k 0

点击蓝色字关注“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,获取学习资料。

        动动小手点击加关注呦☟☟☟

        相关文章

        Oracle如何使用授予和撤销权限的语法和示例
        Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
        下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
        社区版oceanbase安装
        Oracle 导出CSV工具-sqluldr2
        ETL数据集成丨快速将MySQL数据迁移至Doris数据库

        发布评论