Обновление кластера PostgreSQL
Делаем dump баз, останавливаем 1с :
$ sudo nano /root/backup1.sh
#!/bin/sh -e
BACKUP_DIR="/backup/pg_dump"
#BACKUP_DIR="/backups/pg_dump"
cd $BACKUP_DIR
echo "====================================================================" > $BACKUP_DIR/backup.log
# останавливаем сервер 1С
echo "останавливаем сервер 1С"
sudo systemctl stop srv1cv8-ras.service
sudo systemctl stop srv1cv83.service
echo "состояние сервера 1С" >> $BACKUP_DIR/backup.log
sudo systemctl status srv1cv83.service | grep 'Active:' >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
# Устанавливаем дату
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
DATA_NAME=`date +"%Y-%m-%d_%H-%M-%S"`
echo "$DATA Size database file: " >> $BACKUP_DIR/backup.log
sudo du -h -s /var/lib/postgresql/10/main/base >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
# делаем backup
DB_BASE=`sudo /bin/su postgres -c "/usr/bin/psql -qAt -c 'SELECT * FROM pg_database;'" | \
cut -d"|" -f1 | /bin/grep -v template | /bin/grep -v postgres`
#DB_BASE="demo test" #конкретные базы
#DB_BASE="" #пропустить
echo $DB_BASE
for DB_NAME in $DB_BASE
do
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
# Записываем информацию в лог с секундами
echo "$DATA Начало backup базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
# Бэкапим базу данных demo и сразу сжимаем
echo "$DATA Начало backup базы ${DB_NAME}"
sudo /bin/su postgres -c "pg_dump -Fc ${DB_NAME}" > $BACKUP_DIR/${DB_NAME}_$DATA_NAME.dump
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
if [ $? -ne 0 ]
then
echo "$DATA Ошибка завершения backup для базы ${DB_NAME}"
echo "$DATA Ошибка завершения backup для для базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
exit
else
echo "$DATA Успешное завершение backup для базы ${DB_NAME}"
echo "$DATA Успешное завершение backup для базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
fi
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
done
# запускаем сервер 1С
#echo "Запускаем сервер 1С"
#sudo systemctl start srv1cv83.service
#sudo systemctl start srv1cv8-ras.service
echo "Состояние сервера 1С" >> $BACKUP_DIR/backup.log
sudo systemctl status srv1cv83.service | grep 'Active:' >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
echo "Закончено"
cat $BACKUP_DIR/backup.log >> $BACKUP_DIR/backupall.log
cat $BACKUP_DIR/backup.log | mutt -s "backup" root
Сохранить.
$ sudo sh /root/backup1.sh
$ sudo systemctl status srv1cv83.service
$ dpkg -l | grep postgresql-client-10
hi postgresql-client-10 10.8-18.1C amd64 front-end program s for PostgreSQL 10
$ sudo systemctl stop postgresql.service
$ mkdir /home/user/test
В папку /test положить файлы:
postgresql_10.9_5.1C_amd64_deb.tar.bz2
$ mkdir -p /tmp/post
$ cp /home/user/test/postgresql_10.9_5.1C_amd64_deb.tar.bz2 /tmp/post/
$ cd /tmp/post
$ tar -xvf postgresql_10.9_5.1C_amd64_deb.tar.bz2
$ ls
$ cd postgresql-10.9-5.1C_amd64_deb
$ ls
# список файлов:
#libpq5_10.9-5.1C_amd64.deb postgresql-10_10.9-5.1C_amd64.deb postgresql-client-10_10.9-5.1C_amd64.deb
$ sudo dpkg -i *.deb
$ dpkg -l | grep 10.9-5.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
#libpq5 помечен как зафиксированный.
#postgresql-10 помечен как зафиксированный.
#postgresql-client-10 помечен как зафиксированный.
$ sudo systemctl start postgresql.service
$ sudo systemctl status postgresql.service
$ sudo -u postgres reindexdb --all
$ sudo -u postgres vacuumdb --all --analyze --full
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
# обновление 1с
$ sudo systemctl stop srv1cv83.service
$ sudo systemctl stop srv1cv8-ras.service
$ mkdir -p /tmp/1ctmp
$ cd /tmp/1ctmp
$ ls /home/user/test/
$ cp /home/user/test/deb64_8_3_15_1656.tar.gz /tmp/1ctmp
$ tar xvzf deb64_8_3_15_1656.tar.gz
$ sudo dpkg -i 1c-enterprise83-common_8.3.15-1656_amd64.deb
$ sudo dpkg -i 1c-enterprise83-server_8.3.15-1656_amd64.deb
#$ sudo dpkg -i 1c-enterprise83-ws_8.3.15-1656_amd64.deb
#$ sudo dpkg -i 1c-enterprise83-crs_8.3.15-1656_amd64.deb
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Для 8.3.15 делается один раз
Запуск службы сервера администрирования RAS
$ sudo nano /etc/systemd/system/srv1cv8-ras.service
Вставить:
[Unit]
Description=1C:Enterprise Remote Administration Service
After=network.target remote-fs.target nss-lookup.target
Requires=srv1cv83.service
[Service]
Type=simple
#Если нужно несколько серверов, нужно задать адрес агента сервиса
#ExecStart=/opt/1C/v8.3/x86_64/ras cluster --port=1545 localhost:1540
ExecStart=/opt/1C/v8.3/x86_64/ras cluster --port=1545
KillSignal=SIGINT
PrivateTmp=true
Restart=on-failure
RestartSec=5
User=usr1cv8
Group=grp1cv8
[Install]
WantedBy=multi-user.target
Сохранить.
#$ sudo systemctl daemon-reload
$ sudo systemctl enable srv1cv8-ras.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Удаление кластера 1с
$ sudo systemctl stop srv1cv83.service
$ sudo systemctl stop srv1cv8-ras.service
$ sudo rm -R /home/usr1cv8/.1cv8/1C/1cv8
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Удаление баз PostgreSQL
$ sudo su postgres -c "psql -c 'DROP DATABASE demo;'"
$ sudo su postgres -c "psql -c 'DROP DATABASE demo1;'"
Делаем dump баз, останавливаем 1с :
$ sudo nano /root/backup1.sh
#!/bin/sh -e
BACKUP_DIR="/backup/pg_dump"
#BACKUP_DIR="/backups/pg_dump"
cd $BACKUP_DIR
echo "====================================================================" > $BACKUP_DIR/backup.log
# останавливаем сервер 1С
echo "останавливаем сервер 1С"
sudo systemctl stop srv1cv8-ras.service
sudo systemctl stop srv1cv83.service
echo "состояние сервера 1С" >> $BACKUP_DIR/backup.log
sudo systemctl status srv1cv83.service | grep 'Active:' >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
# Устанавливаем дату
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
DATA_NAME=`date +"%Y-%m-%d_%H-%M-%S"`
echo "$DATA Size database file: " >> $BACKUP_DIR/backup.log
sudo du -h -s /var/lib/postgresql/10/main/base >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
# делаем backup
DB_BASE=`sudo /bin/su postgres -c "/usr/bin/psql -qAt -c 'SELECT * FROM pg_database;'" | \
cut -d"|" -f1 | /bin/grep -v template | /bin/grep -v postgres`
#DB_BASE="demo test" #конкретные базы
#DB_BASE="" #пропустить
echo $DB_BASE
for DB_NAME in $DB_BASE
do
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
# Записываем информацию в лог с секундами
echo "$DATA Начало backup базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
# Бэкапим базу данных demo и сразу сжимаем
echo "$DATA Начало backup базы ${DB_NAME}"
sudo /bin/su postgres -c "pg_dump -Fc ${DB_NAME}" > $BACKUP_DIR/${DB_NAME}_$DATA_NAME.dump
DATA=`date +"%Y-%m-%d_%H-%M-%S"`
if [ $? -ne 0 ]
then
echo "$DATA Ошибка завершения backup для базы ${DB_NAME}"
echo "$DATA Ошибка завершения backup для для базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
exit
else
echo "$DATA Успешное завершение backup для базы ${DB_NAME}"
echo "$DATA Успешное завершение backup для базы ${DB_NAME}" >> $BACKUP_DIR/backup.log
fi
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
done
# запускаем сервер 1С
#echo "Запускаем сервер 1С"
#sudo systemctl start srv1cv83.service
#sudo systemctl start srv1cv8-ras.service
echo "Состояние сервера 1С" >> $BACKUP_DIR/backup.log
sudo systemctl status srv1cv83.service | grep 'Active:' >> $BACKUP_DIR/backup.log
echo "--------------------------------------------------------------------" >> $BACKUP_DIR/backup.log
echo "Закончено"
cat $BACKUP_DIR/backup.log >> $BACKUP_DIR/backupall.log
cat $BACKUP_DIR/backup.log | mutt -s "backup" root
Сохранить.
$ sudo sh /root/backup1.sh
$ sudo systemctl status srv1cv83.service
$ dpkg -l | grep postgresql-client-10
hi postgresql-client-10 10.8-18.1C amd64 front-end program s for PostgreSQL 10
$ sudo systemctl stop postgresql.service
$ mkdir /home/user/test
В папку /test положить файлы:
postgresql_10.9_5.1C_amd64_deb.tar.bz2
$ mkdir -p /tmp/post
$ cp /home/user/test/postgresql_10.9_5.1C_amd64_deb.tar.bz2 /tmp/post/
$ cd /tmp/post
$ tar -xvf postgresql_10.9_5.1C_amd64_deb.tar.bz2
$ ls
$ cd postgresql-10.9-5.1C_amd64_deb
$ ls
# список файлов:
#libpq5_10.9-5.1C_amd64.deb postgresql-10_10.9-5.1C_amd64.deb postgresql-client-10_10.9-5.1C_amd64.deb
$ sudo dpkg -i *.deb
$ dpkg -l | grep 10.9-5.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
#libpq5 помечен как зафиксированный.
#postgresql-10 помечен как зафиксированный.
#postgresql-client-10 помечен как зафиксированный.
$ sudo systemctl start postgresql.service
$ sudo systemctl status postgresql.service
$ sudo -u postgres reindexdb --all
$ sudo -u postgres vacuumdb --all --analyze --full
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
# обновление 1с
$ sudo systemctl stop srv1cv83.service
$ sudo systemctl stop srv1cv8-ras.service
$ mkdir -p /tmp/1ctmp
$ cd /tmp/1ctmp
$ ls /home/user/test/
$ cp /home/user/test/deb64_8_3_15_1656.tar.gz /tmp/1ctmp
$ tar xvzf deb64_8_3_15_1656.tar.gz
$ sudo dpkg -i 1c-enterprise83-common_8.3.15-1656_amd64.deb
$ sudo dpkg -i 1c-enterprise83-server_8.3.15-1656_amd64.deb
#$ sudo dpkg -i 1c-enterprise83-ws_8.3.15-1656_amd64.deb
#$ sudo dpkg -i 1c-enterprise83-crs_8.3.15-1656_amd64.deb
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Для 8.3.15 делается один раз
Запуск службы сервера администрирования RAS
$ sudo nano /etc/systemd/system/srv1cv8-ras.service
Вставить:
[Unit]
Description=1C:Enterprise Remote Administration Service
After=network.target remote-fs.target nss-lookup.target
Requires=srv1cv83.service
[Service]
Type=simple
#Если нужно несколько серверов, нужно задать адрес агента сервиса
#ExecStart=/opt/1C/v8.3/x86_64/ras cluster --port=1545 localhost:1540
ExecStart=/opt/1C/v8.3/x86_64/ras cluster --port=1545
KillSignal=SIGINT
PrivateTmp=true
Restart=on-failure
RestartSec=5
User=usr1cv8
Group=grp1cv8
[Install]
WantedBy=multi-user.target
Сохранить.
#$ sudo systemctl daemon-reload
$ sudo systemctl enable srv1cv8-ras.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Удаление кластера 1с
$ sudo systemctl stop srv1cv83.service
$ sudo systemctl stop srv1cv8-ras.service
$ sudo rm -R /home/usr1cv8/.1cv8/1C/1cv8
$ sudo systemctl start srv1cv83.service
$ sudo systemctl status srv1cv83.service
$ sudo systemctl start srv1cv8-ras.service
$ sudo systemctl status srv1cv8-ras.service
Удаление баз PostgreSQL
$ sudo su postgres -c "psql -c 'DROP DATABASE demo;'"
$ sudo su postgres -c "psql -c 'DROP DATABASE demo1;'"
Комментариев нет:
Отправить комментарий