Cập nhật MySQL 5.5 lên MySQL 5.7


29

Tôi đã tìm kiếm một hướng dẫn cho người giả, về cách cập nhật Máy chủ MySQL 5.5 của tôi lên MySQL 5.7 Tôi đang sử dụng ubfox 14.04. Tôi đã thử các hướng dẫn trên trang web MySQL. Làm cách nào để nâng cấp máy chủ của tôi?


Tài liệu MySQL nói: "Nâng cấp nhiều hơn một mức phát hành, nhưng chỉ khi bạn nâng cấp một cấp phát hành một lần. Ví dụ: nâng cấp từ 5.1 lên 5.5, rồi lên 5.6. Thực hiện theo các hướng dẫn nâng cấp cho mỗi bản phát hành, liên tiếp . " vì vậy bạn nên thực hiện cập nhật theo hai bước 5.5 -> 5.6 -> 5.7
iterq

Câu trả lời:


74

Điều này làm việc cho tôi:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb
sudo gdebi mysql-apt-config_0.8.10-1_all.deb
sudo apt-get update
sudo apt-get install mysql-server

Lệnh 2 sẽ yêu cầu đầu vào:

nhập mô tả hình ảnh ở đây

Sau khi chọn 5.7, chọn "áp dụng"


$ mysql --version
mysql  Ver 14.14 Distrib 5.7.8-rc, for Linux (x86_64) using  EditLine wrapper

Đừng quên chạy mysql_upTHER sau khi cài đặt để nâng cấp các bảng hệ thống và khởi động lại máy chủ, theo hướng dẫn Nâng cấp MySQL .

$ mysql_upgrade

hoặc là

$ sudo mysql_upgrade -u root -p

Và khởi động lại mysql

sudo service mysql restart

1
Tôi đã nâng cấp mysql của mình bằng phương pháp này nhưng nó đã môi giới apache2 của tôi, bây giờ tôi đang nhận được 500 trên tất cả các trang web được lưu trữ của mình. Askubfox.com/questions/795868/ Mạnh
Rahul K Jha

1
Tôi nghĩ rằng liên kết deb phiên bản mới là: dev.mysql.com/get/mysql-apt-config_0.8.0-1_all.deb
zx1986

4
Lưu ý rằng sudo mysql_upgrade -u root -plà bắt buộc !!
Jadeye

2
Url tham số wget sẽ tiếp tục thay đổi khi các phiên bản mới được phát hành. Truy cập vào đây dev.mysql.com/doads/repo/apt và kiểm tra phần dưới cùng của trang
Gerbus

1
Làm thế nào để tôi choose "apply"... tôi nhấn enter và tôi phải thực hiện lại cùng một bước
Umair

28

Bạn có thể thấy nhận xét của tôi rằng giải pháp của @Rinzwind không hoạt động trong trường hợp của tôi (Ubuntu 14.04, Mysql 5.5). Vì vậy, tôi đã tìm ra giải pháp và tìm ra câu trả lời phù hợp với tôi tại Digital Ocean Tutorial .

Trước hết, Sao lưu tất cả cơ sở dữ liệu của bạn.

mysqldump --all-databases > all_databases.sql

Nếu lệnh trên không hiệu quả với bạn, hãy thử bên dưới.

mysqldump -u root -p --all-databases > all_databases.sql

Tôi đang dán phần đặc biệt của hướng dẫn làm việc cho tôi.

Nếu bạn muốn cài đặt MySQL 5.7, bạn sẽ cần thêm kho lưu trữ gói APT mới hơn từ trang kho lưu trữ APT của MySQL. Nhấp vào Tải xuống ở dưới cùng bên phải, sau đó sao chép liên kết trên trang tiếp theo từ Không, cảm ơn, chỉ cần bắt đầu tải xuống của tôi. Tải gói .deb về máy chủ của bạn.

wget https://dev.mysql.com/get/mysql-apt-config_0.8.1-1_all.deb

Tiếp theo, cài đặt nó bằng dpkg.

sudo dpkg -i mysql-apt-config_0.8.1-1_all.deb

Bạn sẽ thấy lời nhắc hỏi bạn muốn cấu hình sản phẩm MySQL nào. Tùy chọn Máy chủ MySQL, được tô sáng, sẽ nói mysql-5.7. Nếu không, nhấn ENTER , sau đó cuộn xuống mysql-5.7 bằng các phím mũi tên và nhấn ENTER lại.

Khi tùy chọn cho biết mysql-5.7, hãy cuộn xuống trên menu chính để Áp dụng và nhấn ENTER lại. Bây giờ, cập nhật chỉ số gói của bạn.

sudo apt-get update

Cuối cùng, cài đặt gói máy chủ MySQL, hiện chứa MySQL 5.7.

sudo apt-get install mysql-server

Bây giờ nâng cấp tất cả các cơ sở dữ liệu mysql.

sudo mysql_upgrade -u root -p

Bây giờ khởi động lại máy chủ mysql.

sudo service mysql restart

Luôn tìm phiên bản mới nhất của tệp mysql-at-config tại https://dev.mysql.com/doads/repo/apt/


2
Tôi nhận được lỗi sau trong khi cài đặt mysql-server: W: GPG lỗi: repo.mysql.com đáng tin cậy InRelease: Chữ ký sau đây là không hợp lệ: KEYEXPIRED 1487236823 KEYEXPIRED 1487236823 KEYEXPIRED 1487236823
Snigdha Batra

3
@SnigdhaBatra, Đó là một lỗi đã biết . Sử dụng lệnh sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5để giải quyết vấn đề của bạn.
Rahul K Jha

Tôi hiểu rằng khóa A4A9 ~ không thể lấy được, vì vậy không có gì xảy ra
Lucas Bustamante

Phiên bản Ubuntu nào bạn đang sử dụng?
Rahul K Jha

1
Fwiw, để sao lưu tất cả các cơ sở dữ liệu, tôi cũng phải chỉ định người dùng mysqldump(theo câu trả lời này ). ví dụ:mysqldump -u root -p --all-databases > alldb.sql
Nick F

3

điều này cũng có thể xảy ra khi nâng cấp từ 14.04 lên 16.04, điều này gây ra việc nâng cấp mysql không được hỗ trợ (5.5 -> 5.7), đây không phải là đường dẫn nâng cấp được hỗ trợ như tài liệu của mysql . Cách dễ nhất để giải quyết vấn đề này là nâng cấp mysql lên 5.6 trong khi vẫn dưới 14.04. Bạn đạt được điều này bằng cách đầu tiên (tất nhiên!) Từ bỏ tất cả các cơ sở dữ liệu của bạn;

tên máy chủ # mysqldump --lock-all-frames -u root -p --all-cơ sở dữ liệu> backup.sql

sau đó nâng cấp lên mysql 5.6;

tên máy chủ # apt-get cài đặt mysql-server-5.6 mysql-client-5.6 mysql-server-core-5.6 mysql-client-core-5.6

Bằng cách này, tất cả các cơ sở dữ liệu của bạn được nâng cấp tại chỗ và (trên máy của tôi cho đến nay) hoàn toàn an toàn và minh bạch đến 5,6. Vấn đề duy nhất sau khi nâng cấp có thể là các mục TIMESTAMP. Bây giờ, ngay cả sau khi nâng cấp phát hành lên 16.04, mysql vẫn còn ở mức 5.6 và các vấn đề xung quanh việc nâng cấp không được hỗ trợ trực tiếp từ 5.5 lên 5.7 trong quá trình nâng cấp phát hành thậm chí không bao giờ xuất hiện.

Hi vọng điêu nay co ich,

Kailee.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.