Ubuntu でディスク容量不足により MySQL が起動しない場合の解決策

Ubuntu でディスク容量不足により MySQL が起動しない場合の解決策

序文

最近、データベースのテーブルに 2 つのフィールドを追加しました。その後、ディスク容量不足のようなメッセージが表示されました。その後、データベースが切断され、その後は接続できなくなりました。後で考えた後、ようやく問題を解決しました。この経験は本当に恐ろしいものでした。この記事では、ディスク容量不足のために MySQL が起動できない問題の解決策を記録します。

方法は次のとおりです

オペレーティング システム: Ubuntu。ディスク容量が不足すると、MySQL が起動に失敗し、次の問題が発生する可能性があります。

root@iZ28z558vv0Z:/etc/mysql# mysql -u ルート -p
パスワードを入力してください: 
エラー 2002 (HY000): ソケット '/var/run/mysqld/mysqld.sock' 経由でローカル MySQL サーバーに接続できません (2)
root@iZ28z558vv0Z:/b# サービスmysql開始
開始: ジョブの開始に失敗しました
root@iZ28z558vv0Z:/var/lib# サービス mysqld を開始
mysqld: 認識されないサービス

解決策: mysql 構成ファイル my.cnf を見つけます。

ルート@iZ28z558vv0Z:/etc/mysql# ls
conf.d debian.cnf debian-start my.cnf
root@iZ28z558vv0Z:/etc/mysql# vi my.cnf

ファイル内のdatadir項目には/var/lib/mysqlと表示されます。

[mysqld]
#
# * 基本設定
#
ユーザー = mysql
pid ファイル = /var/run/mysqld/mysqld.pid
ソケット = /var/run/mysqld/mysqld.sock
ポート = 3306
ベースディレクトリ = /usr
データディレクトリ = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
外部ロックをスキップ

ディスク容量が不足しているため、MySQL がデータを保存する場所、datadir または tmpdir のディスク容量の使用状況、および datadir のディスク容量の使用状況を確認する必要があります。

ルート@iZ28z558vv0Z:/var# df /var
ファイルシステム 1Kブロック 使用済み 使用可能 使用率 マウント済み
/dev/xvda1 41151808 39038392 0 100% /

上記から、ディスク領域の可用性が明らかに 0 であり、これが mysql を起動できない理由であることがわかります。この問題は、/var ディレクトリ内の他のファイルを削除してディスク領域を解放し、mysql サービスを再起動することで解決できます。

要約する

上記がこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご質問があれば、メッセージを残してコミュニケーションを取ることができます。

以下もご興味があるかもしれません:
  • MySQLはテーブルデータを復元するためにfrmファイルとibdファイルを使用します
  • MySQL 全体または単一のテーブルデータのエクスポート
  • MySQLデータベースが予期せずクラッシュし、テーブルデータファイルが破損して起動できなくなる問題を解決します。
  • MySQLでデータを削除してもディスク領域が解放されないのはなぜですか
  • MySQL ストレージ エンジン MyISAM の一般的な問題 (テーブル破損、アクセス不能、ディスク容量不足)
  • lnmp でディスク領域を保護するために MySQL ログをオフにする方法
  • ディスク容量を節約するためにMySQLを縮小するためのいくつかの提案
  • Mysql InnoDB のデータを削除した後にディスク領域を解放する方法
  • MySQL でテーブル データを削除した後もディスク領域がまだ占有されているのはなぜですか?

<<:  JSはクリックドロップ効果を実装します

>>:  Dockerコンテナでユーザーを分離する方法

推薦する

HTMLメタの大きな役割

メタ属性には、name と http-equiv の 2 つがあります。 name 属性は主に、We...

レスポンシブ Web デザインが価値のない 5 つの理由

この記事は Tom Ewer の Managewp ブログからのもので、現在人気のレスポンシブ デザ...

CentOS 6.4 で rpm を使用して MySQL をオフラインでインストールする

rpmインストールパッケージを使用してmysqlをオフラインでインストールします。参考までに準備:公...

レム適応の一般的なパッケージ3つについて

序文以前、rem適応についての記事を書きましたが、具体的なパッケージは紹介しませんでした。今日は、よ...

Vue プロジェクトで mock.js を使用するための完全な手順

Vue プロジェクトで mock.js を使用する開発ツールの選択: Vscode 1. コマンドラ...

CSSボックスモデルの紹介を読めば、混乱することはなくなるでしょう

Web デザインでよく耳にするプロパティ名: content、padding、border、marg...

Vue のライフサイクルとフック関数の詳細な説明と典型的な面接の質問

目次1. Vue ライフサイクル2. フック機能2.1 4つの段階と8つの方法に分かれています。 2...

CUDA10.0 のインストールと Ubuntu での問題

Tensorflow バージョンと Cuda および CUDNN の対応: https://tens...

JavaScript ファイルの読み込みとブロックの問題: パフォーマンス最適化のケーススタディ

まず質問させてください。HTML ページを作成するときに、外部から JS ファイルをインポートする場...

react+antdプロジェクトをゼロから構築する方法を教えます

これまでの記事はすべて私自身の学習記録であり、主に以前に遭遇した落とし穴を忘れないようにするためのも...

Centos7 FFmpeg オーディオ/ビデオ ツールのインストールに関する簡単なドキュメント

ffmpeg は非常に強力なオーディオおよびビデオ処理ツールです。公式 Web サイトは http:...

カルーセル効果を書くためのjs

この記事では、カルーセルマップの効果を実現するためのjsの具体的なコードを参考までに共有します。具体...

MySQL でのフィルター条件なしのカウントの詳細な説明

カウント(*)成し遂げる1. MyISAM: テーブル内の行の総数をディスク上に保存し、フィルタリン...

CSS transform-originプロパティを理解する

序文最近、花火アニメーションを作成しました。花火が散るアニメーションです。アニメーションの実装中、花...

Navicat Premier の MySQL へのリモート接続エラー 10038 の解決方法

MySQL へのリモート接続が失敗する場合は、次の理由が考えられます。 1. 若い男性/女性の方は、...