Как сделать ротационный лог средствами MySQL?
Если вы хотите использовать только БД, то можно сделать тригер.
Будет удалять все записи из таблицы старше 2х месяцев.

delimiter //
CREATE TRIGGER ins_logtable AFTER INSERT ON logtable
FOR EACH ROW
BEGIN
    SELECT NOW() - interval 2 month INTO @rotate_date;
    DELETE FROM logtable WHERE added_date < @rotate_date;
END;//
delimiter ;


Этот тригер будет выполнятся при каждом INSERT в таблицу и удалять все из таблицы старше 2-х месяцев. 
Хотя я бы сделал все же скрипт запускаемый по крону, т.к. чистка через тригер может повлиять на производительность. :(
Вопрос, конечно, интересный, но почему не обойтись классическим logrotate?