欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql打不開了

錢斌斌2年前10瀏覽0評論

最近,我遇到了一個麻煩:我的MySQL數據庫突然不能打開了。我試了幾種方法,但都沒有解決問題。下面讓我來介紹一下具體情況。

$ mysql -u root -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

當我輸入以上命令時,會出現如上的錯誤提示,我的MySQL數據庫無法連接。

接下來,我檢查了一下我的mysqld文件夾,發現里面的mysqld.sock文件不存在。

$ ls /var/run/mysqld/
mysqld.pid

于是,我嘗試重新啟動MySQL服務。

$ sudo service mysql restart

但是,重新啟動服務后,再次嘗試連接MySQL,還是無法打開。

接下來,我在MySQL的錯誤日志里發現了一些有用的信息。

$ sudo less /var/log/mysql/error.log

錯誤日志中出現了這樣一行錯誤信息:

2018-01-01T12:34:56.789012Z 0 [ERROR] Incorrect definition of table mysql.event: expected column 'sql_mode' at position 14 to have type set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH'), found type set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_A

根據錯誤日志中的提示,我想到了一個可能的原因:可能是mysql.event表的定義出了問題。于是,我打開了mysql數據庫,并執行如下命令:

mysql>DROP EVENT event_name;
DROP EVENT event_name
mysql>DROP TABLE mysql.event;
DROP TABLE mysql.event
mysql>source /usr/share/mysql/mysql_system_tables.sql
mysql>source /usr/share/mysql/mysql_system_tables_data.sql

以上命令的目的是刪除舊的mysql.event表,并重新創建一個新的表。這樣操作后,MySQL數據庫恢復了正常運行。

以上就是我解決MySQL打不開的過程。希望對需要的朋友提供一些參考。