Cách nâng cấp phiên bản MariaDB 10.1 lên 10.3

Tác giả sysadmin, T.M.Hai 19, 2022, 02:17:52 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách nâng cấp phiên bản MariaDB 10.1 lên 10.3


Hướng dẫn ngắn này sẽ chỉ cho bạn cách nâng cấp MariaDB 10.1 lên 10.3 trong CentOS 7 Linux. Chúng tôi sẽ bắt đầu bằng cách sửa đổi tệp kho lưu trữ và thực hiện 'cập nhật yum'. Điều này có thể không tự động cập nhật gói máy chủ MariaDB, vì vậy tôi sẽ chỉ cho bạn cách sử dụng tập lệnh mysql_upgrade theo cách thủ công để hoàn tất quy trình.

1. Nâng cấp MariaDB 10.1 lên 10.3

Trước tiên, hãy kiểm tra phiên bản MariaDB hiện tại đã được cài đặt.

Mã nguồn [Chọn]
[ root@centos7 ~]# mysql -V
mysql Ver 15.1 Distrib 10.1.36-MariaDB, for Linux (x86_64) using readline 5.1

Như chúng ta có thể thấy ở đây, chúng ta đang chạy MariaDB 10.1.36. Cái này được cài đặt từ một kho lưu trữ mà tôi đã tạo cách đây một thời gian, như được hiển thị bên dưới.

Mã nguồn [Chọn]
[root@centos7 ~]# cat /etc/yum.repos.d/mariadb.repo
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Giờ chỉ cần chỉnh sửa tệp.repo mà bạn đang sử dụng cho MariaDB bằng trình soạn thảo văn bản yêu thích của mình và thay đổi 10.1 thành 10.3. Trong trường hợp này, đường baseurl sẽ trông như thế này sau khi chỉnh sửa.

baseurl =   Đăng nhập để xem liên kết

Bây giờ để nâng cấp MariaDB, hãy chạy lệnh 'yum update'. Nếu điều này không cung cấp các bản cập nhật cho các gói MariaDB của bạn, hãy chạy 'yum clean all' rồi thử lại.

Trên máy chủ của tôi, quá trình này bắt đầu cập nhật các gói MariaDB-client, MariaDB-common, MariaDB-server và MariaDB-shared lên phiên bản 10.3.10 mới nhất hiện tại. Tất cả các gói được cập nhật thành công ngoại trừ máy chủ MariaDB không thành công.

Mã nguồn [Chọn]
Failed:
  MariaDB-server.x86_64 0:10.0.29-1.el7.centos

Các thông tin sau đây được ghi chú sau đó:

Mã nguồn [Chọn]
******************************************************************
A MySQL or MariaDB server package (MariaDB-server-10.1.36-1.el7.centos.x86_64) is installed.

Upgrading directly from MySQL 10.1 to MariaDB 10.3 may not
be safe in all cases.  A manual dump and restore using mysqldump is
recommended.  It is important to review the MariaDB manual's Upgrading
section for version-specific incompatibilities.

A manual upgrade is required.

- Ensure that you have a complete, working backup of your data and my.cnf
  files
- Shut down the MySQL server cleanly
- Remove the existing MySQL packages.  Usually this command will
  list the packages you should remove:
  rpm -qa | grep -i '^mysql-'

  You may choose to use 'rpm --nodeps -ev ' to remove
  the package which contains the mysqlclient shared library.  The
  library will be reinstalled by the MariaDB-shared package.
- Install the new MariaDB packages supplied by MariaDB Foundation
- Ensure that the MariaDB server is started
- Run the 'mysql_upgrade' program

This is a brief description of the upgrade process.  Important details
can be found in the MariaDB manual, in the Upgrading section.
******************************************************************
error: %pre(MariaDB-server-10.3.10-1.el7.centos.x86_64) scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package MariaDB-server-10.3.10-1.el7.centos.x86_64
MariaDB-server-10.1.36-1.el7.centos.x86_64 was supposed to be removed but is not!
  Verifying  : MariaDB-server-10.1.36-1.el7.centos.x86_64                                                                                                1/2
  Verifying  : MariaDB-server-10.3.10-1.el7.centos.x86_64                                                                                                2/2

Failed:
  MariaDB-server.x86_64 0:10.1.36-1.el7.centos                                  MariaDB-server.x86_64 0:10.3.10-1.el7.centos

2. Cập nhật thủ công

Vì vậy, về cơ bản, chúng ta cần hoàn thành quy trình theo cách thủ công. Điều này có thể được thực hiện bằng cách chạy các lệnh sau theo thứ tự này. Lưu ý rằng theo khuyến nghị, trước tiên bạn nên sao lưu tất cả cơ sở dữ liệu trước khi tiếp tục, đồng thời sao chép tệp /etc/my.cnf, như được đề xuất trong đầu ra ở trên.

Mã nguồn [Chọn]
systemctl stop mariadb

yum remove MariaDB-server

yum install MariaDB-server

systemctl start mariadb

mysql_upgrade -u root -p

Thao tác này sẽ dừng MariaDB, xóa gói 10.1 cũ hơn, cài đặt phiên bản 10.3 mới hơn của gói theo bản cập nhật kho lưu trữ trước đó, khởi động MariaDB rồi chạy tập lệnh nâng cấp. Bạn sẽ cần nhập mật khẩu cho người dùng được chỉ định khi chạy nâng cấp.

Mã nguồn [Chọn]
[root@centos7 ~]# mysql_upgrade -u root -p
Enter password:
Phase 1/7: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats                                 OK
... SNIP...

Quá trình nâng cấp mất khoảng 10 giây để hoàn tất đối với khoảng 10 cơ sở dữ liệu có tổng kích thước nhỏ hơn 500 MB cho tất cả các cơ sở dữ liệu đó, vì nội dung được kiểm tra tính tương thích, lưu ý rằng thời gian cho phần này có thể khác nhau tùy thuộc vào cơ sở dữ liệu của bạn.

Bây giờ nếu chúng tôi kiểm tra lại phiên bản MariaDB của mình, chúng tôi có thể thấy chúng tôi đã nâng cấp thành công lên 10.1.

Mã nguồn [Chọn]
[root@centos7 ~]# mysql -V
mysql  Ver 15.1 Distrib 10.3.10-MariaDB, for Linux (x86_64) using readline 5.1

Bây giờ tôi đã chỉ cho bạn cách nâng cấp MariaDB 10.1 lên 10.3. Sau khi cập nhật kho lưu trữ và chạy 'cập nhật yum', chúng tôi cần thực hiện một số bước thủ công bổ sung như được hiển thị để hoàn tất quá trình nâng cấp.