mysql data_dirの変更によって発生するエラー問題を解決する

mysql data_dirの変更によって発生するエラー問題を解決する

今日は、新しく購入した Alibaba Cloud ECS 環境 (Ubuntu 16.04 LTS) をセットアップしました。新しくマウントしたディスク (/mnt にマウント) に MySQL データを保存する必要があります。まず、MySQL サービスを停止し、MySQL データが保存されている場所を確認します。

vi /etc/mysql/mysql.conf.d/mysqld.cnf

データが保存されているディレクトリであるdatadir=/var/lib/mysql見つけたので、これをdatadir=/mnt/mysqlに変更して保存し、最後に mysql に保存されたデータを /mnt にコピーしました。

cp -r /var/lib/mysql /mnt
chown -R mysql:mysql /mnt/mysql

コピーが完了したら、すべての準備が整ったと思ったので、mysql サービスを開始しました。

systemctl で MySQL を起動します

しかし、起動に失敗したことがわかったので、mysql エラー ログを確認しました。

テール -f -n100 /var/log/mysql/error.log

エラー情報は次のとおりです。

[警告] テストファイル /mnt/mysql/iZwz9c03srb2lq9l374if5Z.lower-test を作成できません

よく考えてみると、mysql の設定に問題はないはずです。 apparmor の設定を確認します。

vi /etc/apparmor.d/usr.sbin.mysqld

次の構成が見つかりました:

# データディレクトリへのアクセスを許可する
/var/lib/mysql/r、
/var/lib/mysql/** rwk、

なんとも落とし穴です。mysql datadir的/var/lib/mysql変更したのですが、ここでもまだ制限されているので、次のように変更しました。

# データディレクトリへのアクセスを許可する
/var/lib/mysql/r、
/var/lib/mysql/** rwk、
/mnt/mysql/ r,
/mnt/mysql/** rwk、

保存。 apparmor サービスを再起動します。

サービスapparmorの再起動

次に、mysql サービスを再度開始します。

systemctl で MySQL を起動します

ついにサービスが正常に開始されました。 。 。

上記は、mysql data_dir の変更によって発生するエラー問題を解決するための編集者による紹介です。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残してください。すぐに返信いたします。123WORDPRESS.COM ウェブサイトをご愛顧いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • データディレクトリの変更によりMysqlが起動できない問題の解決方法

<<:  nginxプロキシsocket.ioサービスの落とし穴の詳細な説明

>>:  Node.js の TCP 接続処理のコア プロセス

推薦する

VUE ユニアプリカスタムコンポーネントについての簡単な説明

1. 親コンポーネントはpropsを通じて子コンポーネントにデータを渡すことができる2. 子コンポー...

MySQL ベストプラクティス: パーティションテーブルの基本タイプ

MySQL パーティションテーブルの概要MySQL の人気が高まるにつれて、MySQL に保存される...

SSH ポート転送、ローカル ポート転送、リモート ポート転送、動的ポート転送の詳細

パート 1 SSH ポート転送の概要カフェで無料Wi-Fiを利用しているとき、誰かがあなたのパスワー...

Dockerコンテナでユーザーを切り替えるときに権限が不足する問題を解決する方法

Docker コンテナでユーザーを切り替えると、権限が不十分であるというメッセージが表示されます。解...

Centos7 Zabbix3.4 メールアラーム設定(メール内容がxx.bin添付ファイルになる問題の解決)

目次1. 監視Linuxホストを追加する2. メールボックスを設定する1. 監視Linuxホストを追...

Node.js の非同期ジェネレータと非同期反復の詳細な説明

序文ジェネレーター関数は、async/await が導入される前から JavaScript に存在し...

Docker がデータベースのデプロイに適さない 7 つの理由のまとめ

Docker は過去 2 年間で非常に人気が高まっています。開発者はすべてのアプリケーションとソフト...

YUMを使用してdockerをインストールする方法

次の図に示すように: Centos 7.0以上であれば問題ありません。現在のシステム カーネル バー...

MySQLでSELECT文が実行される仕組み

目次1. マクロの観点からMySQLを分析する2. SQL ステートメントを実行するには、どの程度の...

JavaScriptタイマーの詳細な説明

目次簡単な紹介間隔の設定説明するパラメータ戻り値使用法タイムアウトの設定説明するパラメータ使用法:タ...

HTML チュートリアル: 順序付きリスト

<br />原文: http://andymao.com/andy/post/103.h...

Vueカスタムv-has命令、ボタン権限判定の手順

目次アプリケーションシナリオ簡単に言えば、カスタム指示基本概念グローバルカスタマイズローカルカスタマ...

CSS3は赤い封筒を振る効果を実現します

赤い封筒の揺れ効果を実現するには要件があります。これまでやったことがないので、記録しておきます。ヘヘ...

MySQL 5.7 のパフォーマンスと sys スキーマの監視パラメータの説明 (推奨)

1. パフォーマンス スキーマ: はじめにMySQL 5.7 では、多数の新しい監視項目の導入、ス...