
はじめに
私は Linux マシンで MariaDB と Apache を実行していますが、今日いくつか問題が発生しました。
SSH 経由でサーバーに接続していますが、次のような問題が発生しています。ここで何をしているのか全くわかりません。
私がやっていること
ステップ1:mysql -u USERNAME -p
エラー 2002 (HY000): ソケット '/var/run/mysqld/mysqld.sock' を介してローカル MySQL サーバーに接続できません (2 "そのようなファイルまたはディレクトリはありません")
よし、それではMySQLサービスを停止してみましょう
ステップ2:sudo service mysql stop
エラーはないので、サービスを再起動してください
ステップ3:sudo service mysql restart
mysql.service のジョブが失敗しました。詳細については、「systemctl status mysql.service」および「journalctl -xe」を参照してください。
では、この2つのコマンドを実行して、何が得られるか見てみましょう
ステップ4:status mysql.service
うーん...別のものを試してみましょう
ステップ5:journalctl -xe
ジャーナル ファイルが見つかりません。
はい、迷ってしまいました。
MySQL エラーログ
150824 14:42:58 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
150824 14:42:58 [Note] /usr/sbin/mysqld (mysqld 10.0.20-MariaDB-0ubuntu0.15.04.1) starting as process 22637 ...
150824 14:42:58 [ERROR] mysqld: File '/var/lib/mysql/aria_log_control' not found (Errcode: 13 "Permission denied")
150824 14:42:58 [ERROR] mysqld: Got error 'Can't open file' when trying to use aria control file '/var/lib/mysql/aria_log_control'
150824 14:42:58 [ERROR] Plugin 'Aria' init function returned error.
150824 14:42:58 [ERROR] Plugin 'Aria' registration as a STORAGE ENGINE failed.
150824 14:42:58 [Note] InnoDB: Using mutexes to ref count buffer pool pages
150824 14:42:58 [Note] InnoDB: The InnoDB memory heap is disabled
150824 14:42:58 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
150824 14:42:58 [Note] InnoDB: Memory barrier is not used
150824 14:42:58 [Note] InnoDB: Compressed tables use zlib 1.2.8
150824 14:42:58 [Note] InnoDB: Using Linux native AIO
150824 14:42:58 [Note] InnoDB: Using CPU crc32 instructions
150824 14:42:58 [Note] InnoDB: Initializing buffer pool, size = 128.0M
150824 14:42:58 [Note] InnoDB: Completed initialization of buffer pool
150824 14:42:58 [ERROR] InnoDB: ./ibdata1 can't be opened in read-write mode
150824 14:42:58 [ERROR] InnoDB: The system tablespace must be writable!
150824 14:42:58 [ERROR] Plugin 'InnoDB' init function returned error.
150824 14:42:58 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
150824 14:42:58 [Note] Plugin 'FEEDBACK' is disabled.
150824 14:42:58 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
150824 14:42:58 [ERROR] Unknown/unsupported storage engine: InnoDB
150824 14:42:58 [ERROR] Aborting
150824 14:42:58 [Note] /usr/sbin/mysqld: Shutdown complete
150824 14:42:58 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
ディスク容量の問題
答え1
起動しない理由は次のとおりです:
150824 14:42:58 [ERROR] mysqld: File '/var/lib/mysql/aria_log_control' not found (Errcode: 13 "Permission denied")
150824 14:42:58 [ERROR] mysqld: Got error 'Can't open file' when trying to use aria control file '/var/lib/mysql/aria_log_control'
/var/lib/mysql の権限を再確認してください。また、システム ログをチェックして、SE-Linux または Apparmor が干渉していないかどうかを確認してください。
答え2
同じ問題があったかどうかはわかりませんが、私の場合、起動時に矛盾する設定が my.cnf にありました。
#innodb_lock_wait_timeout=1000;
; がエラーの原因であることが判明しました。考えてみてください。
答え3
mysql
(特にdebian 9
)を起動および停止するには、次のコマンドを使用します。
systemctl start mysql;
systemctl stop mysql;
私には効果がありました。