I have a host containing multiple DBs and the connection to the DBs need to be SSL enabled. Since each DB has a unique wallet, I specify the wallet location in sqlnet.ora as:


This way the listener can use the correct wallet depending on the value of ORACLE_UNQNAME variable. But I have two issues with this method.

  1. Since ORACLE_UNQNAME is a shell environment variable a client has no control over it.

  2. Even when connecting from the same machine I have to bounce the listener after exporting ORACLE_UNQNAME value.

What is the solution for such a scenario ?

  • Each listener port has only one server certificate to present. The wallet location is interpreted at Listener start only. It’s not possible to have different wallets based on the request (I think it does not support different wallets per port or per SNI)
    – eckes
    Nov 7, 2018 at 21:15

1 Answer 1


You can change the $ORACLE_UNQNAME to $ORACLE_SID. Assuming each Container DB has a unique SID, you can start the CDB with the right wallet as ORACLE_SID is required to start the database anyway.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.