eddy_em: (Default)
eddy_em ([personal profile] eddy_em) wrote2020-07-21 06:12 pm

Век живи — век учись!

Сижу, экспериментирую с базой данных SQLite3 (БД с данными для аутентификации и авторизации). Смотрю — после добавления сотни-другой условных пользователей и последующего их удаления размер БД не уменьшается.
Консольный sqlite-клиент ничего лишнего не показывает, однако, по F3 в mc я вижу все старые данные.
Оказывается, sqlite не переформатирует базы данных при удалении, чтобы не замедлять процессы обращения к БД и не привести к фрагментации.
Чтобы "подчистить" базу данных от мусора есть команда vacuum, которую просто можно запустить из консольного клиента после подключения к БД.
Можно это сделать и прямо из баша: sqlite3 users.db "vacuum;" .

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org