I use a method where you select 1.000 => 10.000 first, after it i delete every single one, you can delete more of same time, but what i want is not to block eny thing inside your database.
i try to remove logs from our database, we got like 450 milions ( 240gb ) of data, if i just use
DELETE * FROM table WHERE date > toDate the database block.
so i resoved it create a script there select a amount of rows out and delete every single one, we use InnoDB and its take a long time, right now we can remove 1milion a /day becures we get perfomes issues.
hope you can use this method to remove all your rows you do not need enymore.
remeber if you run a script to do this, remeber to start the loop agin when its hit your row count, to get the next rows out and starting to delete it.