powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Вытираю строки, база не уменьшается
11 сообщений из 11, страница 1 из 1
Вытираю строки, база не уменьшается
    #39358523
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.

запускаю на базе вот такой код

PRAGMA foreign_keys = ON;
delete from `Visit` where date < (11644041600 - 3600 * 24 * 300 + strftime('%s','now')) * 10000000;
PRAGMA temp_store = 1;
vacuum;

послеотработки огромное количество данных отрезается, но размер базы не уменьшается.
Что не так делаю ?

Спасибо
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358536
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итак проблема в том что не отрабатывает Vacuum
У меня база 100 гиг. На винте места еще 200 гиг.
После запуска vaciuum процесс sqlite начинает жрать память, и при достижении 2 гигабайт, процесс вылетает.

Попробовал перед vacuum поставить

PRAGMA temp_store = 1;

теоретически тогда будет не в памяти делать дамп а на диске - сделал, запустил та же история: процесс жрет память и вылетает..
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358549
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и даже так

PRAGMA synchronous=OFF;
PRAGMA journal_mode=OFF;
PRAGMA temp_store=DISK;
PRAGMA temp_store = 1;
vacuum;

не прокатило :(
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358600
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ilia Bolshakov,

У меня вот так работает:

.timer ON
.echo ON
pragma count_changes=1;
pragma journal_mode=OFF;
delete from ...
REINDEX;
VACUUM;
pragma journal_mode=WAL;
.exit

но база всего 14 гиг.

Вылет на 2 гигах - 32 битная система?
попробуй сделать это на хосте с 64 битным sqlite
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358639
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не, система 64 битная с 4 гигами. А вот sqlite версии 64 битный не нашел, на офсайте для 64 бит есть только DLL а в утилитах только 1 версия sqlite3.exe
и судя по этому посту

http://sqlite.1065341.n5.nabble.com/64-bit-SQLite3-exe-td90771.html

какойто чел тоже просил 64 битную сборку, я стока текста не осилил, но там ему говорят сам собери :)
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358649
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я не думаю что 64 битка поможет - если вылетает на 2х гигах, ну вылетит на 4х.
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358734
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
64-разрядная версия залезет в своп, но не вылетит.
А если не хватило гига с четвертью, то даже в своп не залезет.
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39358900
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ilia Bolshakov какойто чел тоже просил 64 битную сборку, я стока текста не осилил, но там ему говорят сам собери :)

Качаешь тут сорцы. http://sqlite.org/download.html
и собираешь в VC++2015 вот таким батником

call "%VS140COMNTOOLS%\..\..\VC\bin\amd64\vcvars64.bat"
cl /D _CONSOLE /W4 /O2 shell.c sqlite3.c -Fesqlite3-x64.exe

если студия другой версии - меняешь только VS140 на нужное.

Q:\vc15\r5xx\client\sqlite>call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\\..\..\VC\bin\amd64\vcvars64.bat"

Q:\vc15\r5xx\client\sqlite>cl /D _CONSOLE /W4 /O2 shell.c sqlite3.c -Fesqlite3-x64.exe
Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64
Copyright (C) Microsoft Corporation. All rights reserved.

shell.c
sqlite3.c
Generating Code...
Microsoft (R) Incremental Linker Version 14.00.24215.1
Copyright (C) Microsoft Corporation. All rights reserved.

/out:sqlite3-x64.exe
shell.obj
sqlite3.obj
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39359513
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не могу понять, ведь ктото уже не раз собирал 64 битную версию, почему бы ее не выложить, а надо каждый раз заставлять бедного пользователя ставить VC и шаманить, какой в этом тайный смысл ? :)
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39359808
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ilia Bolshakov,

Просто не все рискнут запускать собранный непонятно кем левый exe на своей боевой базе.
на сайте sqlite публикуют sha1 даже исходного кода.

Сборку выложить не проблема
https://yadi.sk/d/4rOTjMxo325KZz
только что собрал и подписал exe - вирусов нет :)
...
Рейтинг: 0 / 0
Вытираю строки, база не уменьшается
    #39360754
Ilia Bolshakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PPA,

Спасибо буду пробовать
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Вытираю строки, база не уменьшается
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]