Я пытаюсь установить mysqldump на виртуальную машину Ubuntu, размещенную в Azure.
В процессе сборки я пытаюсь выполнить следующую команду:
sudo apt-get update
sudo apt-get install -y --no-install-recommends mysql-client-8.0
Это приводит к следующей ошибке:
Unable to locate package mysql-client-8.0
Когда я смотрю на пакет на packages.ubuntu.com, он указан в Ubuntu Focal 20.04LTS ( https://packages.ubuntu.com/focal/ mysql-client-8.0 )
Если я изменю команду установки на:
sudo apt-get update
sudo apt-get install -y --no-install-recommends mysql-client
Установлен mysql-client-5.7, который не работает должным образом. Привязана ли версия mysql-client для соответствующей базы данных к серверу Ubuntu? Должен ли клиент 5.7 правильно работать с MySQL 8.0?
Забудьте о пакетах MySql, используйте пакеты MariaDb:
sudo apt-get install -y mariadb-client
Чтобы получить клиентские инструменты 8.0 ( или сервер) вам необходимо установить официальный репозиторий MySQL для apt. Я рекомендую следовать этому подробному руководству.
TLDR;
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.16-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.16-1_all.deb
sudo apt-get update
sudo apt-get install mysql-client
mysqldump --version
(должна быть версия 8.xx)