Not the answer you need?
Register and ask your own question!

InnoDB: is in the future

kernowkernow EntrantInactive User Role Beginner
Hi,
I changed the innodb_log_file size from 1GB to 4GB and restarted Mysql, but noticed that ls -lah ib_logfile* still showed 1GB so I restarted Mysql again, this time the ib_logfile* showed 4GB but now the error log is filled with:
InnoDB: is in the future! Current system log sequence number 139654003953.
InnoDB: Your database may be corrupt or you may have copied the InnoDB
InnoDB: tablespace but not the InnoDB log files

Mysql is running and appears to be OK. If I shut down Mysql and move the ib_logfiles will Mysql recreate the logs and fix the error log entries?
MySQL 5.6.17

Comments

  • scott.nemesscott.nemes MySQL Sage Current User Role Patron
    Hi kernow;

    Yeah normally you would want to shutdown MySQL first, so it has time to write everything to disk properly, then change the log file size, delete/move the old ib_logfile's, and then start up MySQL again so that it will re-create the files in the larger size.

    Since you've already restarted MySQL a few times, any damage is already done, but you probably are okay assuming you do not have a super active database with lots of transactions going on. So for now I would follow the usual process of changing the log file size and then you should be good:

    http://dev.mysql.com/doc/refman/5.5/en/innodb-data-log-reconfiguration.html

    -Scott
  • kernowkernow Entrant Inactive User Role Beginner
    Hi,
    I didn't carry out the procedure you mention above because were using 5.6.17 and as of 5.6.8 its not required any more. You can just edit my.cnf and restart. See the paragraph after item 6 http://dev.mysql.com/doc/refman/5.6/en/innodb-data-log-reconfiguration.html So is there any other reason damage could have been caused?
  • scott.nemesscott.nemes MySQL Sage Current User Role Patron
    Hi kernow;

    Ah yes, I did not see the version there at the end of your post.

    Did you stop MySQL first, change the value, and then start it back up? Based on your description it sounds like you changed the value, then restarted MySQL. So basically the process is the same as in 5.5, the only difference is you do not have to move/delete the ib_logfile0/1 (and you do not need to modify innodb_fast_shutdown), but you still need to shut down MySQL first.

    -Scott
  • kernowkernow Entrant Inactive User Role Beginner
    Yes, MySQL was stopped before editing my.cnf so not sure why we have the errors. But was asking if we remove the logs would they get recreated again in this version and would that fix the errors in the logs?
  • scott.nemesscott.nemes MySQL Sage Current User Role Patron
    Hi kernow;

    Hard to say what will happen exactly once it gets into that state. At this point you should look into the various ways to fix it:

    http://www.percona.com/blog/2013/09/11/how-to-move-the-innodb-log-sequence-number-lsn-forward/

    Basically some combination of events with the ib_logfile change and perhaps related or unrelated data corruption, the LSN positioning is now messed up. The above link has a few possibilities as to how to fix it, some either than others depending on how large your database is and what the uptime requirements are.

    -Scott
Sign In or Register to comment.

MySQL, InnoDB, MariaDB and MongoDB are trademarks of their respective owners.
Copyright ©2005 - 2020 Percona LLC. All rights reserved.