MySQL не запускается в XAMPP из-за ошибки mysqld.exe - PullRequest
0 голосов
/ 19 января 2020

Все работало нормально. Я работаю с xampp около 4 лет и никогда не сталкивался с такой проблемой. Попытка запустить MySQL из XAMPP, но не удалось. просмотрев журнал ошибок, я обнаружил, что одна из папок повреждена, и если да, то как я могу это исправить?

mysql_error.log (частично):

2020-01-19 11:56:21 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2020-01-19 11:56:21 0 [Note] InnoDB: Uses event mutexes
2020-01-19 11:56:21 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2020-01-19 11:56:21 0 [Note] InnoDB: Number of pools: 1
2020-01-19 11:56:21 0 [Note] InnoDB: Using SSE2 crc32 instructions
2020-01-19 11:56:21 0 [Note] InnoDB: Initializing buffer pool, total size = 16M, instances = 1, chunk size = 16M
2020-01-19 11:56:21 0 [Note] InnoDB: Completed initialization of buffer pool
2020-01-19 11:56:21 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=38825021
2020-01-19 11:56:21 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
2020-01-19 11:56:21 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
2020-01-19 11:56:21 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2020-01-19 11:56:21 0 [Note] InnoDB: Setting file 'C:\xampp\mysql\data\ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2020-01-19 11:56:21 0 [Note] InnoDB: File 'C:\xampp\mysql\data\ibtmp1' size is now 12 MB.
2020-01-19 11:56:21 0 [Note] InnoDB: Waiting for purge to start
2020-01-19 11:56:21 0 [Note] InnoDB: 10.4.6 started; log sequence number 38825030; transaction id 21030
2020-01-19 11:56:21 0 [Note] InnoDB: Loading buffer pool(s) from C:\xampp\mysql\data\ib_buffer_pool
2020-01-19 11:56:21 0 [Note] Plugin 'FEEDBACK' is disabled.
2020-01-19 11:56:21 0 [Note] Server socket created on IP: '::'.
2020-01-19 20:37:41 0 [Note] mysqld.exe: Aria engine: starting recovery
recovered pages: 0% 17%
2020-01-19 20:37:41 0 [ERROR] mysqld.exe: Index for table '.\mysql\db' is corrupt; try to repair it

***WARNING: .\mysql\db could not be opened: Error: 126
 27% 39% 52% 62% 73% 86% 96% 100% (0.0 seconds); tables to flush: 1 0 (0.0 seconds); 
2020-01-19 20:37:41 0 [Note] mysqld.exe: Aria engine: recovery done
InnoDB: using atomic writes.
2020-01-19 20:37:41 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2020-01-19 20:37:41 0 [Note] InnoDB: Uses event mutexes
2020-01-19 20:37:41 0 [Note] InnoDB: Compressed tables use zlib 1.2.11

1 Ответ

0 голосов
/ 19 января 2020

Как говорит ошибка, один индекс поврежден.

  • Сначала запустите ваш сервер в режиме восстановления. Добавьте innodb_force_recovery=1 к вашему my.cnf. Если ваш сервер не запускается, вы можете увеличить это число с 1 до 6, проверьте MySQL manual, чтобы увидеть, в чем различия (dev. mysql .com / doc / refman / 5.5 / en / forcing-innodb -recovery. html)
  • Запустите mysqlcheck -c на всех соответствующих таблицах, чтобы выяснить, какие из них имели повреждение индекса
  • Используйте mysqlcheck --optimize из командной строки, чтобы перестроить таблицу с поврежденные индексы

В противном случае они перестроят таблицу, иногда поможет дамп и импорт. проверьте этот раздел документов с альтернативными идеями https://dev.mysql.com/doc/refman/8.0/en/rebuilding-tables.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...