一.Linux修改Oracle密碼期限爲無限
Oracle提示錯誤消息ORA-28001: the password has expired,是由於Oracle11G的新特性所致, Oracle 11g創建用戶時缺省密碼過期限制是180天(即6個月), 如果超過180天用戶密碼未做修改則該用戶無法登錄。
Oracle公司是爲了數據庫的安全性默認在11G中引入了這個默認功能,但是這個默認的功能很容易被DBA或者是開發人員給疏忽,一旦密碼180天未修改過,就會出現這樣的問題。
解決方法:
1.進入到oracle:su - oracle
sqlplus /nolog
conn /as sysdba
2.查看用戶的proifle是哪個,一般是default:
sql>SELECT username,PROFILE FROM dba_users;
3.查看指定概要文件(如default)的密碼有效期設置:
sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
4.將密碼有效期由默認的180天修改成“無限制”:
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
5.已經被提示的帳戶必須再改一次密碼
sql> alter user 用戶名 identified by 密碼;
修改之後不需要重啓動數據庫,會立即生效;
二.Linux下啓動、關閉Oracle
1.啓動oracle:
su - oracle
sqlplus /nolog
conn /as sysdba
sql> startup
exit
lsnrctl start
exit
2.關閉oracle:
su - oracle
sqlplus /nolog
conn /as sysdba
shutdown immediate
exit
lsnrctl stop
exit