Если бы я мог сделать правильный SQL dump/backup
, я бы сделал, но OS
выдал и смог войти только в SafeMode
, где я не смог запустить MySQL server
. Поэтому я мог только вручную создавать резервные копии файловых каталогов.
- У меня есть сохраненная копия файла C: \ ProgramData \ MySQL \ MySQL Сервер 8.0
- У меня есть сохраненная копия файла C: \ Program Files \ MySQL \ MySQL Сервер 8.0
Сейчас я работаю на новой установке Windows
и пытаюсь запустить этот старый сервер для через несколько минут, чтобы я мог войти в систему с Workbench
и сделать правильный SQL database dump
, который будет import
для новой MySQL
установки позже.
Следовательно, перемещая упомянутые файлы в их соответствующие местоположения - Program Files
и ProgramData
.
Открытие PowerShell
(с правами администратора) и выполнение:
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0" --console
и я получаю несколько сотен строк на экране, который содержит следующее:
2020-04-10T05:28:56.725818Z 0 [ERROR] [MY-011972] [InnoDB] Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html for information about forcing recovery.
2020-04-10T05:28:56.734460Z 0 [ERROR] [MY-011971] [InnoDB] Tablespace 'innodb_undo_001' Page [page id: space=4294967279, page number=5] log sequence number 1339677380 is in the future! Current system log sequence number 19081380.
Затем следует:
2020-04-10T05:28:56.740834Z 0 [ERROR] [MY-011972] [InnoDB] Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html for information about forcing recovery.
2020-04-10T05:28:56.757259Z 0 [System] [MY-010229] [Server] Starting crash recovery...
2020-04-10T05:28:56.769215Z 0 [System] [MY-010232] [Server] Crash recovery finished.
2020-04-10T05:28:57.695386Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2020-04-10T05:28:57.765911Z 0 [System] [MY-010931] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: ready for connections. Version: '8.0.13' socket: '' port: 3306 MySQL Community Server - GPL.
2020-04-10T05:28:57.926850Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060
Отлично, по крайней мере, его работает.
Теперь я могу connect
, но не databases
.
- Что я могу сделать / как мне поступить, чтобы временно восстановить эти базы данных?
ОБНОВЛЕНИЕ:
Удалил файлы innodb_undo_001 и innodb_undo_002 из каталога данных и перезапустил.
Получение:
PS C:\Program Files\MySQL\MySQL Server 8.0\bin> .\mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console 2020-04-10T05:55:29.555478Z 0 [Warning] [MY-010915] [Server] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2020-04-10T05:55:29.558313Z 0 [System] [MY-010116] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.13) starting as process 3028
2020-04-10T05:55:31.394427Z 1 [Warning] [MY-012351] [InnoDB] Tablespace 1, name 'sys/sys_config', file '.\sys\sys_config.ibd' is missing!
2020-04-10T05:55:32.808645Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2020-04-10T05:55:32.856154Z 0 [System] [MY-010931] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: ready for connections. Version: '8.0.13' socket: '' port: 3306 MySQL Community Server - GPL.
2020-04-10T05:55:32.898055Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060
Работает, но базы данных отсутствуют.
Попробовал подход Innodb-force-recovery - ничего не происходит. То же, что и раньше.