mysqldは情報なしでは起動できません。それは、私が取得する唯一の情報です。'MySQLデータベースサーバーの起動:mysqld。 。 。 。 。 。 。 。 。 。 。 。 。 。失敗しました!」.
My.cnfファイルを編集して/var/log/mysql/mysql.logにログオンできるようにしましたが、どうやら何もログに記録したくないようです。
だから私は何も知りません。同様の質問がたくさんあることは知っていますが、ほとんどの場合、人々はログファイルからさらに何かを伝えることができます。
ところで、それは異常なシステムシャットダウンの後に起こっています。
更新1:my.cnfファイルに次のような行が表示されます:/ etc/mysql/conf.d/mysqld_safe_syslogが原因で、エラーログがsyslogに送られます。 cnf。
ファイルを開くと、次のように表示されます。[mysqld_safe] syslog
どういう意味ですか?エラーログを確認するにはどうすればよいですか?
更新2:mysqlcheck -u root -p--all-databasesを実行すると
「Goterror:2002:接続しようとするとソケット '/var/run/mysqld/mysqld.sock'(2)を介してローカルMySQLサーバーに接続できません」というメッセージが表示されます。
アップデート:OK、syslogが何であるかがわかりました:)サーバーを起動できません:UNIXソケットでバインドします:デバイスにスペースが残っていません。 ?
答えは、MySQLがmy.cnf
内でポイントしているディレクトリに書き込めず、適切な権限がないということです。この問題を修正するには、ユーザーMySQLがmy.cnf
が指しているディレクトリに対する所有者権限を持っていることを確認します。たとえば、base_dir
が/MySQL
の下にあり、data_dir
が/MySQL/data
の下にあり、ソケットが/tmp
の下にあることを確認する必要があります。 /MySQL
と/MySQL/data
はMySQLユーザーが所有しています。LinuxユーザーMySQLのデフォルトディレクトリには読み取り、書き込み、実行の権限が必要なため、/tmp
の場合です。また、data_dir
を含むパーティションが「十分な空き領域を含む」完全ではないことを確認する必要があります