Я обновляю установку Debian, в которой запущен пакет dotdeb для MySQL 5.6. Поскольку dotdeb больше не поддерживает MySQL, я хотел бы перейти на репозиторий, размещенный непосредственно в Oracle.
Удалить dotdeb легко: просто удалите репо из /etc/apt/sources.list
. Точно так же легко добавить репозиторий Oracle: отредактируйте тот же файл, чтобы добавить его.
Но я хочу убедиться, что я:
apt
идти впередЯ подозреваю, что просто хочу это сделать:
apt-get remove mysql-server
(и любые связанные пакеты)/etc/apt/sources.list
, добавить репо Oracleapt-get install mysql-server
(и любые связанные с этим предварительные условия)Я обязательно сделаю резервную копию всего, но я бы предпочел сделать это правильно с первого раза и не требовать восстановления, если это возможно.
Кажется излишне опасным пытаться сделать это на существующей машине.
Постройте новый сервер.
Настройте его как хотите.
Выгрузите и загрузите данные, настроив новую систему как живую реплику MySQL существующей системы.
Убедитесь, что он активен и воспроизводится, и что все ваши данные не повреждены.
Выключите исходный сервер, отключите репликацию, чтобы преобразовать новую машину в первичную, и переключите приложение на использование нового сервера.
Как давний администратор баз данных MySQL, я никогда, никогда не позволяю менеджерам пакетов касаться моих установок базы данных. Это, по общему признанию, вопрос мнения, но как администратор баз данных я в конечном итоге отвечаю не за серверы, а за информацию, которую они хранят ... фактическая база данных. Целостность этих данных гораздо важнее любых предполагаемых преимуществ или удобства управления пакетами. Я решаю, когда происходят обновления и обновления, и я полностью контролирую процесс, вне зависимости от предположений, которые делают разработчики управления пакетами, некоторые из которых могут быть довольно нелепыми. Oracle также предоставляет бинарные архивы, которые гораздо более просты и не подвержены неожиданностям при управлении пакетами.
В конечном итоге я решил просто удалить пакет dotdeb (при этом файлы конфигурации остаются на месте) и установить MariaDB из диспетчера пакетов Debian.
У меня это сработало без каких-либо проблем.
Пакет MariaDB настроен на чтение всех старых файлов конфигурации из /etc/mysql/
и /etc/mysql/conf.d/
так что он вернулся без каких-либо проблем. Конечно, мы пробовали это на двух других системах перед обновлением в производстве, и все прошло хорошо.
Хотя настройка полностью нового сервера в качестве подчиненного устройства репликации была бы на 100% надежным решением, в моем случае в этом не было необходимости.