Karthikeyan
Karthikeyan

Reputation: 49

mysql server crashed -mysqld got signal 6

I am using mysql version 5.7.23 and Unable to start mysql server.

[ERROR] InnoDB: Space id and page no stored in the page, read in are [page id: space=3376699519, page number=1484718080], should be [page id: space=1463, page number=1] 2018-10-04T04:29:19.269829Z 0 [ERROR] InnoDB: Page [page id: space=3376699519, page number=1484718080] log sequence number 17294104044079415296 is in the future! Current system log sequence number 189601148. 2018-10-04T04:29:19.269834Z 0 [ERROR] 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/5.7/en/forcing-innodb-recovery.html for information about forcing recovery. 2018-10-04T04:29:19.269872Z 0 [ERROR] InnoDB: Database page corruption on disk or a failed file read of page [page id: space=1463, page number=1]. You may have to recover from a backup.

Upvotes: 1

Views: 26346

Answers (2)

Shay.R
Shay.R

Reputation: 74

Please check the innodb_force_recovery, set it to 1, and start mysql. for more details, please read this

Upvotes: -1

Peter Gyschuk
Peter Gyschuk

Reputation: 1029

This error means that Database Data is corrupted. You can try to start mysql instance in recovery mode and you will be able to do backup if you are lucky. Depends on selected mode tables could be read only

WARNING: Backup data files before starting service in recovery mode

To start mysql in recovery mode add --innodb_force_recovery=<mode> in your mysql startup parameter

mysql supporting values from 0 to 6 Mysql recovery docs

Example of docker-compose file:

version: '2'
services:
  myservice-mysql:
    image: mysql:8.0.17
    volumes:
      - ~/volumes/MyProject/mysql/:/var/lib/mysql/
    environment:
      - MYSQL_USER=root
      - MYSQL_ALLOW_EMPTY_PASSWORD=yes
      - MYSQL_DATABASE=MyProject
    ports:
      - 3306:3306
    command: mysqld --innodb_force_recovery=6 --lower_case_table_names=1 --skip-ssl --character_set_server=utf8mb4 --explicit_defaults_for_timestamp

If mysql started successfully you can use any tool to do dump which you can restore on new not corrupted mysql instance

Upvotes: 2

Related Questions