2012-03-23 12 views
7

Io uso H2 Database come DBMS da un computer remoto, quindi mi ha consentito l'accesso remoto da un browser come segue:connessione ha un database remoto

webAllowOthers=true 

ma quando provo a connettersi al server dalla mia applicazione Java ottengo questo errore da H2:

remote connections to this server are not allowed 

screenshot: enter image description here

E anche già esaminando il codice Analyzer con (codice errore: 9011 7):

REMOTE_CONNECTION_NOT_ALLOWED = 90117

L'errore con il codice 90117 viene generata quando si tenta di collegarsi a un server TCP da un'altra macchina, se le connessioni remote non sono ammessi. Per consentire le connessioni remote, avviare il server TCP utilizzando le -tcpAllowOthers opzione come in:

java org.h2.tools.Server -tcpAllowOthers -TCP

Oppure, quando si avvia il server da un'applicazione, l'uso : Server server = Server.createTcpServer ("- tcpAllowOthers"); server.start();

Non capisco come attivare i tcpAllowOthers, non esiste in .h2.server.properties?

risposta

12

ci sono due server diverso:

  • il server della console Web che viene utilizzato per eseguire lo strumento H2 Console (lo strumento GUI). È accessibile solo da un browser.
  • server TCP che permette di collegare un'applicazione che utilizza JDBC, quando si utilizza la modalità client/server (jdbc:h2:tcp://localhost/~/test)

Il file .h2.server.properties viene utilizzato solo per il server Web Console. Supporta solo webAllowOthers=true. Questo file non è utilizzato dal server TCP.

Per abilitare l'accesso remoto al server TCP, è necessario avviare il server TCP utilizzando l'opzione -tcpAllowOthers. Per avviare sia il server console Web (lo strumento H2 Console) e server TCP con le connessioni remote abilitata, si avrebbe bisogno di utilizzare:

java -jar h2*.jar -web -webAllowOthers -tcp -tcpAllowOthers -browser 

(questo avvia anche un browser)

+0

+1 per la risposta rapida, la risposta è già sul http://www.h2database.com/html/tutorial.html#console_settings, :-) –

Problemi correlati