Khi phải migration server mình gặp phải tình trạng với ở server đích đang cài dự án cũ cài đặt từ trước sử dụng version mariadb cũ(5.5), server cần di chuyển sử dụng version mariadb mới (10.5)
Lưu ý: Khi thao tác với EC2 cần backup AMI trước khi thực hiện những tác vụ lớn
Background
Dump database ở server cần di chuyển (version mới) sử dụng các phương thức strict hơn => import vào database ở server đích (version cũ) gây ra tình trạng lỗi đọc vì các phương thức mới xuất hiện
Xử lý: Update database version tại server đích lên 10.5
Thực hiện
Lưu ý: Sẽ bị downtime nên khi update để code vào trạng thái maintenance hoặc phải tách hoặc nhân đôi server ra update trước rồi mới tiếp tục cho user sử dụng
1. Back up toàn bộ database hiện tại
Gợi ý nên dump riêng từng database để nếu lỗi vẫn sẽ có 1 bản tách biệt của từng dự án
Lệnh dump toàn bộ database:
mysqldump -u root -ppassword --all-databases > /tmp/all-database.sql
2. Gỡ version mariadb cũ hiện tại
Stop mariadb
systemctl stop mysql
Remove mariadb
yum remove mariadb-server mariadb mariadb-libs
Clean
yum clean all
Remove directory mysql
sudo rm -rf /var/lib/mysql
3. Cài đặt mariadb version mới như bình thường
sudo amazon-linux-extras | grep mariadb
sudo amazon-linux-extras enable mariadb10.5
sudo yum clean metadata
sudo yum install mariadb -y
sudo systemctl enable mariadb
sudo systemctl start mariadb
mysql_secure_installation
4. Tạo DB và Import, excute sql file để back lại dữ liệu đã backup
HAPPY CODING!