Come usare sqlplus per connettersi a un database Oracle situato su un altro host senza modificare il mio tnsnames.ora
Voglio connettermi a un database oracle situato su un altro host usando sqlplus. Questa pagina mi ha suggerito di aggiungere un elemento sul mio tnsnames per connettermi a quel database
local_SID =
(DESCRIPTION =
(ADDRESS = (PROTOCOL= TCP)(Host= hostname.network)(Port= 1521))
(CONNECT_DATA = (SID = remote_SID))
)
e poi usarlo in sqlplus
sqlplus user/pass@local_SID
Tuttavia, nelle mie circostanze modificare i tnsnames locali non è possibile. È possibile connettersi a un database remoto semplicemente usando l'argomento sqlplus senza dover cambiare i tnsnames? Qualcosa come
sqlplus user/pass@remote_SID@hostname.network ;( I know, this one is not valid)
81
3
Forse, e questo potrebbe dipendere dall'ambiente della linea di comando che stai usando, hai bisogno di citare la stringa, qualcosa come
o
Puoi usare easy connect per questo:
Per abilitare easy connect sulla tua macchina, devi aggiungerlo al
NAMES.DIRECTORY_PATH
in sqlnet.ora, ad esempio:Se il tuo ascoltatore è su una porta non predefinita usa
...@hostname.network:port/...
.In realtà sembra che tu debba fornire un nome di servizio, non un SID; potrebbero essere gli stessi, ma se non lo sono dovrai ottenerlo dal server.
Create una copia del file tnsnames.ora in una directory in cui potete scrivere, modificate il file di conseguenza, poi impostate la variabile d'ambiente TNS_ADMIN sulla posizione di quella directory.
es: