Можно ли установить MySQL 5.5 или 5.6 на Ubuntu 16.04?


13

Я недавно обновился до Ubuntu 16.04. К сожалению мне нужно работать MySQL 5.5 или 5.6. Я пробовал много решений, чтобы MySQL 5.5 или 5.6 работали на Ubuntu 16.04, как это Установите MySql 5.6 на Ubuntu 16.04 . Но никто из них не работает. Ubuntu обнаруживает неудовлетворенные зависимости, но говорит «но он не будет установлен» для 5.5 или говорит, что пакет «mysql-server-5.6» не имеет кандидата на установку ...

Разве нельзя принудительно установить более раннюю версию MySQL в Ubuntu? Это почему?


1
Официальные репозитории Ubuntu 16.04 не содержат никакой версии MySQL, кроме 5.7. Если вы хотите другую версию, вы должны найти пакет из другого источника. Вы действительно не должны были обновиться до 16.04 без проверки этого.
fkraiem


Какой из ответов на связанный вопрос вы пробовали? Некоторые используют пакет Deb из Oracle или даже компилируют его из исходного кода, который должен работать независимо от состояния репозитория программного обеспечения.
Дэвид Фёрстер

@fkraiem «Вы действительно не должны обновляться ... без проверки этого» - вы предполагаете, что необходимость MySQL 5.5 была известна во время обновления. Недавно я начал новую работу со старым программным обеспечением, которое требует MySQL 5.5 (ничего более нового) - так что я должен был проверить всех возможных работодателей и что они работают перед обновлением?
Натан Крёз

Ответы:


22

Пошаговое руководство * по установке mysql 5.5.x на Ubuntu 16.04 Xenial-Xerus. Пожалуйста, смотрите эту документацию

ИЛИ

Смотрите шаги ниже:

Установка MySQL 5.5.51 в Ubuntu 16.06

  1. Удалите любую существующую версию MySQL

    sudo rm /var/lib/mysql/ -R
    
  2. Удалить профиль MySQL

    sudo rm /etc/mysql/ -R
    
  3. Автоматически удалить MySQL

    sudo apt-get autoremove mysql* --purge
    sudo apt-get remove apparmor
    
  4. Скачать версию 5.5.51 с сайта MySQL

    wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz
    
  5. Добавить mysqlгруппу пользователей

    sudo groupadd mysql
    
  6. Добавить mysql(не текущий пользователь) в mysqlгруппу пользователей

    sudo useradd -g  mysql mysql
    
  7. Извлечь mysql-5.5.51-linux2.6-x86_64.tar.gzв/usr/local

    cd /usr/local
    sudo tar -xvf mysql-5.5.49-linux2.6-x86_64.tar.gz
    
  8. Создать mysqlпапку в/usr/local

    sudo mv mysql-5.5.49-linux2.6-x86_64 mysql
    
  9. Установить mysqlвладельца каталога и группу пользователей

    cd mysql
    sudo chown -R mysql:mysql *
    
  10. Установите необходимый пакет lib

    sudo apt-get install libaio1
    
  11. Выполнить скрипт установки mysql

    sudo scripts/mysql_install_db --user=mysql
    
  12. Установить владельца каталога mysql вне каталога mysql

    sudo chown -R root .
    
  13. Установить владельца каталога данных из каталога mysql

    sudo chown -R mysql data
    
  14. Скопируйте файл конфигурации mysql

    sudo cp support-files/my-medium.cnf /etc/my.cnf 
    
  15. Запустите MySQL

    sudo bin/mysqld_safe --user=mysql &
    sudo cp support-files/mysql.server /etc/init.d/mysql.server
    
  16. Инициализировать пароль пользователя root

    sudo bin/mysqladmin -u root password '111111'
    
  17. Запустите сервер MySQL

    sudo /etc/init.d/mysql.server start
    
  18. Остановить сервер MySQL

    sudo /etc/init.d/mysql.server stop
    
  19. Проверьте статус mysql

    sudo /etc/init.d/mysql.server status
    
  20. Включить myql при запуске

    sudo update-rc.d -f mysql.server defaults 
    
  21. Отключить MySQL при запуске (Необязательно)

    sudo update-rc.d -f mysql.server remove
    
  22. Добавить MySQL путь в систему

    sudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
    
  23. Теперь используйте команду ниже, чтобы запустить mysql

    mysql -u root -p 
    

PS: Чтобы изменения произошли, нужно перезагрузиться.

По материалам китайского блога


1
Работает как шарм! Спасибо. Только одна вещь - если вы устанавливаете MySQL на Ubuntu 16 - не создавайте сценарий systemctl - после перезагрузки он будет создан автоматически.
1

1
Перезагрузка должна происходить между шагами № 16 и № 17, чтобы шаги № 17-21 работали.
e_i_pi

сделал все это, но в результате возникли проблемы с зависимостями (предположительно, некоторые общие библиотеки попали в неправильную версию).
Амихай Шрайбер

Это действительно необходимо удалить apparmor? Я не вижу линии для переустановки впоследствии. Я не знаю, что такое apparmor, но похоже, что удаление - это проблема безопасности.
Параг

Все еще работаю без снятия apparmor
Витор Везани

4

Попробуйте это, сначала вы должны удалить

sudo rm /var/lib/mysql/debian-5.7.flag

тогда

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
sudo apt install mysql-server-5.6
sudo apt install mysql-client-5.6


2

Более простой альтернативой является использование Percona Server. По их документации :

Установка Percona Server из репозитория Percona apt

  1. Получить пакеты репозитория из веб-сайта Percona:

    wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb
    
  2. Установите загруженный пакет с помощью dpkg . Для этого выполните следующие команды от имени root или с помощью sudo :

    dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb
    

    После установки этого пакета следует добавить репозитории Percona. Вы можете проверить настройки хранилища в /etc/apt/sources.list.d/percona-release.listфайле.

  3. Не забудьте обновить локальный кеш:

    apt-get update
    
  4. После этого вы можете установить серверный пакет:

    apt-get install percona-server-server-5.5
    

HTTP-запрос отправлен, ожидание ответа ... 404 Not Found
simhumileco

1
@simhumileco они изменили версию. На сегодняшний день используйте wget repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc) _all.deb, а затем dpkg -i percona-release_0.1-4. $ (lsb_release -sc) _all.deb
Леонель Мартинс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.