Персональный блог Ruslan Voloshin

Очистка логов транзакций Postgresql

  •  
5.0 из 1 гол.
February 05, 2010 12:080 коммент.

Для начала надо потушить сервис дабы ничего не сломалось в процессе.

service postgresql stop

Дальше логинимся под пользователем postgres  и выполняем следующие команды

pg_controldata  /var/lib/pgsql/data

так как у меня данные базы данных постгреса находятся в этой папке

pg_control version number:            812
Catalog version number:               200510211
Database system identifier:           5089267790014707287
Database cluster state:               in production
pg_control last modified:             Fri 05 Feb 2010 10:02:41 AM EET
Current log file ID:                  15
Next log file segment:                183
Latest checkpoint location:           F/B647F62C
Prior checkpoint location:            F/B62A62B0
Latest checkpoint's REDO location:    F/B647F62C
Latest checkpoint's UNDO location:    0/0
Latest checkpoint's TimeLineID:       1
Latest checkpoint's NextXID:          111185702
Latest checkpoint's NextOID:          125184
Latest checkpoint's NextMultiXactId:  1
Latest checkpoint's NextMultiOffset:  0
Time of latest checkpoint:            Fri 05 Feb 2010 10:02:41 AM EET
Maximum data alignment:               4
Database block size:                  8192
Blocks per segment of large relation: 131072
Bytes per WAL segment:                16777216
Maximum length of identifiers:        64
Maximum columns in an index:          32
Date/time type storage:               floating-point numbers
Maximum length of locale name:        128
LC_COLLATE:                           en_US.UTF-8
LC_CTYPE:                             en_US.UTF-8

 

Нас собственно интересуют тут две строчки

Latest checkpoint's NextXID:          111185702
Latest checkpoint's NextOID:          125184

 

Дальше запускаем собственно комманду для очистки логов транзакций

pg_resetxlog -o 125184 -x 111185702 -f /var/db/pgsql/

Она успешно выполнается

и выхотите из под постгреса и занова запускаете сервис

service postgreslq start

В моем случае размер папки постгреса уменьшился на 600MB примерно.

 

, , , ,
Зарегистрируйтесь для добавления сообщений