03 октября 2019

postgresql получен запрос на вежливое выключение

Бывает что после отключение питания на Linux серверах с 1С вообще ничего не запускается. База postgres поломана и кэш 1С тоже. Вот шаги как заново всё привести в рабочее состояние.



1. Запускаем postgres в сингл моде от пользователя postgres чтобы его не убил systemd по таймауту
root@1cserver:~# su postgres
postgres@1cserver:~$ /usr/lib/postgresql/9.6/bin/postgres --single -c config_file=/etc/postgresql/9.6/main/postgresql.conf -D /var/lib/postgresql/9.6/main -P -d 1
2018-09-07 09:23:27.289 MSK [3421] DEBUG:  запись о контрольной точке по смещению 23/36889418
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  redo record is at 23/3674B6A8; shutdown FALSE
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  next transaction ID: 0:18537840; next OID: 13492030
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  next MultiXactId: 1; next MultiXactOffset: 0
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  oldest unfrozen transaction ID: 545, in database 1
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  oldest MultiXactId: 1, in database 1
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  commit timestamp Xid oldest/newest: 0/0
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  предел наложения ID транзакций равен 2147484192, источник ограничения - база данных с OID 1
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  предел наложения MultiXactId равен 2147483648, источник ограничения - база данных с OID 1
2018-09-07 09:23:27.294 MSK [3421] DEBUG:  starting up replication slots
2018-09-07 09:23:27.294 MSK [3421] LOG:  система БД была остановлена нештатно; производится автоматическое восстановление
2018-09-07 09:23:27.298 MSK [3421] DEBUG:  resetting unlogged relations: cleanup 1 init 0
2018-09-07 09:23:27.507 MSK [3421] LOG:  запись REDO начинается со смещения 23/3674B6A8
2018-09-07 09:23:27.515 MSK [3421] LOG:  invalid record length at 23/368B5C50: wanted 24, got 0
2018-09-07 09:23:27.515 MSK [3421] LOG:  записи REDO обработаны до смещения 23/368B5C28
2018-09-07 09:23:27.515 MSK [3421] LOG:  последняя завершённая транзакция была выполнена в 2018-09-06 20:47:59.49413+03
2018-09-07 09:23:27.515 MSK [3421] DEBUG:  resetting unlogged relations: cleanup 0 init 1
2018-09-07 09:23:27.941 MSK [3421] DEBUG:  performing replication slot checkpoint
2018-09-07 09:23:27.985 MSK [3421] DEBUG:  предел наложения MultiXactId равен 2147483648, источник ограничения - база данных с OID 1
2018-09-07 09:23:27.985 MSK [3421] DEBUG:  Граница членов мультитранзакции сейчас: 4294914944 (при старейшей мультитранзакции 1)

PostgreSQL stand-alone backend 9.6.8
backend>

После можно остановить postgres с нормальным кодом завершения и запустить в нормальном режиме
root@1cserver:/home/usr1cv8# kill -15 #ваш_пид_процесса
root@1cserver:/home/usr1cv8# /etc/init.d/postgresql start
[ ok ] Starting postgresql (via systemctl): postgresql.service.


2. Останавливаем непригодный 1С и чистим его кэш и конфигурациооные файлы и запускаем заново
root@1cserver:~# /etc/init.d/srv1cv83 stop
root@1cserver:~# rm -rf /home/usr1cv8/.1cv8
root@1cserver:~# /etc/init.d/srv1cv83 start


3. Запускаем RAS и добавляем базы которые были у нас на сервере 1С
root@1cserver:~# /opt/1C/v8.3/x86_64/ras --daemon cluster
root@1cserver:~# /opt/1C/v8.3/x86_64/rac cluster list
cluster                       : 583eba18-b263-11e8-ed9e-309c239dab48
host                          : 1cserver
port                          : 1541
name                          : "Локальный кластер"
expiration-timeout            : 0
lifetime-limit                : 0
max-memory-size               : 0
max-memory-time-limit         : 0
security-level                : 0
session-fault-tolerance-level : 0
load-balancing-mode           : performance
errors-count-threshold        : 0
kill-problem-processes        : 0
root@1cserver:~# /opt/1C/v8.3/x86_64/rac infobase create --cluster=583eba18-b263-11e8-ed9e-309c239dab48 --name=our_1c_db --dbms=PostgreSQL --db-server=1cserver --db-name=our_1c_db --locale=ru --db-user=postgres --db-pwd=our_postgres_db_password

и так далее для каждой базы 1С что были на сервере


Радуемся жизни :)

Комментариев нет:

Отправить комментарий