Is it normal to use 100% of the disk for an ~9Gb database and to run for over 2 hours? (the database is not really growing anymore).
Нет, я не думаю, что все же, я бы хотел, чтобы вы сравнили его с ручной (и не транснациональной) версией VACUUM:
echo ".dump" | sqlite3 old_db.db3 | sqlite3 new_db.db3; rm old_db.db3; mv new_db.db3 old_db.db3;
как это работаетпо сравнению с правильным ВАКУУМОМ?еще 2 часа на 100% процессоре?если это работает значительно лучше, я думаю, что это ошибка производительности VACUUM sqlite3 где-то ..
Есть ли способ, которым я могу VACUUM;база данных, не убивая мой диск в процессе?(возможно, VACUUM с низким приоритетом или что-то в этом роде?)
да ... но это будет еще медленнее, очевидно, это должно работать и работать с очень низким приоритетом io и очень низким процессоромприоритет:
echo "VACUUM;" | ionice -c 3 nice -n 19 sqlite3 db.db3