Ad Widget

Collapse

Перенос базы с 2.4 на 3.0

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • NorD
    Junior Member
    • Feb 2015
    • 23

    #1

    Перенос базы с 2.4 на 3.0

    Привет. Столкнулся с такой проблемой:

    Поднимаю новый zabbix сервер, режил ознакомиться с Zabbix 3.0
    1. Из репозиториев поставил сервер:

    # zabbix_server --version
    zabbix_server (Zabbix) 3.0.0
    Revision 58460 15 February 2016, compilation time: Feb 15 2016 14:34:08

    2. На старом сервере сделал mysqldump zabbix > blabla.dump
    3. Разворачиваю БД на новом сервере
    4. Беру со старого сервера /usr/share/zabbix/conf/zabbix.conf.php (настройки подключения к БД)
    5. ОШИБКА

    Database error
    The frontend does not match Zabbix database. Current database version (mandatory/optional): 2040000/2040000. Required mandatory version: 3000000. Contact your system administrator.


    Что делать ?
  • Colobock
    Member
    • Nov 2014
    • 33

    #2
    Запустить zabbix-server, он сам обновит базу до нужной версии.

    Comment

    • NorD
      Junior Member
      • Feb 2015
      • 23

      #3
      Originally posted by Colobock
      Запустить zabbix-server, он сам обновит базу до нужной версии.
      Не помогло, в логах:

      Code:
      root@web:~# cat /var/log/zabbix/zabbix_server.log
      
       67329:20160301:100347.801 Starting Zabbix Server. Zabbix 3.0.0 (revision 58460).
       67329:20160301:100347.801 ****** Enabled features ******
       67329:20160301:100347.801 SNMP monitoring:           YES
       67329:20160301:100347.801 IPMI monitoring:           YES
       67329:20160301:100347.801 Web monitoring:            YES
       67329:20160301:100347.802 VMware monitoring:         YES
       67329:20160301:100347.802 SMTP authentication:       YES
       67329:20160301:100347.802 Jabber notifications:      YES
       67329:20160301:100347.802 Ez Texting notifications:  YES
       67329:20160301:100347.802 ODBC:                      YES
       67329:20160301:100347.802 SSH2 support:              YES
       67329:20160301:100347.802 IPv6 support:              YES
       67329:20160301:100347.802 TLS support:               YES
       67329:20160301:100347.802 ******************************
       67329:20160301:100347.802 using configuration file: /etc/zabbix/zabbix_server.conf
       67329:20160301:100347.805 current database version (mandatory/optional): 02050029/02050029
       67329:20160301:100347.805 required mandatory version: 03000000
       67329:20160301:100347.805 starting automatic database upgrade
       67329:20160301:100347.805 [Z3005] query failed: [1050] Table 'application_prototype' already exists [create table application_prototype (
      application_prototypeid bigint unsigned not null,
      itemid bigint unsigned not null,
      templateid bigint unsigned,
      name varchar(255) default '' not null,
      primary key (application_prototypeid)
      ) engine=innodb]
       67329:20160301:100347.805 database upgrade failed

      Comment

      • Firm
        Senior Member
        • Dec 2009
        • 342

        #4
        Видимо, уже была неудачная попытка обновить схему. Удалите таблицу application_prototype.

        Comment

        • NorD
          Junior Member
          • Feb 2015
          • 23

          #5
          Спасибо. Помогло!

          Comment

          • AnDrEyKa
            Junior Member
            • Aug 2015
            • 13

            #6
            Originally posted by NorD
            Спасибо. Помогло!
            Я тоже пытаюсь перенести базу с 2.4.7 appliance на 3.0.1 appliance и столкнулся с такой же ошибкой. Я честно говоря не шарю, пытался удалить эту таблицу как советовали выше таким вот образом:
            Code:
            mysql zabbix -e "DROP TABLE application_prototype;"
            На что мне пишет ошибку:
            Code:
            ERROR 1217 (23000) at line 1: Cannot delete or update a parent row: a foreign key constraint fails
            Пытался гуглить - как я понял, существуют какие-то мешающие зависимости. Что делать? Старый appliance пока конечно может продолжать работать, но хочется всё-таки переехать на новый...

            Comment

            • AnDrEyKa
              Junior Member
              • Aug 2015
              • 13

              #7
              И вообще конечно очень многим упростила бы жизнь рабочая инструкция по переезду с одного "готового решения" на другое обновлённое. Та что есть (https://www.zabbix.com/documentation...nual/appliance) прямо скажем не сильно в этом деле помогает. Например, расширить винт по этой инструкции тоже не получается - этот текст видать скопипастили откуда-то, не адаптируя к реалиям данной конкретной виртуалки.

              Comment

              • roman1910
                Junior Member
                • Apr 2016
                • 2

                #8
                Кому то удалось удалить таблицу?

                Comment

                • AnDrEyKa
                  Junior Member
                  • Aug 2015
                  • 13

                  #9
                  Originally posted by roman1910
                  Кому то удалось удалить таблицу?
                  NorD смог, судя по всему. Но как именно - не написал...

                  Comment

                  • roman1910
                    Junior Member
                    • Apr 2016
                    • 2

                    #10
                    Originally posted by andreyka
                    nord смог, судя по всему. Но как именно - не написал...
                    Мне тоже удалось удалить таблицу, отключив проверку set foreign_key_check=0;
                    Но при обновлении схемы сервер пытается создать эту таблицу , но не может, т.к. ограничения для таблицы уже есть и внешние ключи еще где то хранятся(

                    Comment

                    • vall59
                      Junior Member
                      • May 2016
                      • 2

                      #11
                      Всем доброго дня.
                      Обновлял по инструкции. Получил следующее...

                      Вэб интерфейс запускает процесс инсталляции 3.0 и выдает
                      Code:
                      The frontend does not match Zabbix database. Current database version (mandatory/optional): 2040000/2040000. Required mandatory version: 3000000. Contact your system administrator.
                      Синаптик говорит
                      Code:
                      Пакет: zabbix-release
                      Новый: да
                      Состояние: установлен
                      Автоматически установлен: нет
                      Версия: 3.0-1+jessie
                      а теперь смотрим в логи и офигеваем
                      Code:
                      1318:20160518:104956.272 Starting Zabbix Server. Zabbix 2.4.7 (revision 56694)                                 .
                        1318:20160518:104956.276 ****** Enabled features ******
                        1318:20160518:104956.276 SNMP monitoring:           YES
                        1318:20160518:104956.276 IPMI monitoring:           YES
                        1318:20160518:104956.276 WEB monitoring:            YES
                        1318:20160518:104956.276 VMware monitoring:         YES
                        1318:20160518:104956.276 Jabber notifications:      YES
                        1318:20160518:104956.276 Ez Texting notifications:  YES
                        1318:20160518:104956.276 ODBC:                      YES
                        1318:20160518:104956.277 SSH2 support:              YES
                        1318:20160518:104956.277 IPv6 support:              YES
                        1318:20160518:104956.277 ******************************
                        1318:20160518:104956.277 using configuration file: /etc/zabbix/zabbix_server.c                                 onf
                        1318:20160518:104957.602 current database version (mandatory/optional): 020400                                 00/02040000
                        1318:20160518:104957.602 required mandatory version: 02040000
                        1318:20160518:104958.581 server #0 started [main process]
                        1328:20160518:104958.581 server #1 started [configuration syncer #1]
                        1329:20160518:104958.581 server #2 started [db watchdog #1]
                      Оно считает себя 2.4.7 и даже не пытается обновить базу....


                      откуда это может идти? можно как-то вручную запустить обновление базы?

                      Comment

                      • tjma
                        Junior Member
                        • Apr 2016
                        • 9

                        #12
                        vall59
                        обновление базы запускается с запуском zabbix-server. автоматически и в вебе ничего не покажет, кроме ошибки, до тех пока базу не обновит заббикс.

                        судя по логам, у вас заббик работает 2.4.7, видимо, это ваша предыдущая версия. раз вы уже установили заббикс 3.0 вам надо перезапустить заббикс-сервер и смотреть логи, он будет обновлять базу.
                        может быть это будет быстро и без ошибок. Ждите пока заббикс закончит обновление. в веб морде ничего трогать не надо. (вообще по факту, сначала надо обновить заббикс-серве, запустить его, дождаться окончания обновления базы и только после этого ставить фронтенд к нему)
                        возможны ошибки, как в начале темы:
                        Code:
                        67329:20160301:100347.805 [Z3005] query failed: [1050] Table 'application_prototype' already exists [create table application_prototype (
                        application_prototypeid bigint unsigned not null,
                        itemid bigint unsigned not null,
                        templateid bigint unsigned,
                        name varchar(255) default '' not null,
                        primary key (application_prototypeid)
                        ) engine=innodb]
                        это будет значит что вы уже пытались обновить базу и результат отрицательный, тут поможет совет roman1910 - открыть mysql в консоли и указать set foreign_key_check=0; после чего смотреть в логи заббикса, на какую таблицу он ругается и удалять эту таблицу руками в mysql и снова перезапускать заббикс-сервер и т.д. конечным итого должно быть успешное обновление бд, после чего можно зайти на вебморду.

                        Comment

                        • vall59
                          Junior Member
                          • May 2016
                          • 2

                          #13
                          Originally posted by tjma
                          vall59
                          обновление базы запускается с запуском zabbix-server. автоматически и в вебе ничего не покажет, кроме ошибки, до тех пока базу не обновит заббикс.

                          судя по логам, у вас заббик работает 2.4.7, видимо, это ваша предыдущая версия.....
                          Спасибо за быстрый отклик!

                          Пока я ждал модерацию тоже не сидел сложа руки))) и удалось сделать следующее
                          zabbix-server --version выдало что у меня все-таки 2.4.7

                          Решил переустановить пакеты через aptitude и тут началось интересное. система ругнулась при переустановке, что не может что-то докачать для пакета zabbix-server-mysql. Удалил пакет ручками. При установке выдало на неудовлетворенные зависимости ...

                          Почему при apt-get upgrade не выдавало никаких ошибок, фиг его знает. Но по факту после нормальной установки через aptitude все запустилось.

                          Comment

                          • $1n61N_$1nK1N
                            Junior Member
                            • Dec 2015
                            • 2

                            #14
                            У меня после обновления Zabbix вообще не запускался (при этом ни сообщения об ошибке, ни записи в логах). Только попробовав запустить Zabbix вручную c заданным config файлом (zabbix_server -с /etc/zabbix/zabbix_server.conf) на экране появилась ошибка о том, что в конф файле содержится некорректный параметр (у меня был HistoryTextCacheSize). После комментирования данной строки в конфиге, zabbix заработал и поехал обновлять базу.

                            Comment

                            Working...