2012-05-02 15 views
8

Sto provando a connettere un database con un progetto java. Dopo aver letto alcuni tutorial e il supporto del corso, ho capito che ho bisogno di creare una nuova fonte di dati sotto l'Admin Console.derby origini dati - connessione rifiutata

Quindi, ho effettuato l'accesso alla console di amministrazione, quindi ho navigato in Risorse -> JDBC -> Origini dati -> Nuovo; compilato i campi e quando sto testando la connessione, l'errore che ottengo è questo:

messaggi L'operazione di connessione di prova non riuscita per MyDB fonte di dati sul server server1 a RO2CVG6CNode01 nodo con la seguente eccezione: java .sql.SQLNonTransientException: java.net.ConnectException: Errore connessione al server localhost sulla porta 1527 con messaggio Connessione rifiutata: connect.DSRA0010E: stato SQL = 08001, codice errore = 40.000. Visualizza i log JVM per ulteriori dettagli.

Non so dove sia il problema. Forse con il nome del database: jdbc: derby: D: \ MyDB? Qualcuno mi può aiutare per favore? Ho anche provato a utilizzare solo MyDB, dopo this tutorial.
Ma ancora non funziona.

+1

Errore di connessione al server localhost sulla porta 1527 -> questo errore dice che non esiste un database in esecuzione sulla porta 1527. – oers

+0

assicurarsi, che il server sia in esecuzione: http: //www.myeclipseide .com/documentazione/Quickstarts/blueedition/blue_websphere_data_source/images/myeclipse_derby_server_running.png – oers

+0

Questo link sarà utile: http://stackoverflow.com/a/30272670/3728901. Se facciamo passo dopo passo correttamente, eviteremo gli errori. –

risposta

27

Avete il Derby Server in esecuzione?

E 'molto probabile che si sta tentando di connettersi a un database senza il server reale in esecuzione sulla porta 1527.

Si potrebbe provare a stabilire una connessione utilizzando la shell a riga di comando/linux - a seconda di quale sistema operativo si è utilizzando.

Prova questo se ti piace:

  1. Aprire un prompt dei comandi
  2. Passare alla directory di installazione Derby
  3. Passare alla directory "bin" (Nota: Passare seguito alla cartella NetworkServer se esiste)
  4. Tipo "startNetworkServer" e premere Invio

Si dovrebbe ottenere un messaggio che dice somethi ng come questo:

2012-08-29 10: 57: 16.559 GMT: gestore di sicurezza installato utilizzando la politica di sicurezza del server di base. 2012-08-29 10: 57: 16.809 GMT: Apache Derby Network Server - 10.6.2.1 - (999.685) ha iniziato e pronto ad accettare connessioni sulla porta 1527

Se non, allora forse si potrebbe verificare il firewall (commenti invitati qui :)

Se lo fai, allora si potrebbe verificare la vostra connessione utilizzando il seguente metodo:

  1. Aprire un'altra prompt dei comandi
  2. Passare alla directory di installazione Derby
  3. Passare alla directory "bin"
  4. Tipo "ij" e premere Invio
  5. Digitare il seguente:

    connect 'jdbc:derby://localhost:1527/MyDB'; 
    

    ... e premere Invio

Se tutto va bene, si otterrà il "ij>" pronta indietro.

Da qui è possibile inserire alcune query SQL per verificare ulteriormente la connessione.

In caso contrario, potrebbero esserci altri problemi.

Se si sta creando il database per la prima volta nel derby, allora si dovrebbe usare questo al posto del punto 5 di cui sopra:

 connect 'jdbc:derby://localhost:1527/MyDB;create=true'; 

... e premere Invio

Speriamo che dopo facendo queste cose, otterrai una connessione. Nell'ultimo caso, si otterrà almeno un nuovo database chiamato MyDB attivo sul server Derby. Se il tuo database originale (MyDB) è relativamente piccolo, allora potrebbe essere più veloce ricostruirlo di nuovo per qualsiasi scopo tu abbia bisogno.

Inoltre, se si stabilisce una connessione, è possibile provare altri strumenti che si utilizzano per lo sviluppo del database, poiché è stata eliminata almeno la possibilità che la connessione sia il problema.

Assicurati di controllare il numero di porta riportato dal passaggio 4. Di solito è 1527. In caso contrario, modifica il numero di porta nel Passaggio 5 (o il suo comando di sostituzione per un nuovo database) per qualsiasi porta indicata nel messaggio di Derby.

Spero che questo aiuti e buona fortuna :)

Wayne Riesterer

+1

+1 per la spiegazione descrittiva. – dShringi

+0

+1 per questo grande spiegazione dettagliata .. – EsmaeelQash

1

Controllare la documentazione Apache Derby here .....

Configurare l'ambiente per usare il driver JDBC Derby Client di rete

Per utilizzare il driver Derby Network Client JDBC, impostare CLASSPATH in modo che includa i file jar elencati di seguito:

  • derbyclient.jar: contiene il driver JDBC
  • derbytools.jar: opzionale, fornisce lo strumento ij

È possibile impostare il CLASSPATH esplicitamente con il comando riportato di seguito: di Windows:

C:\> set CLASSPATH=%DERBY_INSTALL%\lib\derbyclient.jar;%DERBY_INSTALL%\lib\derbytools.jar;. 

UNIX:

$ export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:. 

quindi provare la creazione di una banca dati risultati simili dopo aver inserito il comando ij ad una richiesta ..... ij> collegare

jdbc:derby://localhost:1527/Chapter01DB;create=true; 
1
  1. Scarica derby al seguente percorso:

    /home/ <user_directory> /apache-derby/ 
    
  2. Setup classpath/percorsi come di seguito: server di rete

    export DERBY_HOME=/home/<user_directory>/magister-database 
    
    export DERBY_INSTALL=/home/<user_directory>/apache-derby/db-derby-10.11.1.1-bin 
    
    export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:$CLASSPATH 
    
  3. Inizio:

    /home/<user_directory>/apache-derby/db-derby-10.11.1.1-bin/bin/startNetworkServer 
    
  4. comando Esegui derby linea come di seguito:

    java org.apache.derby.tools.ij 
    
    connect 'jdbc:derby://localhost:1527//home/<user_directory>/<database-directory>/<database-name>'; 
    
    show tables; 
    
    disconnect; 
    
    exit;