Linux で MySQL データベースのデータ ファイル パスを変更する手順

Linux で MySQL データベースのデータ ファイル パスを変更する手順

rpm インストール方法を使用して MySQL データベースをインストールした後、データ ファイルのデフォルト パスは /var/lib/mysql になります。ただし、ルート ディレクトリはデータ ファイルの保存には適していません。

元のパス: /var/lib/mysql

ターゲットパス: /home/mysql_data/mysql

Linux システムバージョン: centos7.6

MySQL データベース バージョン: 5.7.25

ステップ:

1. ターゲットパスを作成する

mkdir -p /home/mysql_data

2. MySQLをシャットダウンする

systemctl stop mysqld

3. データファイルをコピーする

cp -arp /var/lib/mysql /home/mysql_data

4. 設定ファイル/etc/my.cnfを変更する

データディレクトリとソケットの元のパスをターゲットパスに変更します

データディレクトリ=/home/mysql_data/mysql
ソケット=/home/mysql_data/mysql/mysql.sock

5. MySQLサービスを開始する

systemctl start mysqld

注記:

1. エラーは次のとおりです。

2019-12-22T08:32:42.430564Z 0 [エラー] InnoDB: ファイル操作でオペレーティング システム エラー番号 13 が発生しました。
2019-12-22T08:32:42.430599Z 0 [エラー] InnoDB: このエラーは、mysqld にディレクトリへのアクセス権がないことを意味します。
2019-12-22T08:32:42.430616Z 0 [注記] InnoDB: 一時テーブル用の共有テーブルスペースの作成
2019-12-22T08:32:42.430898Z 0 [エラー] InnoDB: innodb_temporary データ ファイル 'ibtmp1' は書き込み可能である必要があります
2019-12-22T08:32:42.430923Z 0 [エラー] InnoDB: innodb_temporary データ ファイル 'ibtmp1' は書き込み可能である必要があります
2019-12-22T08:32:42.430936Z 0 [エラー] InnoDB: 共有 innodb_temporary を作成できませんでした。
2019-12-22T08:32:42.430952Z 0 [エラー] InnoDB: プラグインの初期化がエラーで中止されました 一般的なエラー
2019-12-22T08:32:43.038973Z 0 [エラー] InnoDB: ファイル操作でオペレーティング システム エラー番号 13 が発生しました。
2019-12-22T08:32:43.039021Z 0 [エラー] InnoDB: このエラーは、mysqld にディレクトリへのアクセス権がないことを意味します。
2019-12-22T08:32:43.039037Z 0 [エラー] プラグイン 'InnoDB' 初期化関数がエラーを返しました。
2019-12-22T08:32:43.039046Z 0 [エラー] プラグイン「InnoDB」をストレージエンジンとして登録できませんでした。
2019-12-22T08:32:43.039056Z 0 [エラー] 組み込みプラグインの初期化に失敗しました。
2019-12-22T08:32:43.039063Z 0 [エラー] 中止しています

解決する:

次のコマンドを実行します:

setenforce 1

もう一度再起動

2. エラーは次のとおりです。

ソケット '/var/lib/mysql/mysql.sock' 経由でローカル MySQL サーバーに接続できません

解決する:

設定ファイル my.cnf を変更し、次の設定を追加または変更します。

[クライアント]
ソケット = /home/mysql_data/mysql/mysql.sock

要約する

上記は、Linux での MySQL データベース データ ファイル パスの変更についてご紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • ウィンドウとLinuxプロジェクトを展開する際のLinuxファイルパスに問題はありません
  • Kali Linux の共通ファイルとコマンドパスの詳細な説明
  • Linuxで実行中のファイルのフルパスを照会する方法
  • Linux で指定パスのファイルの tar パッキングを実装する方法
  • Linux でファイル記述子を介してファイルの絶対パスを取得する方法
  • Linux サーバー上の MySQL 設定ファイルのパスを表示する方法
  • Linuxはmysqlデータベースファイルのパスを変更します
  • Linuxコマンドに基づいてフォルダー内の特定のファイルパスを抽出します

<<:  Vue の基本入門: Vuex のインストールと使用

>>:  Docker イメージに基づいて Go プロジェクトをデプロイする方法と手順

推薦する

React Routerの歴史について簡単に説明します

React Router を理解したいなら、まず歴史を理解する必要があります。より具体的には、Rea...

CSSファイルをインポートする3つの方法の詳細な説明

CSS を導入する方法には、インライン スタイル、内部スタイル シート、外部スタイル シートの 3 ...

SSH経由でローカルLinux仮想マシンに接続するプロセスを記録する

実験環境:物理マシン Windows 10 x64物理NIC情報IPv4 アドレス: 192.168...

ウェブページのカラーマッチングスキルについての簡単な説明(フロントエンド開発者必読)

一般的に、Web ページの背景色は、より柔らかく、よりシンプルで、より明るく、暗いテキストとマッチし...

Vueはechartsに基づいて3次元の縦棒グラフを実装します

3次元縦棒グラフは、正面、右側、上部の3つの部分で構成されています。描画するときは、正面をグラフィッ...

CentOS で LibreOffice を使用してドキュメント形式を変換する方法

プロジェクト要件では、アップロードされたドキュメントの前処理が必要です。ユーザーが doc 形式でド...

MySQL の日付と時刻関数の概要 (MySQL 5.X)

1. MySQLは現在の日付と時刻を取得する関数1.1 現在の日付 + 時刻 (日付 + 時刻) ...

MySQL統計データテーブルの設計方法

目次リアルタイム更新は必要ですか?マテリアライズド ビュー ツール (Flexviews)カウントテ...

CSS マージンの折りたたみの詳細な説明

前のこれは古くからある古典的な質問です。以前読者から質問があったので、ここでお答えします。簡単な例か...

Win10 での MySQL 8.0.20 のインストールと設定のチュートリアル

Win10 システムでの MySQL 8.0.20 のインストールと設定の超詳細なチュートリアルMy...

JavaScript Sandboxについての簡単な説明

序文:サンドボックスといえば、私たちの頭には反射的に上の写真が思い浮かび、すぐに興味がわいてくるかも...

シェルスクリプト nginx 自動化スクリプト

このスクリプトは、nginxの起動、停止、再起動の操作を満たすことができます。 #!/bin/bas...

MYSQL の binlog 最適化に関する考察の要約

質問質問 1: トランザクションをコミットするときに REDO ログをフラッシュすることによって発生...

MySQL内部一時テーブルの具体的な使用法

目次連合テーブルの初期化ステートメントの実行連合の結果ユニオンオールグループ化十分なメモリステートメ...