powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Могу ли я как-то отслеживать update/insert?
10 сообщений из 10, страница 1 из 1
Могу ли я как-то отслеживать update/insert?
    #39675216
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Могу ли я как-то уследит в некоторых заданных таблицах что за день изменилось? Интересует как минимум insert/update при этом не прибегая к триггерам?
Если есть какие-то идеи, посоветуйте, пожалуйста, хотя бы идею.
Заранее спасибо.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675227
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно включить логгирование запросов (на сервере или, лучше, только нужных запросов в приложении) + сочинить какую-то обработку.
В крайнем случае, ежедневный дамп таблицы + какой-то diff.
ИМХО и то и другое на порядок сложнее триггера.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675262
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

спасибо vkle, проблема в том что нужно отслеживать 30 таблиц, а значит нужно два триггера как минимум на insert и на update. Всего 60 триггеров. Не нравится мне такая идея. Попытаюсь убедить народ поменять таблицы добавив поля inserted_at TIMESTAMP и updated_at on UPDATE TIMESTAMP.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675380
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexnewsПопытаюсь убедить народ поменять таблицы добавив поля inserted_at TIMESTAMP и updated_at on UPDATE TIMESTAMP.Плохое решение с учётом исходной задачи. При UPDATE будет теряться информация о предыдущих INSERT и UPDATE.

alexnewsнужно отслеживать 30 таблиц, а значит нужно два триггера как минимум на insert и на update. Всего 60 триггеров. Не нравится мне такая идея.Нормальная идея. нет в ней ничего дурного. А генерацию триггеров можно и запрограммировать - одна ХП-шка, и всё...
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675388
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Недавно что-то подобное обсуждали.
Идея:
Ночью делаешь резервную копию, разворачиваешь её в другую базу и сравниваешь текущую базу со вчерашней.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675689
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaalexnewsПопытаюсь убедить народ поменять таблицы добавив поля inserted_at TIMESTAMP и updated_at on UPDATE TIMESTAMP.Плохое решение с учётом исходной задачи. При UPDATE будет теряться информация о предыдущих INSERT и UPDATE.Вроде, в исходной задаче не было про полную историю изменений, только "что за день изменилось". Если в итоге требуется только выборка новых/изменившихся записей за последние сколько-то часов, тогда это решение кажется вполне приемлемым.

Однако, вижу минус в том, что все существующие запросы в клиентском приложении придется поправить. Используя же триггер, можно реализовать правку на уровне таблиц, не трогая запросы в приложении.

И ещё один минус. Гипотетически, запись может быть и удалена, а это тоже ж своего рода изменение. Дополнительные поля тут не помогут.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39675723
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleтолько "что за день изменилось"Если за день было несколько изменений, увидим только последнее.Я лично это воспринимаю как всю историю изменения. Если автора устроит только список изменённых объектов - ну тады да.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39677145
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
982183,

проблема в том что таблицы уже по 15-35 млн записей, такое просто не реально сделать.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39677147
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

похоже все устраивает. Я сделал триггеры на основные таблицы, триггеры собирают инфу по любому только id и что произошло (insert/update) так как уникальный ключ стоит на id. Пока всех устроило. Если нужно будет уберу уникальность. А маленькие таблички я просто буду копировать полностью там по 500-30000 записей.

Спасибо всем за подсказки.
...
Рейтинг: 0 / 0
Могу ли я как-то отслеживать update/insert?
    #39677188
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexnewsпроблема в том что таблицы уже по 15-35 млн записей, такое просто не реально сделать.
Если есть ключевое поле, то вполне реально.
10-15 нимут на таблицу.

TIMESTAMP и UPDATE TIMESTAMP конечно выход более эффективный.
Но без ключевого поля и эта сxема будет работать кастрировано.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Могу ли я как-то отслеживать update/insert?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]