Дополнение. Чтоб после перезапуска MySQL не вставлять все хосты обратно во временную таблицу делаем так: INSERT INTO `xfer_buffer` (`host`,`xfer`) VALUES (LOWER('%h'),'%r'+'%s') ON DUPLICATE KEY UPDATE `xfer`=`xfer`+'%r'+'%s' -- Структурра временной таблицы: CREATE TABLE `xfer_buffer` ( `host` varchar(255) NOT NULL, `xfer` bigint(20) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`host`) ) ENGINE=MEMORY DEFAULT CHARSET=utf8 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC -- Структурра архивной таблицы: CREATE TABLE `xfer_archive` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `host` varchar(255) DEFAULT NULL, `xfer` bigint(20) unsigned NOT NULL DEFAULT '0', `tstamp` timestamp NULL DEFAULT NULL, PRIMARY KEY (`id`), KEY `host` (`host`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC -- У меня чуть упрощенный вариант, но смысл понятен я думаю.
|