...
В этой статье будет описано, как обновить старые версии EMS и систему на которой работает сервер с Ubuntu 14.04 до более актуальной актуальных версии EMS 3.32 работающей на Ubuntu 16.04 и которая поддерживает типы оборудование LTP-8/16N и LTX-8/16.с конвертацией баз данных.
Первый шаг создание backup баз данных:
создайте директорию с любым именем, например:
Code Block |
---|
mkdir ~/ems-backup |
перейдите в неёДля создания backup баз данных перейдите в папку /var/ems-backup и выполните скрипт main-dump-rotate.sh:
Code Block |
---|
cd ~/var/ems-backup |
...
Code Block |
---|
mysqldump -uroot -proot Syslog > Syslog.sql
mysqldump -uroot -proot eltex_alert > eltex_alert.sql
mysqldump -uroot -proot eltex_ems > eltex_ems.sql
mysqldump -uroot -proot eltex_ont > eltex_ont.sql |
где -proot - root это пароль пользователя root в mysql.
Второй шаг подготовка к обновлению системы к обновлению:
Нужно обновить ядро, зависимости и другие системные пакеты до самой новой версии
Code Block |
---|
sudo apt-get dist-upgrade -q -y --force-yes |
...
при попытке обновить пакеты, может потребоваться обновление ключей верификации пакетов
Code Block |
---|
sudo apt-key update |
Удалим ненужные зависимости и очистим систему, чтобы освободить дисковое пространство:
Code Block |
---|
sudo apt-get autoremove
sudo apt-get clean |
Перед тем как обновлять систему, установим рекомендуемый менеджер обновлений:
Code Block |
---|
sudo apt-get install update-manager-core |
Шаг третий обновление системы:
Теперь выполняем обновление командой:
Code Block |
---|
sudo do-release-upgrade |
Note |
---|
Обновление может занять очень длительный промежуток времени (от 4 до 8 часов), с вопросами обновления конфигурации обновленных пакетов. |
В процессе обновления может потребоваться подтвердить установку новых пакетов
В конце система запросит подтверждение перезагрузки.
После обновления лучше обновить все обновленные пакеты
Code Block |
---|
sudo apt-get update
sudo apt-get upgrade -y |
...
bgColor | #fff |
---|
После обновления может возникнуть ошибка конфигурации mysql(встречается крайне редко):
Code Block |
---|
dpkg: ошибка при обработке пакета mysql-server (--configure):
проблемы зависимостей — оставляем не настроенным
Обрабатываются триггеры для systemd (229-4ubuntu4) …
Отчёты apport не записаны, так как сообщение об ошибке указывает на повторную ошибку от предыдущего отказа.
Обрабатываются триггеры для ureadahead (0.100.0-19) …
При обработке следующих пакетов произошли ошибки:
mysql-server-5.7
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1) |
Подобная ошибка исправляется полным удалением mysql и повторной инсталляцией:
Code Block |
---|
sudo apt-get purge mysql* -V
sudo rm -rv /var/lib/mysql
sudo rm -rv /var/log/mysql*
sudo rm -rv /etc/mysql*
sudo swapoff -a && sudo swapon -a
sudo apt-get install mysql-server |
Шаг четвертый обновление пакета EMS:
...
sudo ./main-dump-rotate.sh 127.0.0.1 3306 javauser javapassword 10 |
127.0.0.1 - ip адрес сервера где хранятся базы данных(по умолчанию 127.0.0.1)
3306 - порт взаимодействия с mysql
javauser/javapassword - login и пароль для доступа к mysql
10 - количество дней больше которых предыдущие файлы будут удалены
Note |
---|
файл будет создан в папке /var/ems-backup/main с именем: eltex-ems-backup.[дата и время создания].gz |
Шаг второй обновление пакета EMS:
обновляем производится при помощи скрипта:
eltex-ems-helper-mos_3latest.32.sh
Code Block |
---|
chmod 755 eltex-ems-helper-mos-3latest.32.sh sudo ./eltex-ems-helper-mos-3latest.32.sh |
Шаг пятый загрузка и конвертация баз данных:
Загрузка backup в базы mysql:
Code Block |
---|
cd ~/ems-backup
sudo mysql eltex_alert -uroot -proot < eltex_alert.sql
sudo mysql eltex_ems -uroot -proot < eltex_ems.sql
sudo mysql Syslog -uroot -proot < Syslog.sql
sudo mysql eltex_ont -uroot -proot < eltex_ont.sql |
...
Warning |
---|
до версии 3.33 в EMS использовались базы данных mysql, далее используется mariadb. Команды для этих баз данных идентичны, но есть проблемы при конвертации для определенных версий. |
Конвертация происходит путем загрузки backup в актуальную версию баз данных.
Делается это при помощи скрипта ems-restore.sh. в папке /var/ems-backup/main. Для начала, нужно переместить файл backup в папку со скриптом:
Code Block |
---|
mv [им backup] /var/ems-backup/main
cd /var/ems-backup/main
sudo ./ems-restore.sh [имя backup] |
После загрузки backup может возникнуть ошибка не совместимости баз данных. Эта ошибка исправляется повторным запуском скрипта с ключом, как в примере:
Code Block |
---|
sudo ./eltex-ems-helper-mos-3latest.32.sh --update-eltex-packages |
...