Using proxy user with special characters in the password the error ORA-1005 is raised
说明
Unable to connect using a proxy user with a special character in the password. The error raised is ORA-1005.
原因
The Oracle Doc 2901628.1 explains how to choose the passwords, some scenarios, and the different errors you can raise. -- Create the target user (scott) CREATE USER scott IDENTIFIED BY tiger;
-- Grant necessary privileges to the scott user GRANT CREATE SESSION TO scott; GRANT CREATE TABLE TO scott; GRANT CREATE VIEW TO scott;
-- Create the proxy user CREATE USER proxy_user IDENTIFIED BY tiger;
-- Grant necessary privileges to the proxy user GRANT CREATE SESSION TO proxy_user;
-- Authorize the proxy user to connect as the target user ALTER USER scott GRANT CONNECT THROUGH proxy_user;
Depending on the special character you can encounter different errors:
alter user proxy_user identified by "[tiger]"; sqlplus proxy_user[scott]/[tiger]@toad <--- it works from sqlplus but fails from TFO === Surrounding the password with double-quote solve the connection from TFO ====
alter user proxy_user identified by "tiger@"; sqlplus proxy_user[scott]/tiger@@toad <--- it fails from sqlplus and TFO sqlplus proxy_user[scott]/"tiger@"@toad <--- it work from sqlplus and TFO
alter user proxy_user identified by "tiger-"; sqlplus proxy_user[scott]/tiger-@toad <--- it works from sqlplus and TFO
解决办法
Solution: Depending on the special character it could be needed to surround the password with a double quote.