約 1,800 万件のレコードを削除するクエリを実行しました。このクエリを実行した後、mysql はクエリに応答しなくなりました。サーバーを再起動しましたが、次のコマンドを使用して mysql サービスを開始できなくなりました。
service mysql start
おそらくエラーが出力されるだけだと思いますが、エラー ログ ファイルが見つかりません。私は CentOS 6 を実行しており、yum を使用して公式リポジトリから mariaDB をインストールしました。
mysql を起動するにはどうすればいいですか? クエリがキャンセルされてもかまいません。一部の mysqld プロセスが CPU と I/O を消費していることがわかります。おそらく、まだこのクエリを実行しようとしているのだと思います。
答え1
「mysql サービスを開始できません...」と書かれていますが、mysqld プロセスがいくつか表示されています。実行してみてください:
service mysql status
サービスが開始されている場合は、それを停止し、エラー ログを有効にして mariaDB をセーフ モードで実行してみてください。サービスが開始されていない場合は、mysqld プロセスを強制終了し (責任を認識してください)、mariaDB をセーフ モードで実行してみてください。
セーフモードの詳細については、公式のドキュメンテーション。
答え2
これを表示する他のユーザーの場合、mysqladmin コマンドを使用して、実行中のすべてのクエリを一覧表示し、必要に応じて選択的に強制終了することもできます。これにより、そのインスタンスで実行されていた他のクエリはすべて保持されます。
https://dev.mysql.com/doc/refman/5.5/en/mysqladmin.html
SHOW VARIABLES は、必要に応じて MySQL のログの場所を返すことに注意してください。