2012-03-13 22 views
2

私はLinuxとWindows MySQLのインストールで使用する単一のInnoDBデータベースが必要です(LinuxからWindowsへの私のPCの起動時)。私は別のPCに同じデータベースを移動することができれば素晴らしいだろう。データのインポート/エクスポートは、データベースが膨大なため(4 GiB以上 - コピーが簡単ですが、エクスポート/インポートがかなり長いため)、ほとんどオプションではありません。これはどのように達成できますか?"移植可能な" MySQL InnoDBデータベースを作成するには?

+1

最も簡単なのは、DBを別のサーバーにホストし、必要に応じてLinuxまたはWindowsコンピュータを使用してネットワーク経由で接続することです。 「サーバ」は別のコンピュータである必要はなく、単なる仮想マシンでもかまいません。 –

+1

DBMSの変更が複雑すぎない場合は、SQLiteをオプションにできますか?しかし、 "大きな" SQLite DBにはいくつかの問題があります:http://stackoverflow.com/questions/784173/what-are-the-performance-characteristics-of-sqlite-with-very-large-database-fileよくhttp://www.sqlite.org/whentouse.html –

+0

Jameさんの答えをエキスパンドすると、余分なサーバーがない場合は、仮想マシンを別のパーティションに配置して、VMを実行できますLinuxまたはWindowsから。両方のオペレーティングシステムで別々のパーティションをマウントする方法を理解する必要があります。 – GreyBeardedGeek

答えて

1

あなたはその後、Windowsパーティション上のMySQLデータベースをインストールし、データベースフォルダのLinuxでは

へのパスを取得する必要があり、MySQLはにそのデータを保存「の/ var/libにMySQLは/ /」そうそこに行くと作成

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

はあなたが必要とする次のコマンドを使用して、Windowsのパーティション内のフォルダへのシンボリックリンクには、このコマンドを実行するには、root、または使用のsudoをするように。

これにより、両方のオペレーティングシステムのMySQLサーバで同じデータベースフォルダが表示されます。

注:これが信頼できる解決策であるかどうかを確認するためにいくつかのテストを行い、ミッションクリティカルなプロジェクトを実行している場合は、より信頼性の高い設定に従うべきです。

+1

+1。これはうまくいくはずです。 NTFSでは大文字と小文字は区別されませんが、extはです。つまり、 'SELECT * FROM tABeL'はWindowsでは動作しますが、Linuxでは動作しない可能性があります。 – kba

+0

私は大文字と小文字の区別がないことを忘れていました。それを指摘してくれてありがとう –

関連する問題