MySQL 5.5 Обновление до MySQL 5.7

29

Я искал учебник для чайников, о том, как обновить MySQL 5.5 Server до MySQL 5.7 Я использую Ubuntu 14.04. Я уже пробовал учебники на веб-сайте MySQL. Как я могу обновить свой сервер?

Cgnkev
источник
В документации по MySQL сказано: «Поддерживается обновление более одного уровня выпуска, но только если вы обновляете по одному уровню выпуска за раз. Например, обновитесь с 5.1 до 5.5, а затем до 5.6. Следуйте инструкциям по обновлению для каждого выпуска подряд. «. поэтому вы должны выполнить обновление в два этапа 5.5 -> 5.6 -> 5.7
iterq

Ответы:

74

Это сработало для меня:

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

Вторая команда запросит ввод:

введите описание изображения здесь

После выбора 5.7 выберите «применить»


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

Не забудьте запустить mysql_upgrade после установки, чтобы обновить системные таблицы и перезапустить сервер, следуя руководству по обновлению MySQL .

$ mysql_upgrade

или

$ sudo mysql_upgrade -u root -p

И перезапустите MySQL

sudo service mysql restart
Rinzwind
источник
1
Я обновил свой MySQL, используя этот метод, но он сломал мой Apache2, теперь я получаю 500 на всех моих размещенных сайтов. askubuntu.com/questions/795868/…
Рахул К Джа
1
Я думаю, что ссылка на новую версию deb: dev.mysql.com/get/mysql-apt-config_0.8.0-1_all.deb
zx1986
4
Обратите внимание, что sudo mysql_upgrade -u root -pтребуется !!
Jadeye
2
Параметр wget url будет продолжать меняться по мере выпуска новых версий. Зайдите сюда dev.mysql.com/downloads/repo/apt и проверьте нижнюю часть страницы
Gerbus
1
как я choose "apply"... я нажимаю ввод, и он снова и снова делает мне один и тот же шаг
Umair
28

Вы можете видеть мой комментарий, что решение @Rinzwind не работает в моем случае (Ubuntu 14.04, Mysql 5.5). Итак, я нашел решение и нашел ответ, который сработал для меня в Digital Ocean Tutorial .

Прежде всего, сделайте резервную копию всей вашей базы данных.

mysqldump --all-databases > all_databases.sql

Если указанная выше команда не сработала, попробуйте ниже 1.

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

Я вставляю ту часть учебника, которая работала для меня.

Если вы хотите установить MySQL 5.7, вам нужно добавить более новый репозиторий пакетов APT со страницы репозитория MySQL APT. Нажмите Загрузить в правом нижнем углу, затем скопируйте ссылку на следующей странице из Нет, просто начните мою загрузку. Загрузите пакет .deb на свой сервер.

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

Далее установите его с помощью dpkg.

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

Вы увидите приглашение, которое спросит вас, какой продукт MySQL вы хотите настроить. Параметр MySQL Server, который выделен, должен сказать mysql-5.7. Если этого не произойдет, нажмите клавишу ВВОД , затем перейдите к mysql-5.7 с помощью клавиш со стрелками и снова нажмите клавишу ВВОД .

После того, как опция говорит mysql-5.7, прокрутите вниз в главном меню, чтобы Применить и снова нажмите ENTER. Теперь обновите индекс вашего пакета.

sudo apt-get update

Наконец, установите пакет MySQL-server, который теперь содержит MySQL 5.7.

sudo apt-get install mysql-server

Теперь обновите все базы данных mysql.

sudo mysql_upgrade -u root -p

Теперь перезапустите сервер MySQL.

sudo service mysql restart

Всегда находите последнюю версию файла mysql-at-config по адресу https://dev.mysql.com/downloads/repo/apt/

Рахул К Джа
источник
2
При установке mysql-сервера я получаю следующую ошибку: W: ошибка GPG: repo.mysql.com trusty InRelease: недопустимы следующие подписи: KEYEXPIRED 1487236823 KEYEXPIRED 1487236823 KEYEXPIRED 1487236823
Снигдха Батра
3
@SnigdhaBatra, это известная ошибка . Используйте команду, sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5чтобы решить вашу проблему.
Рахул К Джа
Я понял, что ключ A4A9 ~ не может быть извлечен, поэтому ничего не происходит
Лукас Бустаманте
Какую версию Ubuntu вы используете?
Рахул К Джа
1
Кстати, для резервного копирования всех баз данных мне нужно было также указать пользователя mysqldump(согласно этому ответу ). Например:mysqldump -u root -p --all-databases > alldb.sql
Ник Ф
3

это также может произойти при обновлении с 14.04 до 16.04, что вызывает неподдерживаемое обновление mysql (5.5 -> 5.7), которое не является поддерживаемым путем обновления, как описано в mysql . Самый простой способ обойти это - обновить mysql до 5.6, хотя все еще под 14.04. Вы достигаете этого, сначала (конечно!), Сбрасывая все свои базы данных;

имя хоста # mysqldump - блокировки всех таблиц -u root -p --all-database> backup.sql

затем обновление до mysql 5.6;

hostname # apt-get install mysql-server-5.6 mysql-client-5.6 mysql-server-core-5.6 mysql-client-core-5.6

Таким образом, все ваши базы данных обновляются на месте и (на моих машинах до сих пор) полностью безопасно и прозрачно до 5.6. Единственной проблемой после обновления могут быть записи TIMESTAMP. Теперь, даже после do-release-upgrade до 16.04, mysql все еще остается на уровне 5.6, и проблемы, связанные с неподдерживаемым обновлением с 5.5 напрямую до 5.7 во время обновления релиза, никогда не всплывают.

Надеюсь это поможет,

Kailee.

Kailee
источник