можешь попробовать добавить столбец (как флаг осуществленного переноса).
1. сначала ставишь флаг в нуль
2. начинаешь перенос (можно переносить например 1000 записей в минуту или 500 - это сам выберешь) - т.е. кроном запускаешь скрипт каждую минуту.
Так сервак не будет сильно нагружаться. Это будет немного медленнее, зато он сервак будет жив и к нему еще кто-то сможет из вне достучаться.
3. в это время могут добавляться записи - это плюс
4. вставляешь проверку, например если осталось меньше 10 перенесенных записей, то тогда уже блокируешь таблицу, переносишь оставшиеся записи, разблокируешь
Добавлено через 4 минуты
А вообще: пока еще ничего не сделано, надо перелопатить тебе базу данных.
для начала тебе надо знать основы основ. и хотя бы какие виды нормализаций бывают.
а потом берешь какой-нить пакет визуального моделирования например Erwin.
А уже только потом принимаешься за работу.
Почитай Дейта - все вопросы сразу отпадут