У меня Percona DB 5.6 на нескольких серверах Ubuntu 12.04. На некоторых из них мне удалось успешно обновить до последней версии (5.6.17), используя
apt-get update
apt-get upgrade
В некоторых других случаях команда apt-get update + upgrade сообщает мне, что делать нечего, хотя установленная версия - только 5.6.15. Почему он не находит самую последнюю версию?
Актуальная версия с серверов, на которых производилось обновление: «Версия сервера: 5.6.17-65.0-587.precise-log (Ubuntu)»
Версия с серверов, которые не обновляются: "Версия сервера: 5.6.15-63.0-log Percona Server (GPL), выпуск 63.0"
Я подтвердил, что следующие строки находятся в /etc/apt/sources.list на всех серверах:
deb http://repo.percona.com/apt precise main
deb-src http://repo.percona.com/apt precise main
(и в какой-то момент это должно было работать, потому что все они были изначально установлены с помощью apt-get)
РЕДАКТИРОВАТЬ: из предложения эстибордо я добавляю вывод
apt-cache policy percona-server-server-5.6
(percona-server-common-5.6 и percona-server-client-5.6 тоже идентичны этому)
С серверов, которые не обновляются:
percona-server-server-5.6: Installed: 1:5.6.15-rel63.0-519.precise Candidate: 1:5.6.15-rel63.0-519.precise Version table: *** 1:5.6.15-rel63.0-519.precise 0 100 /var/lib/dpkg/status 5.6.17-65.0-587.precise 0 500 http://repo.percona.com/apt/ precise/main amd64 Packages
На моих серверах, которые обновились, это результат:
percona-server-server-5.6: Installed: 5.6.17-65.0-587.precise Candidate: 5.6.17-65.0-587.precise Version table: *** 5.6.17-65.0-587.precise 0 500 http://repo.percona.com/apt/ precise/main amd64 Packages 100 /var/lib/dpkg/status
В чем разница, или что еще важнее, как исправить те, которые застряли на 5.6.15? Спасибо.
я так думаю
apt-cache policy percona-server-server
это то, что вам нужно. Он предоставит информацию об установленной версии и о наличии других кандидатов для установки. Он также сообщит вам, из каких репозиториев были получены пакеты.
Вы можете использовать ту же команду с подстановочным знаком, например:
apt-cache policy percona*
Возникла та же проблема с некоторыми PPA Ubuntu: внимательно посмотрите на номер версии установленного пакета. В нем ведущая 1: в начале («эпоха» - см. https://askubuntu.com/questions/441879/why-do-some-packages-have-extra-numbers-on-the-front-of-their-version-string), что заставляет Apt думать, что это более высокая версия, чем фактическая более высокая версия из репо. Была ли старая установка из PPA, или они случайно изменили номера версий?
В любом случае, поскольку в выходных данных не указано, откуда берется установленный в данный момент пакет, репозиторий тем временем мог быть удален из вашей конфигурации.
Я думаю, было бы лучше удалить (не очищать; удаление должно оставить всю вашу конфигурацию нетронутой; тем не менее, обязательно сделайте резервную копию соответствующей папки в / etc) текущий пакет, затем (на всякий случай) выполните apt-get update && apt-get clean
снова, затем снова установите пакет с помощью apt-get install
. Тогда ему следовало забыть о версии с префиксом 1: и установить самую последнюю из репозитория.