MySQLスタートアップが起こした事故の実録

MySQLスタートアップが起こした事故の実録

MySQL はポートをリッスンした状態で起動しますが、サービスは完全には起動していません。

背景

MySQL が起動すると、最初にデータベースが初期化されます。MySQL が完全に起動した後、2 回目のデータベースの初期化が行われます。

データベースを初めて初期化するときは、--skip-networking (このオプションは MySQL の TCP/IP 接続方法を無効にします) を使用して、初期化のために MySQL を起動します。

初期化が完了したら、--skip-networking オプションをオフにして MySQL を再起動します。

2 回目にデータベースを初期化するときに、ルート パスワードを設定します。

MySQLが完全に起動したかどうかを確認する方法

MySQL に積極的に接続してみてください。接続が成功すると、サービスが完全に開始されたことを示します。

mysql -hlocalhost -P3306 -uroot

事故

上記の判定方法はソケットを使用してデータベースに接続しますが、初回のみMySQLのTCP/IP接続方法を禁止しているため、

したがって、最初のデータベースの初期化が完了する前に、2 番目のデータベースの初期化が実行された可能性があります。

2 回目のデータベース初期化では、最初のデータベース初期化よりも早くルート パスワードが設定されるため、データベースに接続できず、最初の初期化が失敗します。

最後に、TCP/IP 接続方法が有効になっていなかったため、アプリケーションはデータベースに接続できませんでした。

最初の変更

データベースに接続するには -h127.0.0.1 を使用します

MySQL -h127.0.01 -P3306 -uroot

ただし、root ユーザーのホストが localhost に設定されているため、127.0.0.1 は接続が許可されず、最初の変更は失敗します。

2回目の改訂

wait-for-it.sh 127.0.0.1:3306 --timeout=300

mysql -hlocalhost -P3306 -uroot

wait-for-it.sh は、127.0.0.1:3306 がリスニング状態にあるかどうかを検出するために使用されます。リスニング状態にある場合、最初のデータベースの初期化が完了したことを意味します。

次に、localhost を使用してデータベースへの接続を試みます。

オリジナルリンク: k8scat.com/posts/wait-…

要約する

MySQL 起動による事故に関する記事はこれで終了です。MySQL 起動による事故についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • mysqlサービスが起動しない場合の解決策
  • MySQL を起動できない場合のよくある問題の概要
  • MySQL5 インストール後に起動できない(サービスを開始できない)問題の解決方法まとめ
  • CentOS 7 での MySQL サービスの起動失敗に対する簡単な解決策
  • MySQL 起動エラー 1053 の解決方法
  • Windows が MySQL サービスを開始できず、エラー 1067 を報告する場合の解決策
  • エラー 1067 で MySQL が起動しない問題を解決する方法
  • mysql の認証、起動、およびサービスの起動のための一般的なコマンド

<<:  Sitemesh チュートリアル - ページ装飾技術の原理と応用

>>:  HTMLはマーキーを使用してテキストを左右にスクロールします

推薦する

バージョン管理ツール Rational ClearCase の紹介

Rational ClearCase は、コードやその他のソフトウェア開発資産のバージョン管理を実...

Linux で MySQL 5.7.19 をアンインストールする方法

1. MySQLが以前にインストールされていたかどうかを確認するコマンド: rpm -qa|grep...

この記事では、VUE の複数の DIV とボタン バインディングの Enter イベントを実装する方法を説明します。

現在、OK ボタンをクリックしたときやキーボードの Enter キーを押したときに操作を実行するとい...

Linuxシステムにおけるプロセス管理の詳細な説明

目次1. プロセスとスレッドの概念2. プロセス管理とは何ですか? 3. プロセス管理の役割4. L...

Dockerを使用してMySQLデータベースをインストールするDeepinの詳細な説明

まずMySQLソースをクエリするdocker 検索 mysql公式ウェブサイトにアクセスしてイメージ...

WeChat アプレット計算機の例

WeChatアプレット計算機の例、参考までに、具体的な内容は次のとおりです。インデックス.wxml ...

フロントエンド開発者に何百万ドルもの価値をもたらす 10 のスキル

フロントエンド開発者が習得する必要のあるスキル。これらのスキルにより、フロントエンド開発者の価値は数...

MySQL のデッドロック チェックとデッドロック除去の例の詳細な説明

1. クエリプロセスプロセスリストを表示2. 対応するプロセスを照会し、IDを強制終了します。検証(...

MySQLを5.7にアップグレードすると、WordPressはデータをインポートするときにエラー1067を報告します

最近MySQLを5.7にアップグレードしましたが、WordPressでデータのインポート時にエラーが...

Windows 10 での MySQL 5.7.19 インストール チュートリアル MySQL のルート パスワードを忘れた場合の変更方法

MySQL 5.7.19のインストールを例に挙げると、まずダウンロードしますもちろん、最初に行うこと...

前後の秒、分、時間、日数を取得するMySQLデータベース

現在の時刻を取得します: current_timestamp を選択します。出力: 2016-06-...

MySQL で重複レコードを見つけて削除する方法

みなさんこんにちは。私は技術の話ばかりして髪を切らない先生のトニーです。何らかの歴史的な理由や誤操作...

dl、dt、dd リスト ラベルの例

dd タグと dt タグはリストに使用されます。通常は <ul><li> タ...

MySQL5.7 mysqldump バックアップとリカバリの実装

MySQL バックアップコールドバックアップ:停止服務進行備份,即停止數據庫的寫入ホットバックアップ...

アイデアコンパイラvueインデントエラー問題シナリオの分析

プロジェクトシナリオ: Vueプロジェクトを実行したらインデントエラーが出ました。ideaコンパイラ...