Bạn Tìm Gì Hôm Nay ...?
Tất cả đều có chỉ trong 1 nốt nhạc !
Nếu cần hỗ trợ chi tiết gọi 1900 9477
Trong quá trình di chuyển cơ sở dữ liệu database từ máy chủ cũ sang máy chủ mới và import vào. Bạn sẽ gặp một lỗi thông báo Unknown collation: utf8mb4_0900_ai_ci
như ảnh bên dưới.
Nguyên nhân chủ yêu và thường xảy ra nhất là do phiên bản MySQL/MariaDB của 2 máy chủ không giống nhau, nên khi import vào máy chủ mới collation ID không khớp.
Với lỗi này bạn có thể xử lý bằng 2 cách sau:
Với cách này bạn cần hạ hoặc nâng cấp phiên bản MySQL/MariaDB ở máy chủ mới sao cho cùng phiên bản với máy chủ cũ để giải quyết vấn đề. Tuy nhiên có một bất cập là việc thay đổi phiên bản rất phức tạp và nhà phát triển không cho phép bạn hạ cấp.
Bạn chỉ có thể gở bỏ và cài đặt mới lại. Và việc này sẽ gặp nhiều rủi ro với máy chủ đã và đang có webiste hoạt động.
Cách này sẽ thay đổi CHARSET và COLLATE của database. Với cách này sẽ đơn giản nhiều hơn và rủi ro thấp hơn.
utf8mb4_0900_ai_ci
thành utf8mb4_general_ci
CHARSET=utf8mb4
thành CHARSET=utf8
Trên hệ thống Linux có một thế mạnh là bạn có thể thay đổi nội dụng của file với một dòng lệnh. Ở đây mình sử dụng lệnh sed
Chú thích:
backup.sql
. Nếu có dòng utf8mb4_0900_ai_ci
sẽ tự động thay thế bằng utf8_general_ci
backup.sql
. Nếu có dòng CHARSET=utf8mb4
sẽ tự động thay thế bằng CHARSET=utf8
Lưu ý: Thay backup.sql
bằng tên file database của bạn
Lệnh 1: sed -i 's/utf8mb4_0900_ai_ci/utf8_general_ci/g' backup.sql
Lệnh 2: sed -i 's/CHARSET=utf8mb4/CHARSET=utf8/g' backup.sql
Sau khi chạy lệnh sửa xong. Bạn có thể sử dụng Database đó để import lại.
Chúc bạn thực hiện thành công.
Bạn có thể tham khảo thêm 1 số bài viết liên quan bảo mật tại đây
========================================
P.A Việt Nam cung cấp đa dạng các cấu hình Máy Chủ Ảo và Máy Chủ Riêng
Cloud Server
Cloud Server Pro
Máy Chủ Riêng
Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/