スーパーユーザーは、この問題を解決する方法について、順を追って説明しています。
以下は、同じことを行うための別の指示です
http://www.ubuntugeek.com/how-to-change-the-mysql-data-default-directory.html
ここに再投稿されます。スーパーユーザーにできる場合は、オリジナルに投票してください。
パーミッションに関する一般的な混乱の後、問題はパーミッションとパスが正しくないことではなく、AppArmorがmysqlによる新しい場所への読み書きを妨げていることに気づきました。
これは私の解決策です:
まず、MySQLを停止して、いじっている間に奇妙なことが起こらないようにします。
$ sudo stop mysql
次に、すべてのデータベースディレクトリを新しいホームに移動します。
$ sudo mv /var/lib/mysql/<all folders> /new-mysql-dir/
ファイルは移動しないでください。ファイルはmysqlによって生成され、フォルダー(データベース)を移動するだけです。
次に、mysqlが新しいフォルダーを使用できるようにAppArmorに丁寧に依頼します。
$ sudo vim /etc/apparmor.d/usr.sbin.mysqld
行を追加します。
/new-mysql-dir/ r,
/new-mysql-dir/** rwk,
次に、mydirにdatadirが移動したことを伝えます。
$ sudo vim /etc/mysql/my.cnf
行を変更します。
datadir=/var/lib/mysql
に:
datadir=/my-new-db-dir/
注:データベースのセットアップによっては、innodb-data-home-dirなども変更する必要がある場合があります。
次に、AppArmorを再起動して新しい設定を読み取ります。
$ sudo /etc/init.d/apparmor restart
そして、新しいdatadirを使用してMySQLを再度起動します。
$ sudo start mysql
お役に立てれば!