UbuntuとWindows(デュアルブート)の両方で、NTFSパーティションにあるMySqlデータベースファイルを使用したいと思います。それは機能しますか?落とし穴はありますか?
承認された回答:
はい、動作しますが、いくつかの癖があります。 MySQLはプラットフォーム間で同じファイル形式を使用するため、必要なのはデータディレクトリを共有することだけです。 1つの問題は、データディレクトリにubuntuの所有者およびグループとしてmysqlが必要なことです。また、Windowsは大文字と小文字を区別せず、Linuxは大文字と小文字を区別するため、すべての名前を統一してください。名前全体を小文字または大文字にしますが、それらを混在させないでください。
最初から最後まで;すでに設定している場合は、設定に合わせて微調整が必要になる場合があります:
- 両方のシステムにMySQLをインストールしてセットアップします。
- 実行中の場合はmysqlサーバーを停止します。
- 新しいNTFSパーティションを作成します。デバイス名をマークします(
sdXN
と呼びましょう) 今のところ)。 -
mysqlデータディレクトリをUbuntuから新しいパーティションに移動します。
mkdir /{mountpoint}/mysql_data sudo mv /var/lib/mysql /{mountpoint/mysql_data
mv
を使用する 権限を保存します。 -
新しいmysqlディレクトリを作成します
sudo mkdir /var/lib/mysql
-
NTFSパーティションを
/var/lib/mysql
にマウントします 。デバイス名を、NTFSパーティションを作成したときに取得したものに変更します。sudo mount /dev/{sdXN} /var/lib/mysql -t ntfs-3g -o uid=mysql,gid=mysql,umask=0077
-
起動時に自動マウントするには、パーティションのUUIDとロケールを見つけて、
/etc/fstab
を編集します。 。ls -l /dev/disk/by-uuid locale -a sudo gedit /etc/fstab UUID={number_found_with_the_ls-l} /var/lib/mysql ntfs-3g uid=mysql,gid=mysql,umask=0077,locale={your_locale}.utf8 0 0
-
/etc/mysql/my.cnf
の「datadir」パスを変更します/var/lib/mysql/mysql_data
を指す -
mysqlサーバーを起動してテストします。
-
Windows構成ファイル(
my.ini
)を編集します )そして「datadir」をX:/mysql_data
に設定します (X:
を置き換えます Windowsでマウントする場所)
UF.orgのトピック1442148から編集。
Ubuntuバージョンを動作させました。私はWindowsを持っていないので、部分的にテストされていません