Ad Widget
Collapse
Update Zabbix 1.8.10 to 2.0.0. Долгий апргрейд базы.
Collapse
X
-
Привет!
Запускаете не первый раз? Это он ругается на невозможность создания форейн ключей, про причине того что они скорее всего уже есть с предыдущих запусков.
У меня было такое - срубился скрипт на полпути, пришлось остальное вручную по частям обновлять. Сейчас жду окончания запроса:
Этот запрос и следующий за ним очень неоптимальные и потому тормознутые. Я уже часов 6 жду когда он закончится, успокаивает то что это только один раз...Code:INSERT INTO tmp_events_eventid (eventid,prev_value) ( SELECT e1.eventid,(SELECT e2.value FROM events e2 WHERE e2.source=e1.source AND e2.object=e1.object AND e2.objectid=e1.objectid AND (e2.clock<e1.clock OR (e2.clock=e1.clock AND e2.eventid<e1.eventid)) AND e2.value<2 -- TRIGGER_VALUE_UNKNOWN ORDER BY e2.source DESC, e2.object DESC, e2.objectid DESC, e2.clock DESC, e2.eventid DESC, e2.value DESC LIMIT 1) AS prev_value FROM events e1 WHERE e1.source=0 -- EVENT_SOURCE_TRIGGERS AND e1.object=0 -- EVENT_OBJECT_TRIGGER AND e1.value=0 -- TRIGGER_VALUE_FALSE (OK) HAVING prev_value IS NULL OR prev_value = 1 -- (NULL) or TRIGGER_VALUE_TRUE (PROBLEM) );
См. значение "Rows_examined":
Code:+------+--------+------------------+--------+---------+-------+--------------+------------------------------------------------------------------------------------------------------+-----------+---------------+-----------+ | Id | User | Host | db | Command | Time | State | Info | Rows_sent | Rows_examined | Rows_read | +------+--------+------------------+--------+---------+-------+--------------+------------------------------------------------------------------------------------------------------+-----------+---------------+-----------+ | 1138 | zabbix | 10.1.2.166:55217 | zabbix | Query | 25197 | Sending data | INSERT INTO tmp_events_eventid (eventid,prev_value) | 0 | 38261355601 | 83925 |
Comment
-
Тоже встрал апдейт базы на
А временой таблицы уже давно нетCode:*************************** 20. row *************************** Id: 8969246 User: root Host: localhost db: zabbix2 Command: Query Time: 69452 State: Sending data Info: INSERT INTO tmp_events_eventid (eventid,prev_value) ( SELECT e1.eventid,(SELECT e2.value FROM events e2 WHERE e2.source=e1.source AND e2.object=e1.object AND e2.objectid=e1.objectid AND (e2.clock<e1.clock OR (e2.clock=e1.clock AND e2.eventid<e1.eventid)) AND e2.value<2 ORDER BY e2.source DESC, e2.object DESC, e2.objectid DESC, e2.clock DESC, e2.eventid DESC, e2.value DESC LIMIT 1) AS prev_value FROM events e1 WHERE e1.source=0 AND e1.object=0 AND e1.value=0 HAVING prev_value IS NULL OR prev_value = 1 )
Шел 20 час апдейта базыCode:mysql> SHOW FULL TABLES LIKE '%tmp%'; Empty set (0.00 sec)
Last edited by sersad; 29-05-2012, 07:48.Comment
-
Изменил слегка патч
Вроде пошел процессCode:CREATE TABLE tmp_events_eventid (eventid bigint unsigned PRIMARY KEY,prev_value integer); CREATE INDEX tmp_events_index on events (source, object, objectid, clock, eventid, value); -- Which OK events should have value_changed flag set? -- Those that have a PROBLEM event (or no event) before them. INSERT INTO tmp_events_eventid (eventid,prev_value) ( SELECT e1.eventid,(SELECT e2.value FROM events e2 WHERE e2.source=e1.source AND e2.object=e1.object AND e2.objectid=e1.objectid AND (e2.clock<e1.clock OR (e2.clock=e1.clock AND e2.eventid<e1.eventid)) AND e2.value<2 -- TRIGGER_VALUE_UNKNOWN ORDER BY e2.source DESC, e2.object DESC, e2.objectid DESC, e2.clock DESC, e2.eventid DESC, e2.value DESC LIMIT 1) AS prev_value FROM events e1 WHERE e1.source=0 -- EVENT_SOURCE_TRIGGERS AND e1.object=0 -- EVENT_OBJECT_TRIGGER AND e1.value=0 -- TRIGGER_VALUE_FALSE (OK) HAVING prev_value IS NULL OR prev_value = 1 -- (NULL) or TRIGGER_VALUE_TRUE (PROBLEM) );
Code:mysql> select count(*) from tmp_events_eventid; +----------+ | count(*) | +----------+ | 136630 | +----------+ 1 row in set (0.16 sec) mysql> select count(*) from tmp_events_eventid; +----------+ | count(*) | +----------+ | 253817 | +----------+ 1 row in set (0.07 sec) mysql>
Comment
-
Все апдейт прошел, и пратишины остались там где надо.
Ушла русская локаль (
Сделал локаль тер она завязана на системной локали и модуле php-gettextCode:You are not able to choose some of the languages, because locales for them are not installed on the web server.
Last edited by sersad; 29-05-2012, 13:42.Comment
-
Comment
-
Привет!
При обновлении БД действительно помогает увеличение кэшей MySQL. У нас база ~45Гб (>500млн. записей), сервер поднят на инстансе m1.large AWS EC2 (2 cores, 7.5Гб RAM). На время апгрейда поменял тип инстанса на m2.4xlarge (8 cores, 68.4 GB RAM) и почти всё отдал MySQL. В результате база конвертнулась примерно за 4 часа (перед этим, правда, я очистил таблицы alerts и events).Comment
-
у меня таже проблема. висит на
| 124301 | root | localhost | zabbix | Query | 321890 | Sending data | INSERT INTO tmp_events_eventid (eventid,prev_value)
надеялся, что за выходные выполнится, но пошли уже четвертые сутки.
в топе висит mysqld уже 90 часов и отжирает 100% CPU.
патч запускаю уже 2й раз, и ситуация аналогичная. 1й раз всё прервал на 3й день, восстановил базу из бекапа и поставил патчится.
думаю, что если запущу 3й раз, ситация повторится
( что делать??
Comment
-
Comment
Comment