1

I have an external hard drive (formatted NTFS) to which I copied the MySQL data folder from a machine running Windows 7. I have been successfully able to start/stop/use MySQL on the Windows machine with the data sitting on the external hard drive.

I now need to access the same data from a machine running Ubuntu Linux (14.04). I configured MySQL on the Ubuntu Linux machine so that it reads from the same data directory on the external hard drive. However, the server is unable to start, giving the following error message:

InnoDB: No valid checkpoint found.
InnoDB: If this error appears when you are creating an InnoDB database,
InnoDB: the problem may be that during an earlier attempt you managed
InnoDB: to create the InnoDB data files, but log file creation failed.
InnoDB: If that is the case, please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/error-creating-innodb.html
150518 15:18:53 [ERROR] Plugin 'InnoDB' init function returned error.
150518 15:18:53 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
150518 15:18:53 [ERROR] Unknown/unsupported storage engine: InnoDB
150518 15:18:53 [ERROR] Aborting

I did stop the server before trying to start it on the other machine.

Note: I know that I can start fresh on the linux machine and do a mysql dump/import, but for a variety of project-specific reasons I would ideally like the data to be in one place, readable by both the Windows and Linux machines.

asked May 18, 2015 at 19:23
2
  • IMHO that error suggests MySQL is trying to create a new InnoDB tablespace (which fails) and not to use existing one. Does mysql user have write access to the data directory? Commented May 19, 2015 at 9:27
  • The first line (no valid checkpoint found) does not sound like a permissions issue. Commented May 19, 2015 at 9:31

2 Answers 2

0

The documentation does not mention or imply that this is possible, since it only describes the dump/import methods which you already know about.

While the table format (see documentation) is said to be the same on every platform, there is no mention of logging (or journal ling). The error messages you quote appear to be in that area. Perhaps the limitation is due to MySQL's use of local filesystem paths (such as in my.cnf) which would necessarily differ between Windows and Linux.

answered May 19, 2015 at 9:09
2
  • The docu doesn't mention that it is not possible. It is more about copying individual databases, this question is about copying everything, which should work if the format is the same (both win and linux 64bit for example). Commented May 19, 2015 at 9:28
  • Also after mysql is cleanly shut down, you don't need to journal, you can delete the ib-logfile* files and they will be re-created on startup. Commented May 19, 2015 at 9:29
0

I know my answer comes ages too late, but I stumbled upon this, too. This is the solution: Change owner to mysql user and group for the data directory, its files and all its subdirectories, e.g.:

chown -R mysql:mysql /var/lib/mysql
answered Oct 6, 2015 at 15:29

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.