UbuntuでMySQLデータベースファイルディレクトリを変更する方法

UbuntuでMySQLデータベースファイルディレクトリを変更する方法

序文

同社の Ubuntu サーバーは、さまざまなシステムのディレクトリを異なる論理パーティションに配置しています。たとえば、MySQL データベース ファイルを保存するためのデフォルトのディレクトリ /var/lib/mysql は別のパーティションに配置されており、システム ディレクトリ /var/ も別のパーティションに配置されています。ただし、このパーティションのサイズは固定されており、データベース ファイル全体を保存するには不十分です。ただし、別のシステムディレクトリ /data のサイズが T レベルに達し、ニーズを大幅に満たしているため、データベースファイルディレクトリを変更する必要があります。

以下は、インターネット上のいくつかの記事を参考にして試したプロセスです。

1. データベース サービスを停止します。

/etc/init.d/mysql stopまたはstop mysql使用します。

2. ターゲットの場所 (/data) にデータベース ファイル用のディレクトリ (/mysqldb など) を作成し、元のデータベース ファイル ディレクトリをこのディレクトリにコピーします (デフォルトの場所を使用しない場合は、元のデータベース ファイルを新しいディレクトリに直接 mv できます)。

cd /データ

mkdir mysqldb

cp -r /var/lib/mysql /data/mysqldb/

しばらく待つと、/data/mysqldb/の下に元のデフォルトのmysqlデータベースファイルディレクトリ「/mysql」のコピーが作成されます。

3. my.cnfファイルを変更する

# vim /etc/mysql/my.cnf

datadir = /var/lib/mysql datadir = /data/mysqldb/mysql変更します。

さらに、現在の my.cnf にはsocket = /var/run/mysqld/mysqld.sock (インターネットで言及されている sock = /var/lib/mysql/mysql.sock ではない) があるため、つまり、ソケットの場所はデータベース ファイルが配置されている場所ではないため、他の Web ページに記述されている操作を行う必要はなく、次のコマンドを使用して mysql.sock リンクを作成します。

ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (/home/data/mysql からコピーする必要があります)

4. データベースの権限を変更します。

# chown -R mysql:mysql /data/mysqldb/mysql/ ← データベースファイルディレクトリの所有権をmysqlに変更します

# chmod 700 /data/mysqldb/mysql/whois/ ← データベースディレクトリのwhois属性を700に変更します

# chmod 660 /data/mysqldb/mysql/whois/* ← データベース内のデータテーブルの属性を660に変更します

5. usr.sbin.mysqldファイルを変更する

# vim /etc/apparmor.d/usr.sbin.mysqld

バンドル

/var/lib/mysql r,

/var/lib/mysql/** rwk、

変更する

/data/mysqldb/mysql/ r,

/data/mysqldb/mysql/** rwk、

注意: この手順を実行しないと、データベース サービスは再起動できません。再起動しているように見えますが、停止して応答しません。

6. MySQLサーバーを起動する

/etc/init.d/apparmor を再起動する

/etc/init.d/mysql 再起動 (または restart mysql を使用)

終わり!

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • MySQLでデータベースデータ保存ディレクトリを変更する方法
  • MySQLのスイッチングデータ保存ディレクトリの実装方法
  • Linuxでmysqlデータベースディレクトリを変更する手順
  • mysql5.5 データベースデータディレクトリ移行方法の詳細な説明
  • Centos MySQL データベースディレクトリの変更
  • Mysql データベースのストレージ ディレクトリを変更するにはどうすればよいでしょうか?
  • Win2008 r2 で MySQL データ ディレクトリを変更する方法
  • MySQLデータディレクトリを再配置する方法
  • メモリ内にMySQLの一時ディレクトリを作成するチュートリアル

<<:  Docker に MySQL と MariaDB をインストールする方法

>>:  Vue+Spring Bootで検証コード機能を実現

推薦する

CSS3 はクールな 3D 回転遠近法効果を実現します

CSS3はクールな3D回転パースペクティブを実現します3D アニメーション効果はますます人気が高まっ...

Vue カスタム オプション時間カレンダー コンポーネント

この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...

EChartsマルチチャート連携機能の実装プロセス

表示するデータが多い場合、1 つのチャートに表示しても効果はよくありません。このとき、2 つのチャー...

ログインインターセプションを実装するためのVueルーティング

目次1. 概要2. ログインインターセプションを実装するためのルーティングナビゲーションガード1. ...

ブラインドの特殊効果を実現するネイティブJS

この記事では、ネイティブ JS で実装されたブラインドの特殊効果を紹介します。効果は次のとおりです。...

MySQL Community Server 圧縮パッケージのインストールと設定方法

今日は、MySQL をインストールしたかったので、公式 Web サイトにアクセスして、MySQL の...

CentOS での mysql5.7 の詳細なインストールと設定のチュートリアル

インストールユーザーにインストール権限があることを確認してくださいルートスイッチなしsuルート(su...

Linuxシステムの操作レベルの詳細な紹介

目次1. Linuxシステムの操作レベルの概要2. 実行レベルを確認する3. 現在のシステムの動作レ...

AES_ENCRYPT() と AES_DECRYPT() を使用して MySQL を暗号化および復号化する正しい方法の例

序文最近、仕事でAES_ENCRYPT()関数を使用してプレーンテキストを暗号化し、MySQL に保...

CSSカスケーディングメカニズムについての簡単な説明

CSS にカスケード メカニズムがあるのはなぜですか? CSS では、同じ要素の特定のプロパティに同...

Nginx の負荷分散構成、ダウンタイム発生時の自動切り替えモード

厳密に言えば、nginx には負荷分散バックエンド ノードのヘルス チェック機能はありませんが、デフ...

Nodejs エラー処理プロセス記録

この記事では、接続エラー ECONNREFUSED を例に、Node.js がエラーを処理するプロセ...

vue3 プロジェクトを素早く構築し、関連機能を紹介する vite+ts の詳細な説明

目次ヴィテ建てる構成vite.config.tsルーターtsタイプvue3 の知識設定小道具コンテク...

Ubuntu 20.04でAliソースを変更する方法

なお、この記事では、単に 20.04 ソースに変更する方法を説明するのではなく、20.04 に基づい...

MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル (Win7 の場合)

Windows 7 で MySQL 5.7.17 をインストールする方法についてのグラフィック チ...