2012-03-23 21 views
7

uzak bir veritabanı vardır, bu yüzden aşağıdaki gibi bir tarayıcıdan uzaktan erişim etkin:bağlantısı uzak bir bilgisayardan DBMS olarak H2 Veritabanı kullanmak

webAllowOthers=true 

ama benim java uygulamasından sunucuya bağlanmaya çalıştığınızda i H2 bu hatayı alıyorum:

ekran görüntüsü
remote connections to this server are not allowed 

: Ayrıca enter image description here

Ve zaten (hata kodu kod Analyzer içine bakarak: 9011 7):

REMOTE_CONNECTION_NOT_ALLOWED = 90117 uzak bağlantılara izin verilmez ise, başka bir makineden TCP sunucusuna bağlanmaya çalışırken kod 90117 ile hata atılır

.

Veya, bir uygulamadan sunucusu başlayarak kullanım

java org.h2.tools.Server -tcp -tcpAllowOthers: Uzaktan bağlantıları olduğu gibi opsiyon -tcpAllowOthers kullanarak TCP sunucusunu başlatmak izin vermek için : Sunucu sunucusu = Server.createTcpServer ("- tcpAllowOthers"); server.start();

Ben tcpAllowOthers aktive etmek anlamıyorum

, bu .h2.server.properties mevcut değil ?

cevap

12

iki farklı sunucu vardır:

  • H2 Konsol aracını (GUI aracı) çalıştırmak için kullanılır Web Konsolu

    . Sadece bir tarayıcı tarafından erişilebilir.
  • istemci/sunucu modunu (jdbc:h2:tcp://localhost/~/test)

dosya .h2.server.properties yalnızca Web Konsolu sunucusu için kullanılır kullanırken JDBC, kullanan bir uygulama bağlanmasını sağlar TCP sunucusu. Sadece webAllowOthers=true'u destekler. Bu dosya TCP sunucusu tarafından kullanılmamaktadır.

TCP sunucusuna uzaktan erişimi etkinleştirmek için, -tcpAllowOthers seçeneğini kullanarak TCP sunucusunu başlatmanız gerekir. etkin uzaktan bağlantıları ile TCP sunucu, kullanmak gerekir ve Web Konsolu sunucusu (H2 Konsolu aracı) hem başlatmak için:

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

+0

+1 için (bu da bir tarayıcı başlar) hızlı yanıt, cevap zaten http://www.h2database.com/html/tutorial.html#console_settings, :-) –

İlgili konular