Domanda

Stiamo utilizzando System.Data.OracleClient e l'astratto classi base DbConnection, DbCommand (etc) per connettersi a Oracle.

Il collegamento funziona benissimo nelle nostre fasi di sviluppo. Durante messa in scena incontriamo l'errore ORA-12514: TNS: l'ascoltatore attualmente non sa di servizio richiesto nel descrittore di connessione

.

Il nostro obiettivo era quello di connettersi senza una voce di TNS, e fornendo tutte le informazioni pertinenti nella stringa di connessione (www.connectionstrings.com/oracle#19)

Posso confermare che SQL Plus connettersi allo schema desiderata dal server di gestione temporanea (l'ascoltatore è in ascolto). L'entrata TNS agganciato in SQLPlus soddisfa tutte le credenziali della stringa di query in fase di costruzione.

SERVER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));uid=myUsername;pwd=myPassword;

C'è un'installazione sul server abbiamo perso? Qualcosa che possiamo modificare?

Ogni aiuto è apprezzato.

È stato utile?

Soluzione

Un SID non è un nome di servizio. A nome del servizio è di solito un nome di database completo, mentre un SID è un identificatore breve.

Un nome di servizio potrebbe essere dbname.company.com in tutta SID è dbname. Un'istanza può effettivamente avere diversi nomi di servizi ad esso associati, ma solo uno SID.

Cambia la SERVICE_NAME al SID nella stringa di connessione, o specificare il nome del servizio per l'opzione SERVICE_NAME.

Altri suggerimenti

Se non ricordo male, ho avuto lo stesso problema fino a quando sono passato a servirvi di Oracle e OracleDbConnection e OracleDbCommand. Quelli generici non sempre istanziare il corretto fornitore in tutti i casi.

Se il client Oracle è in versione 10+, è possibile utilizzare anche EZConnect (che sta per Easy Connect metodo di denominazione ). La stringa di connessione sarebbe quindi simile a questa:

"Data Source=MyHost:MyPort/MyServiceName;User ID=myUserName;Password=myPassword"

In combinazione con Oracle Instant client , rende l'uso di Oracle si sentono quasi professionale! ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top