admin 发表于 2015-9-10 17:08:35

88.Teamcenter 的账号infodba数据库oracle过期的处理

Teamcenter - Oracle 11g and the expiration date for "infodba" Oracle user

Problem:
If your Server is using Oracle 11g, the Teamcenter users may have a connection problem and
obtain the following message after 180 days.
Login was unsuccessful.: Problems encountered logging into TCServer:
... database
Cause: Unable to bind to server running on localhost: 1572

Analysis:
This issue seems to be due to the Oracle 11g changes. All the Oracle services are started
correctly. However, when you try to connect to the database using sqlplus you can obtain the
following error message:
ORACLE_HOME=your_oracle_home
ORACLE_SID=your_sid
>%oracle_home%\bin\sqlplus /nolog
SQL> connect
infodba
infodba
ERROR:
ORA-28002: the password will expire within 10 days

In the user tcserver.syslog file we find the error message:
Connect failed (-28002) for 'infodba' at ***
The "infodba" Oracle user seems to be created using the default oracle profile which has an
expiration date of 180 days. When the Teamcenter user tries to connect to the Oracle database
an error message, ORA-28002, is sent and the connection fails.

Solution:
Find the infodba profile using SQLPLUS:
SQL> select profile from dba_users where username='INFODBA';
List the profile caracteristics:
SQL> select resource_name,liMit from dba_profiles where profile='DEFAULT';
Check the PASSWORD_LIFE_TIME.
Modify the profile and specify an unlimited PASSWORD_LIFE_TIME:
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Change the password. It will not expire again.
If you don't change the password, it will expire because it was created using a different profile at
the time.
SQL> select expiry_date from dba_users where username ='INFODBA';
=> you obtain an expiration date
SQL>alter user infodba identified by tempo ; ( define a temporary pwd)
SQL> alter user infodba identified by infodba ; ( specify your original infodba
password)
SQL> select expiry_date from dba_users where username ='INFODBA';
=> you have no expiration date.


Remarks:
Because we have redefined the same original infodba password, the TC_DB_CONNECT variable
in %TC_DATA%\tc_profilevars.bat is always alive and correct.
Another modification can be done on the default profile:

ALTER PROFILE DEFAULT LIMIT
FAILED_LOGIN_ATTEMPTS UNLIMITED
PASSWORD_LIFE_TIME UNLIMITED;

页: [1]
查看完整版本: 88.Teamcenter 的账号infodba数据库oracle过期的处理