2012-03-13 90 views
2

我需要一個InnoDB數據庫用於Linux和Windows MySQL安裝(當我將PC啓動到Linux或Windows時)。如果我可以將同一個數據庫移動到不同的PC上,那將會很棒。由於數據庫非常龐大(超過4 GiB - 容易複製,但導出/導入相當長),導入/導出數據不是一種選擇。這怎麼能實現?如何製作一個「便攜式」的MySQL InnoDB數據庫?

+1

最簡單的事情是將DB託管在單獨的服務器上,並在需要時使用Linux或Windows計算機通過網絡連接到它。請記住,「服務器」不需要是另一臺計算機,它可能只是一臺虛擬機。 – 2012-03-13 19:45:29

+1

如果更改DBMS不是太複雜,SQLite可以成爲一個選項嗎?在「大」SQLite數據庫有一些問題,但是:http://stackoverflow.com/questions/784173/what-are-the-performance-characteristics-of-sqlite-with-very-large-database-file檢查爲以及http://www.sqlite.org/whentouse.html – 2012-03-13 19:48:11

+0

擴展Jame的答案,如果你沒有額外的服務器掛起,你可以把虛擬機放在一個單獨的分區上,這樣你就可以運行VM從Linux或Windows。您只需要弄清楚如何在兩個操作系統下安裝單獨的分區。 – GreyBeardedGeek 2012-03-13 20:27:40

回答

1

您應該然後安裝在Windows分區上的MySQL數據庫,並獲得了數據庫文件夾

在Linux中的路徑,在MySQL保存數據「的/ var/lib中/ mysql /下」,所以去那裏創建使用以下命令在Windows分區中創建一個符號鏈接

ln -s /path/to/database/on/windows/ /var/lib/mysql/databasename 

您需要以root身份運行此命令或使用sudo。

這將使兩個操作系統上的MySQL服務器看到相同的數據庫文件夾。

注意:您應該進行一些測試以檢查這是否是可靠的解決方案,如果您正在執行關鍵任務項目,則應遵循更可靠的設置。

+1

+1。這應該工作。請注意,NTFS不區分大小寫,但分機是。這意味着'SELECT * FROM tABeL'可以在Windows上運行,但可能不會在Linux上運行。 – kba 2012-03-25 03:37:22

+0

我忘了提及不區分大小寫問題,謝謝指出 – 2012-03-25 10:07:16