Я пытаюсь установить MySQL 5.7 на новую установку Ubuntu 20.04. Я выполнил шаги Кульфи из этого поста , чтобы установить MySQL 5.7 на Ubuntu 20.04. Мне удалось установить mysql-client, но не mysql-server.
Результат
apt-cache policy mysql-server
:
mysql-server:
Installed: (none)
Candidate: 8.0.19-0ubuntu5
Version table:
8.0.19-0ubuntu5 500
500 http://ro.archive.ubuntu.com/ubuntu focal/main amd64 Packages
500 http://ro.archive.ubuntu.com/ubuntu focal/main i386 Packages
5.7.30-1ubuntu18.04 500
500 http://repo.mysql.com/apt/ubuntu bionic/mysql-5.7 amd64 Packages
5.7.29-0ubuntu0.18.04.1 500
500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
500 http://security.ubuntu.com/ubuntu bionic-security/main i386 Packages
Я использовал следующую команду для установки mysql-server.
sudo apt install mysql-server=5.7.29-0ubuntu0.18.04.1
Результат выполнения приведенной выше команды:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mysql-server : Depends: mysql-server-5.7 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Я также попробовал предложения из этого сообщения , а также этого сообщения (то, что я думал, могло сработать).
Не могли бы вы указать мне правильное направление?
Спасибо!
Мне удалось заставить его работать! Я не опытный пользователь Linux, поэтому, пожалуйста, не стесняйтесь комментировать / редактировать / улучшать мой ответ. Как вы увидите, я не понимаю, почему некоторые вещи работают, а некоторые нет ...
Итак, я установил mysql-apt-config в качестве помощника. Это закомментировало все записи в /etc/apt/sources.list.d/mysql.list
(создан в соответствии с ответом Кульфи в этой записи )
В этой статье также помогло.
wget http://repo.mysql.com/mysql-apt-config_0.8.10-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb
Запустите команду ниже и выберите MySQL 5.7 из списка:
sudo dpkg-reconfigure mysql-apt-config
sudo apt update
sudo apt-cache policy mysql-server
Я не знаю почему, но без следующего он выдал ошибку при установке mysql-community-server и завершился неудачей.
sudo mkdir /etc/mysql/conf.d
Установите компоненты в этом порядке. В противном случае отображаются ошибки, похожие на те, что были в моем исходном вопросе. В принципе, Я попытался установить MySQL-сервер - не удалось запросить MySQL-сообщества-сервер. Я попытался установить позже, это снова не удалось, запросив MySQL клиент. Я попытался установить этот, и это сработало. Затем я проследил свои шаги назад - установил mysql-community-server и затем mysql-server. Это работало без ошибок.
sudo apt install -f mysql-client=5.7.30-1ubuntu18.04
sudo apt install -f mysql-community-server=5.7.30-1ubuntu18.04
sudo apt install -f mysql-server=5.7.30-1ubuntu18.04
Я использовал следующее для защиты установки MySQL sudo mysql_secure_installation
Запретить обновление до MySQL 8 - благодаря NSwanson7 в этой публикации
sudo nano /etc/apt/preferences.d/mysql
Добавьте следующее содержимое в созданный выше файл.
Package: mysql-server
Pin: version 5.7.30-1ubuntu18.04
Pin-Priority: 1001
Package: mysql-client
Pin: version 5.7.30-1ubuntu18.04
Pin-Priority: 1001
Package: mysql-community-server
Pin: version 5.7.30-1ubuntu18.04
Pin-Priority: 1001
Package: mysql-community-client
Pin: version 5.7.30-1ubuntu18.04
Pin-Priority: 1001
Package: mysql-apt-config
Pin: version 0.8.10-1
Pin-Priority: 1001
Надеюсь, это поможет!
Я последовал этому ответу, и он работает.
Сначала я удалил mysql с моего компьютера , удалил Mysql
Затем в загрузил раздел , я выбрал
И, как правило, следую ошибкам.
Я также устанавливаю
sudo apt-get install libaio1
, где говорится, что это нужно.
ОБНОВЛЕНИЕ 31/05/2020 Я думаю, что порядок:
sudo dpkg -i mysql-common_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i libmysqlclient-dev_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i libmysqld-dev_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-community-source_5.7.30-1ubuntu18.04_amd64.deb
sudo apt-get install libaio1
sudo apt install libmecab2
sudo dpkg -i mysql-community-client_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-client_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-community-server_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-server_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-community-test_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-testsuite_5.7.30-1ubuntu18.04_amd64.deb
sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
Я использую следующий файл для предотвращения обновления:
sudo nano /etc/apt/preferences.d/mysql
Package: libmysqlclient-dev
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: libmysqlclient20
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: libmysqld-dev
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: mysql-server
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: mysql-client
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: mysql-community-server
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: mysql-community-client
Pin: version 5.7.30-0ubuntu0.18.04.1
Pin-Priority: 1001
Package: mysql-apt-config
Pin: version 0.8.10-1
Pin-Priority: 1001
В Ubuntu 16.04 и других более новых версиях Linux концепция уровня запуска была изменена с помощью системных целей.
Чтобы изменить уровень выполнения на 3, используйте следующую команду:
sudo systemctl set-default runlevel3.target
Для проверки текущей цели используйте следующую команду:
systemctl get-default
Для получения дополнительной информации вы можете посетить справочные страницы systemd.
man systemd
----- ----121--------865096---- Классическое обновление до 20,04 LTS с 18,04 LTS будет доступно в июле.
Однако, согласно , эта страница можно обновить до 20.04 с помощью
sudo apt update
sudo do-release-upgrade -d
. Хотя вы укажете аргумент -d (разработка), он будет обновлен до стабильной версии 20.04. Это просто потому, что классический способ обновления будет ждать версию 20.04.1 в июле (потому что версия LTS предназначена для людей, которые хотят действительно стабильную систему). как @tsotzolas сказал использовать это, чтобы очистить установку v 8.0 Как мне удалить MySQL?
Но это очистит ваших пользователей, пароли ... так что! во-первых, если вы сделали обновление.
Затем следуйте этим шагам https://marabesi.com/mysql/2019/12/23/mysql-5.7-on-ubuntu-19.html
Это работало для меня в Kubuntu 19.10 и 20.04
Это сработало для меня:
wget https://repo.mysql.com//mysql-apt-config_0.8.12-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
sudo apt update
sudo apt install mysql-client=5.7.30-1ubuntu18.04
sudo apt install mysql-community-server=5.7.30-1ubuntu18.04
sudo apt install mysql-server=5.7.30-1ubuntu18.04