I have 2 tables, Table-A and Table-A-History.
Table-A
Table-A-History
Option 1 is OK. But you have method 4 too :)
Insert new record to your table,
Move old record to archive table on regular base using mysql scheduler. You can schedule data archivation at the time of minimal load, for example at night hours.