回答:
ファイルシステムがマウントされていないときは、マウントポイントの権限ではなく、マウントされたファイルシステムの権限を変更する必要があります。だから、mount /var/lib/mysql
それからchown mysql.mysql /var/lib/mysql
。これにより、MySQL DBファイルシステムのルートの権限が変更されます。
基本的な考え方は、DBを保持しているファイルシステムを変更する必要があり、マウントポイントではなく、そのパスに問題がある場合を除きます(たとえばlib
、rootのみが読み取れる)。
また
mount device mount-point -o uid=foo -o gid=foo
グループも変更する必要がある場合
これらのようなuidとgidを追加します。
/dev/mapper/db-db /var/lib/mysql ext3 relatime,rw,exec,uid=frank,gid=www-group 0 2
実際のユーザー/グループ名(スペースに注意)または数値のuid、gid値を使用できます。アクセスのトラブルを防ぐのにさらに役立つrwとexecを追加しました(実稼働サーバーではなく開発システムにいると仮定します)。
PS:さらにアクセスするには(必要な場合)、「、dir_mode = 0777、file_mode = 0777」を追加します
relatime
です。 lwn.net/Articles/244829
uid
とgid
フラグは、Linuxパーミッションスキーマをサポートしていないファイルシステム(FATやNTFSなど)でのみ機能するためです。参照してくださいaskubuntu.com/a/34068/329506
私は通常、空のアンマウントされたディレクトリでこれを行います
chmod 777 <directory>
それから
chown -R mysql.mysql <directory>
次に/ etc / fstabでdo
<device> <directory> ext3 user,defaults 0 2
次に使用する
mount -a
/ etc / fstabにリストされているすべてのファイルシステムをマウントします。
これは私のために動作します。試してみる
foo
は、マウントポイントの所有者にしたいユーザーの名前です。また、gidfoo
はユーザーグループの名前であり、通常はユーザー名と同じです。疑わしい場合ls -l
は、ホームディレクトリに入力して、最初と2番目の名前をそれぞれ確認してください。