網站首頁 編程語言 正文
問題現象:
今天在更改數據庫數據的時候,程序報錯了,如下:
ORA-28001:the password has expired
問題分析:
很顯然,報錯原因就是:
密碼已過期!
所以現在需要做的事情只有兩件:
1.修改密碼的過期時間
2.修改/重置密碼
這里分析一下為什么要這樣做:
1.修改密碼的過期時間:這是因為Oracle Database 11g 版本的Oracle數據庫有一項默認配置,就是密碼過期時間默認為180天(6個月左右);
通過sysdba身份可以登錄Oracle數據庫,可以查看自己的Oracle數據庫版本和數據庫默認密碼保質期的配置:
LIMIT(180):保存時長為180天
修改為不限期:UNLIMITED,這樣以后就不會再出現這個密碼過期的問題了,此處需結合項目需求,有些公司是建議定期更換密碼的,因此不會設置為UNLIMITED;
2.修改密碼:再密碼過期后,原密碼就失效了,因此需要重新修改密碼/重置密碼。
解決方法:
1.查詢默認的密碼保存時間
SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
2.修改為不限期,若有定期更換密碼的需求,則可以設置為每個密碼更換周期所需的天數(如:30:,表示每過30天就需要重置一次密碼)
不限期:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
30天的密碼有效期:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 30;
3.確定密碼過期的用戶,如果不確定,可以通過查詢所有用戶,并結合用戶的創建時間和當前時間的時間差,推測出密碼過期的用戶:
select * from all_users;?
4.重置密碼:
alter user 密碼已過期的USERNAME identified by 密碼;
重置完即可正常訪問數據庫,不需要重啟數據庫!
總結
原文鏈接:https://blog.csdn.net/weixin_42585386/article/details/116295765
相關推薦
- 2023-02-09 python如何尋找主串中所有指定子串下標_python
- 2021-12-15 vscode?ssh安裝librosa處理音頻的解決方法_其它綜合
- 2022-07-12 git如何上傳本地項目
- 2022-11-11 docker修改默認存儲位置圖文教程_docker
- 2022-04-18 python中出現invalid?syntax報錯的幾種原因分析_python
- 2022-02-20 千分位保留兩位小數,出現“toFixed() is not a function”的解決辦法
- 2022-12-15 詳解C#中HttpClient的用法及相關問題的解決方法_C#教程
- 2022-06-21 C語言實現順序表的全操作詳解_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支