Another approach might be to create a temp table, copy "old" records to the temp table, backup the temp table data to a file, then restore the temp table data to the archive database. After each step succeeds, you could delete the data from the "source".
In any event, after the records are removed from the parent table, be sure to vacuum/analyze the parent table.
"Lisa, in this house, we obey the laws of thermodynamics!" - Homer Simpson
"I have my standards. They may be low, but I have them!" - Bette Middler
"It's a book about a Spanish guy named Manual. You should read it." - Dilbert