升级到Oracle 11g后,SAP数据库用户密码过期

升级到Oracle 11g后,数据库用户密码过期.

提示如下:ORA-28011: the account will expire soon;change your password now

 

这一般是由于Oracle 11g在默认的default概要文件中设置了“PASSWORD_LIFE_TIME=180”天导致;

 

这种情况的解决办法:

1、查看用户的proifle是哪个,一般是default:

   sql>SELECT username,PROFILE FROM dba_users;

升级到Oracle 11g后,SAP数据库用户密码过期_第1张图片


2、查看指定概要文件(如default)的密码有效期设置:

   sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT'AND resource_name='PASSWORD_LIFE_TIME';

升级到Oracle 11g后,SAP数据库用户密码过期_第2张图片

可以看到是180天限制. 


3、将密码有效期由默认的180天修改成“无限制”:

   sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIMEUNLIMITED;

   修改之后不需要重启动数据库,会立即生效。


4、检查SAPSchema用户状态:

SQL> select username, account_status from dba_users where username in('SAPSR3', 'SAPSR3DB');


因为我们是4.7系统,不存在SAPSR3, SAPSR3DB这2个用户,只存在SAP这个用户,所以我们用SAPZ3P来代替.

5、用BRCONNECT工具来重置用户状态和密码.

OS> brconnect -u / -f chpass -o

升级到Oracle 11g后,SAP数据库用户密码过期_第3张图片


6、重置密码后,检查SAP Schema用户的状态.

SQL> selectusername, account_status from dba_users where username in ('SAPZ3P', 'SAPSR3');



Done!!


SAP提供的BRConnect工具其实很强大,作用当然不限于此,大家可以自己多尝试着使用使用.


你可能感兴趣的:(BASIS中遇到的问题)