Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Lỗi Windows

Khắc phục lỗi "Error: MySQL shutdown unexpectedly" trên XAMPP

Người dùng thường gặp thông báo "Error: MySQL shutdown unexpectedly" khi khởi động MySQL qua XAMPP Control Panel. Nguyên nhân thường do file dữ liệu MySQL bị hỏng, nhưng dữ liệu thực tế thường vẫn an toàn. Việc xóa file ibdata1 có thể sửa lỗi nhưng rủi ro làm hỏng database, nên không khuyến khích nếu bạn quan tâm đến dữ liệu.

Khắc phục lỗi  Error: MySQL shutdown unexpectedly  trên XAMPP

Giải pháp an toàn nhất là sử dụng thư mục backup có sẵn trong thư mục mysql để khôi phục.

Sử dụng thư mục Backup MySQL

Thư mục backup đi kèm XAMPP chứa bản sao sạch của dữ liệu hệ thống. Thay thế thư mục data hiện tại bằng backup và copy lại database của bạn.

  1. Tắt hoàn toàn XAMPP.
  2. Mở thư mục cài đặt XAMPP (mặc định: C:\xampp).
  3. Vào thư mục mysql.
  4. Đổi tên thư mục data thành data_old.
  5. Tạo thư mục data mới.
  6. Copy toàn bộ nội dung từ thư mục backup vào thư mục data mới.
  7. Từ data_old, copy các thư mục database của bạn (bỏ qua mysql, performance_schema, phpmyadmin) vào thư mục data mới.
  8. Copy file ibdata1 từ data_old ghi đè lên file trong data mới.
  9. Chạy XAMPP với quyền Administrator và khởi động MySQL để kiểm tra.

Sửa chữa Database MySQL bằng Shell

Cách tiếp cận dòng lệnh cho người quen thuộc với Shell.

  1. Mở XAMPP Control Panel, nhấn nút Shell.
  2. Trong Shell, chạy:
    mysqld --console --skip-grant-tables --skip-external-locking
  3. Mở một Shell thứ hai, chạy:
    mysqlcheck -r --databases mysql --use-frm
  4. Dừng MySQL ở Shell đầu tiên, đóng cả hai cửa sổ Shell.
  5. Khởi động lại MySQL từ Control Panel.

Dừng dịch vụ MySQL

Nếu dịch vụ MySQL của Windows đang chạy, nó xung đột với MySQL của XAMPP.

  1. Windows + R → services.msc → Enter.
  2. Tìm dịch vụ MySQL, chuột phải chọn Stop.
  3. Thử khởi động MySQL từ XAMPP Control Panel.

Thay đổi cổng Client và Server

Xung đột cổng (thường là 3306) cũng gây lỗi. Sửa file my.ini.

  1. Mở C:\xampp\mysql\bin\my.ini bằng Notepad.
  2. Tìm mục [client] và [mysqld], thay đổi giá trị port (ví dụ: 3307).
  3. Lưu file và khởi động lại XAMPP.