一.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