3

I can't get MySQL to launch via XAMPP, it was fine the last time I opened it a few months back;

Updated errors after I have followed the my.cnf recovery:

2013-10-06 19:29:23 7920 [Note] Plugin 'FEDERATED' is disabled.
2013-10-06 19:29:23 15fc InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator.
2013-10-06 19:29:23 7920 [Note] InnoDB: The InnoDB memory heap is disabled
2013-10-06 19:29:23 7920 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2013-10-06 19:29:23 7920 [Note] InnoDB: Compressed tables use zlib 1.2.3
2013-10-06 19:29:23 7920 [Note] InnoDB: Not using CPU crc32 instructions
2013-10-06 19:29:23 7920 [Note] InnoDB: Initializing buffer pool, size = 16.0M
2013-10-06 19:29:23 7920 [Note] InnoDB: Completed initialization of buffer pool
2013-10-06 19:29:23 7920 [Note] InnoDB: Highest supported file format is Barracuda.
2013-10-06 19:29:23 7920 [Note] InnoDB: The log sequence numbers 0 and 0 in ibdata files do not match the log sequence number 198755718 in the ib_logfiles!
2013-10-06 19:29:23 7920 [Note] InnoDB: Database was not shutdown normally!
2013-10-06 19:29:23 7920 [Note] InnoDB: Starting crash recovery.
2013-10-06 19:29:23 7920 [Note] InnoDB: Reading tablespace information from the .ibd files...
2013-10-06 19:29:23 7920 [ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace bitnami_wordpress/wp_usermeta uses space ID: 2 at filepath: .\bitnami_wordpress\wp_usermeta.ibd. Cannot open tablespace mysql/innodb_index_stats which uses space ID: 2 at filepath: .\mysql\innodb_index_stats.ibd
InnoDB: Error: could not open single-table tablespace file .\mysql\innodb_index_stats.ibd
InnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.
Dave Burns
  • 165
  • 1
  • 1
  • 6
  • There're already suggestions on how to fix it in your error report. Did you try any of them? – Doan Cuong Oct 06 '13 at 17:47
  • @DoanCuong I'm not going to lie, I'm just a designer so most of this technical stuff is chinese to me, I don't know where to begin even with the suggestions! – Dave Burns Oct 06 '13 at 17:50

2 Answers2

6

I resolved same issue by deleting all of the ib_logfiles found in ~/x-ampp/mysql/data

Marc
  • 5,109
  • 2
  • 32
  • 41
3

Base on the suggestions of the error log, I think you should try this. I planned to write this in a comment, but that will hard for you to read, so I'll make it as an answer instead

You can't launch MySQL because XAMPP can't open file .\mysql\innodb_index_stats.ibd as shown in

Error: could not open single-table tablespace file .\mysql\innodb_index_stats.ibd

And here is suggestions how to fix it:

1) If there is a permission problem in the file and mysqld cannot
open the file, you should modify the permissions.

(1) is about permission. Go to .\mysql\innodb_index_stats.ibd and check if you have permission to read innodb_index_stats.ibd

2) If the table is not needed, or you can restore it from a backup,
then you can remove the .ibd file, and InnoDB will do a normal
crash recovery and ignore that table.

(2) you can try to delete .\mysql\innodb_index_stats.ibd. My suggestion is copy innodb_index_stats.ibd to another location just in case anything else happen

3) If the file system or the disk is broken, and you cannot remove
the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
and force InnoDB to continue crash recovery here.

(3) If you can't delete nnodb_index_stats.ibd, you can try modify my.cnf file and set innodb_force_recovery > 0 (you can use notepad or notepad++ to edit the file. It locate in xampp\mysql\

Try these first to see if it helps you

UPDATE Please try to locate file ibdata1 locate at xampp\mysql\data and delete it or rename it, then restart XAMPP, hope this gonna work for you

Doan Cuong
  • 2,594
  • 4
  • 22
  • 39