2017-05-29 84 views
-1

在Java項目中工作,這是一個桌面應用程序(財務應用程序)。將Java嵌入式數據庫轉換爲獨立數據庫

我想,當用戶在脫機保存在嵌入式數據庫(H2數據庫),當所有的用戶數據都在網上或點擊一些按鈕保存所有的新數據的獨立數據庫(我的SQL Server)服務器。 現在,我在這種情況下失去了kindda。 有人可以描述這應該怎麼做或這是可能的。

+0

只是想了解,像你這是什麼意思離線。它是否像您的後端服務器停機或您的數據庫服務停機。你能否詳細闡述它來準確回答你的問題? – Nik

+0

這不是一個網絡app.this是PC application.so離線的意思是,用戶沒有連接到互聯網。 –

回答

1

基於假設你的問題似乎指向下面的要求,

  1. 你有本地H2數據庫
  2. MySQL可能是其他網絡上。
  3. 如果您節省應用的一些數據,那麼轉到H2數據庫
  4. 一個你連接到互聯網上的數據應該去mysql數據庫是由H2本地數據庫,其中應用程序運行目前存在的主機上。

解決方案:

你需要添加從一個數據庫無縫地將數據複製到另一個複製工具。

參考一個漂亮的工具:https://www.symmetricds.org/

讓我知道如果您有任何其他要求。提出問題時也請提供足夠的細節。謝謝。

+0

是的,這正是我的意思,但H2數據庫而不是服務器基礎數據庫它是一個嵌入式數據庫(就像sqlite) –

+0

這是真的。已完成將sqlite複製到sqlite的項目之一。對稱數據庫支持的對稱數據庫:https://www.symmetricds.org/doc/3.0/html/databases.html –

+0

不,我沒有用過它 –

0

使用複製工具複製從H2數據庫到MySQL數據庫的數據是單向的。

達到相同的另一種方式是,而不是創建客戶端機器上了沉重的內存數據庫實例可以在一些位置寫入文件客戶機上相同的數據,寫一個調度程序,它會檢查心臟的跳動的套接字,如果ping到您的服務器成功,您可以讀取文件並將數據上傳到您的實際數據庫服務器。另外編寫你自己的調度程序和數據上傳器將會給你更多的控制。

與任何複製工具,另一個問題是數據類型的兼容性。

不過,如果你想用工具 - 你可以看看鎢複製任何複製先走 - https://docs.continuent.com/tungsten-replicator-4.0/deployment-oracle-fromoracle.html