PHP / MYSQL - Резервное копирование данных MySQL, которые изменяются с точностью до секунды - PullRequest
1 голос
/ 23 декабря 2009

У меня есть таблица mysql (A), которая принимает от сотен до тысяч вставок в секунду. Каждые 15 минут я хотел бы переместить все эти данные в таблицу (B) и удалить все данные из (A), не прерывая / не пропуская новые поступающие строки.

Предложения? Советы?

1 Ответ

3 голосов
/ 23 декабря 2009

Вы можете скопировать строки, а затем удалить только те строки, которые были скопированы:

insert into B (keycol, col1, col2)
select keycol, col1, col2 from A

Затем удалите строки в A, которые уже находятся в B:

delete A
from A
inner join B on A.key = B.key

Альтернативный синтаксис:

delete from A
where exists (
    select * from B where A.key = B.key
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...