MySQLのスペースをクリーンアップするいくつかの具体的な方法

MySQLのスペースをクリーンアップするいくつかの具体的な方法

序文

MySQL 環境では、MySQL の障害はデータ ディスクがいっぱいになることによって発生することがよくあります。以下は、MySQL 環境で MySQL スペースをクリーンアップする方法の概要です。

1. ファイルのディスク使用量を確認する

1.1 ディスク容量の使用状況を確認する

[root@mysqlhost01 /]# df -lh

ここに画像の説明を挿入

1.2 ディレクトリスペースの使用状況を確認する

[root@mysqlhost01 /]# du -sh /usr
5.5G /usr

ここに画像の説明を挿入

2.Binlogログのクリーニング

2.1. Binlogログを定期的に自動クリーンアップする

mysql> '%expire_logs_days%' のような変数を表示します --mysql 5.7
mysql> '%binlog_expire_logs_seconds%' のような変数を表示します --mysql8.0

マイSQL8.0
MySQL 8 は、expire_logs_days で始まります。binlog_expire_logs_seconds を無効にします。binlog を設定して、ログを自動的にクリアします。秒単位で時間を節約します。デフォルト: 30 日間の場合は 2592000、4 時間の場合は 14400、1 日の場合は 86400、3 日の場合は 259200。
mysql> グローバルbinlog_expire_logs_seconds=86400を設定します。

マイSQL5.7
デフォルト値は 0 で、ログの有効期限が切れないことを意味します。グローバル パラメータを設定すると、一時的に有効にすることができます。
mysql>グローバルexpire_logs_daysを10に設定します。

ここに画像の説明を挿入

2.2 Binlogログを手動で削除する

ステップ 1: MySQL にログインし、show binary logs; を使用してログ ファイルを表示します。
mysql>バイナリログを表示します。
ステップ 2: 使用中のログ ファイルを表示します: show master status;
mysql>マスターステータスを表示します。
現在使用されているログ ファイルは mysqlhost01-bin.000010 なので、ログ ファイルを削除するときはこのファイルを除外する必要があります。
ログ ファイルを削除するコマンド: purge binary logs to 'mysqlhost01-bin.000010';
mysql>バイナリログを 'mysqlhost01-bin.000010' に消去します。
mysqlhost01-bin.000010 以外のログ ファイルを削除します。mysql-bin.000003 などの別のファイル名を指定することもできます。
削除するとほとんどのスペースが解放されます。

ここに画像の説明を挿入

2.3.スローログクリーニング

ステップ 1: スロー ログ モードを確認します。mysql>show variables like 'log_output%';
ステップ 2 スロー ログ ファイルの場所を確認し、「%slow%」などの変数を表示します。
ステップ3 スローログをクリアする [root@mysqlhost01 /]# cd /usr/local/mysql57/mysql5730/data
[root@mysqlhost01 データ]# echo "">mysqlhost01-slow.log

ここに画像の説明を挿入

ここに画像の説明を挿入

2.4.エラーログの消去

ステップ 1 エラー ログの場所を確認します。mysql>show variables like 'log_error';
ステップ2 エラーログのサイズを確認する [root@mysqlhost01 data]# ll -h log.err
ステップ 3 エラー ログをクリアします echo "">/usr/local/mysql57/mysql5730/data/log.err

ここに画像の説明を挿入

3. テーブルの清掃

大きなテーブルとは、100 GB を超えるディスク領域を占める単一のデータ ファイル、または 1 億を超えるデータ レコードを含む単一のテーブルを指します。

3.1. テーブルスペースとレコード数を確認する

テーブルスキーマ、テーブル名を選択、
concat(round((data_length+index_length)/1024/1024/1024,2),'G') を tablesize_gb として連結し、
information_schema.tables からの table_rows
tablesize_gb desc limit 5 で順序付けします。

table_schema: データベース名 table_name: テーブル名 tablesize_gb: テーブルサイズ (G 単位) table_rows: 行数

ここに画像の説明を挿入

3.2 一般的なテーブルデータのクリーニング

従来型テーブルとは、大型テーブルの基準を満たさないテーブルを指します。
消去
構文: テーブル名から削除 [ where 条件]
削除では条件を満たすデータのみが削除され、テーブルが占有するスペースは削減されません。
大量のデータを削除すると断片が残り、それを整理して再利用する必要があります。テーブル table.name を最適化します。
または、alter table table.name engine='innodb' を実行します (テーブルがロックされるため、業務のオフピーク時に実行するように注意してください)


切り捨て
構文: テーブル table_name を切り捨てる
切り捨てはすべてのテーブル データを削除し、占有されているテーブル スペースを再利用します。

落とす
構文: テーブル table_name を削除します
ドロップすると、すべてのテーブル データとテーブル構造が削除され、占有されているテーブル スペースが再利用されます。

これで、MySQL スペース クリーニングのいくつかの具体的な方法について説明したこの記事は終了です。MySQL スペース クリーニングに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Alibaba Cloud MySQL スペースをクリーンアップする方法

<<:  HTML入力ドロップダウンメニューを実装する方法

>>:  ウェブフォーム送信方法の詳細な概要

推薦する

jQueryのコア機能とイベント処理の詳細な説明

目次イベントページの読み込みイベント委任イベントの切り替えイベント要約するイベントページの読み込み1...

MySQL の InnoDB ストレージ ファイルの詳細な説明

物理的に言えば、InnoDB テーブルは、共有テーブルスペース ファイル (ibdata1)、排他テ...

CSS の画像パスの問題に関する議論 (同じパッケージ/異なるパッケージ)

CSS ファイルでは、背景を使用する、つまり背景画像を追加する必要がある場合があります。これは通常、...

MySQL のスロークエリの方法と例

1. はじめにスロークエリログを有効にすると、MySQL は指定された時間を超えるクエリステートメン...

表 td 画像水平および垂直中央揃えコード

HTMLコード:コードをコピーコードは次のとおりです。 <td align="cen...

Linux システムに 3 つ以上の Tomcat をインストールする (詳細な手順)

複数のTomcatをインストールする場合は、システムにJDKがインストールされている必要があり、 T...

JavaScript 定期検証パスワード強度実装方法

展示する デザインパスワード強度分析パスワードは数字、文字、特殊記号で構成されていますパスワード: ...

mysql5.7 リモート アクセス設定

mysql5.7 でリモート アクセスを設定することは、ユーザーを作成して権限を付与するだけでアクセ...

dockerコンテナは直接実行され、pingを介してパブリックIP操作を取得します。

コンテナを通じてローカル パブリック IP アドレスを取得します。ローカル IP アドレスを使用して...

Docker に Zookeeper を素早くインストールする方法の詳細なチュートリアル

Docker で Zookeeper を素早くインストール会社を変わってから長らくZookeeper...

Vue2.0/3.0 での provide と inject の使用例

目次1. provide/inject の用途は何ですか? 2. provide/injectの使い...

CSSはフロートをシミュレートして、画像の左右を囲む中央テキストの効果を実現します。

画像の周囲にテキストを折り返すとは何ですか?これは次の図の効果です。 エフェクトのCSSコードはここ...

Tomcat をアンインストールして再インストールする方法 (画像とテキスト付き)

tomcat9をアンインストールする1. Tomcatのインストールはディレクトリに解凍するだけで...

IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決策

この記事では、主に、IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決...

CSS3 は本当に SCSS に取って代わるのでしょうか?

Web ページのスタイル設定に関しては、プロジェクトで純粋な CSS または SCSS (および他...