Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't run XAMPP - MySql

Tags:

xampp

When I try to start XAMPP - MySql it doesn't work. I've already tried to fix it, but I couldn't find any actual solution, I hope you can find what's wrong with it.

There's the log:

2019-06-26  9:08:35 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2019-06-26  9:08:35 0 [Note] InnoDB: Uses event mutexes
2019-06-26  9:08:35 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2019-06-26  9:08:35 0 [Note] InnoDB: Number of pools: 1
2019-06-26  9:08:35 0 [Note] InnoDB: Using SSE2 crc32 instructions
2019-06-26  9:08:35 0 [Note] InnoDB: Initializing buffer pool, total size = 16M, instances = 1, chunk size = 16M
2019-06-26  9:08:35 0 [Note] InnoDB: Completed initialization of buffer pool
2019-06-26  9:08:35 0 [Note] InnoDB: Setting file 'C:\xampp\mysql\data\ibdata1' size to 10 MB. Physically writing the file full; Please wait ...
2019-06-26  9:08:35 0 [Note] InnoDB: File 'C:\xampp\mysql\data\ibdata1' size is now 10 MB.
2019-06-26  9:08:35 0 [Note] InnoDB: Setting log file C:\xampp\mysql\data\ib_logfile101 size to 5242880 bytes
2019-06-26  9:08:35 0 [Note] InnoDB: Setting log file C:\xampp\mysql\data\ib_logfile1 size to 5242880 bytes
2019-06-26  9:08:36 0 [Note] InnoDB: Renaming log file C:\xampp\mysql\data\ib_logfile101 to C:\xampp\mysql\data\ib_logfile0
2019-06-26  9:08:36 0 [Note] InnoDB: New log files created, LSN=45786
2019-06-26  9:08:36 0 [Note] InnoDB: Doublewrite buffer not found: creating new
2019-06-26  9:08:36 0 [Note] InnoDB: Doublewrite buffer created
2019-06-26  9:08:36 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
2019-06-26  9:08:36 0 [Note] InnoDB: Creating foreign key constraint system tables.
2019-06-26  9:08:36 0 [Note] InnoDB: Creating tablespace and datafile system tables.
2019-06-26  9:08:36 0 [Note] InnoDB: Creating sys_virtual system tables.
2019-06-26  9:08:36 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
2019-06-26  9:08:36 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2019-06-26  9:08:36 0 [Note] InnoDB: Setting file 'C:\xampp\mysql\data\ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2019-06-26  9:08:36 0 [Note] InnoDB: File 'C:\xampp\mysql\data\ibtmp1' size is now 12 MB.
2019-06-26  9:08:36 0 [Note] InnoDB: Waiting for purge to start
2019-06-26  9:08:36 0 [Note] InnoDB: 10.3.16 started; log sequence number 0; transaction id 7
2019-06-26  9:08:36 0 [Note] Plugin 'FEEDBACK' is disabled.
2019-06-26  9:08:36 0 [Note] Server socket created on IP: '::'.
2019-06-26  9:08:36 0 [ERROR] mysqld.exe: Table '.\mysql\user' is marked as crashed and should be repaired
2019-06-26  9:08:36 0 [ERROR] mysqld.exe: Index for table '.\mysql\user' is corrupt; try to repair it
2019-06-26  9:08:36 0 [ERROR] Couldn't repair table: mysql.user
2019-06-26  9:08:36 0 [ERROR] Fatal error: Can't open and lock privilege tables: Index for table 'user' is corrupt; try to repair it
like image 277
Shark44 Avatar asked Jun 26 '19 07:06

Shark44


People also ask

Why is MySQL not working on XAMPP?

Fixing the MySQL server not starting in XAMPP is done by reverting back the data files pre-issue. Navigate to your XAMPP MySQL directory ( C:\xampp\mysql ). Create a new folder called FIX_BACKUP . Copy C:\xampp\mysql\backup and C:\xampp\mysql\data into C:\xampp\mysql\FIX_BACKUP .

Why can I start MySQL in XAMPP?

If you have the MySQL already installed on your windows, then go to the Services by executing "services. msc" run command or from the Start menu on your windows and right-click the MySQL file and then stop the service, now open your XAMPP and start MySQL. Now the MySQL will start on the port 3306.


6 Answers

This is as a result of some files in C:\xampp\mysql\data\mysql getting corrupted.

Solution:

  1. Back up C:\xampp\mysql\data
  2. Copy all file C:\xampp\mysql\backup
  3. Paste and replace existing file in: C:\xampp\mysql\data, except for the ibdata1 file.
    Leaving ibdata1 will help against table does not exist error.
like image 57
Tobiloba Avatar answered Oct 11 '22 03:10

Tobiloba


The solution was just a

Copy From ...xampp/mysql/backup/... of all files and paste into .../xampp/mysql/data/  -> you will lost your data

Just copy the folder From ...xampp/mysql/backup/ & Paste into .../xampp/mysql/data/  -> this will help to run Mysql & existing database is working
like image 42
nourhero Avatar answered Oct 11 '22 03:10

nourhero


copy all the file and folder from xampp/mysql/backup/ and paste it to xampp/mysql/data/. If asked for replace than click on replace all

like image 24
Prafful Panwar Avatar answered Oct 11 '22 02:10

Prafful Panwar


That happened to me before and the solution was very simple for that. please Read all steps carefully :

  1. Make a backup for this folder C:\xampp\mysql\data (make sure your backup folder's name is not backup) .
  2. Now Copy all files/folders from C:\xampp\mysql\backup except ibdata1 to avoid error of table does not exist .
  3. Paste all copied files/folders to C:\xampp\mysql\data

Hope your problem will be sloved.

like image 22
Oussama Madjmaa Avatar answered Oct 11 '22 03:10

Oussama Madjmaa


@tobiloba's Solution is a temporary one. I had the similar problem. and which will be solved temporarily with his solution. But on next time of mysql start. it failed. As I need to keep my data as well as open the mysql server to run it.

Open your my.conf from xampp/mysql/bin/my.conf and find this two lines.

innodb_buffer_pool_size=10M

change this to 30M 0r 50MB. and than

 innodb_data_file_path=ibdata1:20M:autoextend

change this too

 innodb_data_file_path=ibdata1:60M:autoextend

For me it solved the problem permanently and keep my existing data alive and works fine after that.

like image 22
Kvvaradha Avatar answered Oct 11 '22 03:10

Kvvaradha


Simply edit this line from my.ini:

; Maximum amount of memory a script may consume (128MB) ; http://php.net/memory-limit memory_limit=128M -> choose size you want.

like image 28
Nghia Avatar answered Oct 11 '22 01:10

Nghia