Create a dblink in oracle9i or 10g to point to an oracle11g database. After the user name and password are configured, the test will throw the following error code:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from <link_name>
Then I was overwhelmed. I searched the internet and found an English explanation, as shown below:
Cause
The following Bug 6738104 was logged for this issue which was closed as not a bug saying the cause being introduction of password case sensitivity feature in 11g
When one creates a database link connection, a user name and password for the connection needs to be defined. when the database link is created, the password is case sensitive. before a user can connect from a pre-release 11g database to a 11g release database and as the password case sensitivity is enabled by default, you must re-create the password for this database link using all uppercase letters.
The reason you need to re-create the password using all uppercase letters is so that it will match how Oracle Database stores database link passwords. oracle Database always stores this type of password in uppercase letters, even if the password had originally been created using lower or mixed case letters. if case sensitivity is disabled, the user can enter the password using the case the password was created in.
Solution
++ As the password case sensitivity is enabled by default, create the database link to the 11g database as shown below:
In my understanding, when 9i or 10g is connected to 11g, the password is automatically converted to uppercase. Therefore, if the password of the 11g Database User contains lowercase letters, change all to uppercase and then connect with 9i. The problem is solved.
Alter user abc identified by ABC;
Author "love learning"