Показаны сообщения с ярлыком db2. Показать все сообщения
Показаны сообщения с ярлыком db2. Показать все сообщения

суббота, 22 сентября 2018 г.

ubuntu 16.04.5 server установка db2 11.1 (11.1.3.3) 1с 8.3.13.1513

Вышала платформа 8.3.13.1513 с ошибкой!
Ждем 8.3.14!

https://bugboard.v8.1c.ru/error/000047260.html


Устанавливаем ubuntu 16.04.5 desktop без swap файла,
т.е. размечаем вручную весь диск ext4 root.

ubuntu имя компьютера u1604
ubuntu пользователь user пароль 12345
ubuntu пользователь db2inst1 password pass
ubuntu пользователь usr1cv8 password pass

Настройки виртуальной машины - RAM (32GB)
Сеть - сетевой мост.
Проще всего пробросить в виртуальную машину лицензии 1С:Предприятия 8 посредством локального hasp.
Настройки ubuntu пользователь (привязка в скриптах) user пароль 12345, имя компьютера
u1604 сеть DHCP 

sudo apt install mc ssh samba
sudo groupadd db2iadm1
sudo useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
#passwd db2inst1
sudo echo -e "pass\npass\n" | sudo passwd db2inst1
sudo groupadd db2fadm1
sudo useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
#sudo passwd db2fenc1
sudo echo -e "pass\npass\n" | sudo passwd db2fenc1
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libpam0g:i386 -y
#sudo apt-get install libaio1 -y
sudo apt-get install libx32stdc++6 -y
#sudo apt-get install binutils -y
sudo apt-get install libnuma-dev -y
#sudo apt-get install libstdc++6 -y
#sudo apt-get install libstdc++5 -y
sudo apt-get install ksh -y
#sudo apt-get install rpm -y
cp /home/user/test/v11.1_linuxx64_expc.tar.gz /tmp
cd /tmp
tar xvzf v11.1_linuxx64_expc.tar.gz
cd expc
sudo ./db2_install -f sysreq
#русскими буквами 'да' и 'да'
#Не указан сервер SMTP уведомлений. Пока он не задан, нельзя послать уведомления
cd /opt/ibm/db2/V11.1/instance
#Create instance
sudo ./db2icrt -u db2fenc1 db2inst1
#Enable auto-start of the instance by running the following command as the instance owner:
sudo ./db2iauto -on db2inst1
#sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C'
#автоматом запускаться не будет, нужно настраивать как в прошлых статьях
#Пока запускать руками
$ sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start' 
или
$ sudo su - db2inst1
$ db2start
#гасить
 $ db2stop
или
$ sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'
------------------------------------------------
# установка 1с
mkdir -p /tmp/1ctmp
cd /tmp/1ctmp
sudo apt install imagemagick -y
sudo apt install -y unixodbc libgsf-1-114 libglib2.0
#ubuntu
#sudo apt install ttf-mscorefonts-installer -y
#debian
#wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
#sudo  apt install -y xfonts-utils cabextract
#sudo dpkg -i ttf-mscorefonts-installer_3.6_all.deb
# фонты от Etersoft
#ubuntu
cp /home/user/test/fonts-ttf-ms_1.0-eter4ubuntu_all.deb /tmp/1ctmp
sudo  apt install -y cabextract
sudo dpkg -i fonts-ttf-ms_1.0-eter4ubuntu_all.deb
#sudo apt -f -y install
#debian
#cp /home/user/Загрузки/fonts-ttf-ms_1.0-eter4debian_all.deb /tmp/1ctmp
#sudo dpkg -i fonts-ttf-ms_1.0-eter4debian_all.deb
cp /home/user/test/1c-enterprise83-common_8.3.13-1513_amd64.deb /tmp/1ctmp/
cp /home/user/test/1c-enterprise83-server_8.3.13-1513_amd64.deb /tmp/1ctmp/
#tar xvzf deb64.tar.gz
#tar xvzf client.deb64.tar.gz
#sudo dpkg -i 1c*.deb
sudo dpkg -i 1c-enterprise83-common_8.3.13-1513_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.13-1513_amd64.deb
#sudo apt -f -y install
sudo chown -R usr1cv8:grp1cv8 /opt/1C
#sudo echo -e "pass\npass\n" | sudo passwd usr1cv8
#sudo service srv1cv83 start

sudo chown -R usr1cv8:grp1cv8 /opt/1C
sudo echo -e "pass\npass\n" | sudo passwd usr1cv8
sudo usermod -aG db2iadm1 usr1cv8
#sudo echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
sudo sh -c "echo '. /home/db2inst1/sqllib/db2profile' >> /home/usr1cv8/.profile"
#sudo service srv1cv83 start
sudo systemctl start srv1cv83.service
sudo systemctl status srv1cv83.service
#sudo service srv1cv83 status
#ss -tlnp | grep :15
mkdir /tmp/hasp
cd /tmp/hasp
cp /home/user/test/aksusbd_7.81-1_amd64.deb  /tmp/hasp
sudo dpkg -i aksusbd_7.81-1_amd64.deb

#sudo dpkg -i *.deb
#sudo apt-get install -f -y

#sudo systemctl status aksusbd.service
#sudo systemctl status hasplmd.service 
------------------------------------------------


# запуск db2 через rc.local
$ sudo nano /etc/rc.local
Вставить перед  exit 0

sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
exit 0

Выключать:
$ sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'
$ sudo poweroff

или ждать 5 мин.

 
$ sudo poweroff

ubuntu имя компьютера u1604
ubuntu пользователь user пароль 12345
ubuntu пользователь db2inst1 password pass
ubuntu пользователь usr1cv8 password pass


На картинке вместо deb30 должно быть u1604.




$ sudo su - db2inst1
$ db2licm -l
Product name:                     "DB2 Express-C"
License type:                     "Unwarranted"
Expiry date:                      "Permanent"
Product identifier:               "db2expc"
Version information:              "11.1"
Max number of CPUs:               "2"
Max amount of memory (GB):        "16"
Max number of cores:              "2"
Enforcement policy:               "Soft Stop"

$  db2ls

Install Path                       Level   Fix Pack   Special Install Number   Install Date                  Installer UID
---------------------------------------------------------------------------------------------------------------------
/opt/ibm/db2/V11.1               11.1.3.3        3                            Sat Sep 22 13:03:23 2018 MSK             0

Если запущено db2start будет 2 строки:
$ ps -eaf|grep -i db2sysc
db2inst1  2399  2396  5 14:38 pts/0    00:00:59 db2sysc
db2inst1  6841  2029  0 14:55 pts/0    00:00:00 grep --color=auto -i db2sysc


$ db2ilist
db2inst1

Сохранение базы средствами db2
$ su - db2inst1
$ db2 backup db demo
Будет доступно только владельцу, узнаем как называется backup

$ ls
DEMO.0.db2inst1.DBPART000.20180922191035.001
$ chmod -R 777 DEMO.0.db2inst1.DBPART000.20180922191035.001

Теперь можно положить базу на ftp.



Восстановление базы средствами db2
$ su - db2inst1
$ db2 restore db demo

Если нужно сделать дополнительные базы:

Регистрация дополнительной базы "old" в основном экземпляре
Создадим базу средствами 1С:
$ su - db2inst1
Наша дополнительная база  называется old
$ db2 restart db old

Сохранение базы средствами db2
$ db2 backup db old

Два варианта удаления:
# dpkg -l | grep 1c-enterprise83 | awk -F' ' '{print $2}' | xargs dpkg -r
# dpkg -l | grep 1c-enterprise83 | cut -d ' ' -f 3 | xargs dpkg -r
 

понедельник, 25 декабря 2017 г.

Debian 9.3.0 установка db2 v11.1

Файлы необходимые для установки (предварительно нужно скачать по указанным в начале статьи ссылкам):

v11.1_linuxx64_expc.tar.gz
server.deb64.tar.gz
client.deb64.tar.gz
fonts-ttf-ms_1.0-eter4debian_all.deb
#fonts-ttf-ms_1.0-eter4ubuntu_all.deb
haspd_7.60-eter1debian_amd64.deb
haspd-modules_7.60-eter1debian_amd64.deb

Откроем firefox (в ubuntu), откроем эту страничку  и скопируем в буфер скрипт установки db2 и 1с:

$ nano installdb2.sh

Скопируем из буфера следующий скрипт:

#!/bin/sh
sudo groupadd db2iadm1
sudo useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
#passwd db2inst1
sudo echo -e "pass\npass\n" | sudo passwd db2inst1
sudo groupadd db2fadm1
sudo useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
#sudo passwd db2fenc1
sudo echo -e "pass\npass\n" | sudo passwd db2fenc1
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libpam0g:i386 -y
#sudo apt-get install libaio1 -y
sudo apt-get install libx32stdc++6 -y
#sudo apt-get install binutils -y
sudo apt-get install libnuma-dev -y
sudo apt-get install libstdc++6 -y
#sudo apt-get install libstdc++5 -y
sudo apt-get install ksh -y
#sudo apt-get install rpm -y
cp /home/user/test/v11.1_linuxx64_expc.tar.gz /tmp
cd /tmp
tar xvzf v11.1_linuxx64_expc.tar.gz
cd expc
sudo ./db2_install -f sysreq
#Не указан сервер SMTP уведомлений. Пока он не задан, нельзя послать уведомления
cd /opt/ibm/db2/V11.1/instance
#Create instance
sudo ./db2icrt -u db2fenc1 db2inst1
#Enable auto-start of the instance by running the following command as the instance owner:
sudo ./db2iauto -on db2inst1
#sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C'
# запуск db2 через rc.local
cd /tmp
cat > rc.local <<EOF
#!/bin/bash
# Не запускаю db2fm, плохо гаситься
cd /opt/ibm/db2/V11.1/bin/
#./db2fm -i db2inst1 -u -U
#./db2fm -i db2inst1 -s -S
# Запустим db2
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
exit 0
EOF
sudo cp /tmp/rc.local /etc/
sudo chmod +x /etc/rc.local
#sudo systemctl daemon-reload
# скрипт выключения db2
cd /tmp
cat > db2exit.service <<EOF
[Unit]
Description=db2stop
[Service]
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop force'
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target reboot.target poweroff.target
EOF
sudo cp db2exit.service /lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable db2exit.service
#ps -eaf|grep -i db2sysc
#sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2start
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
cd /opt/ibm/db2/V11.1/bin/
#This step adds an entry to the /etc/inittab so that the FMCD process is started each time you reboot.
sudo ./db2fmcu -u -p /opt/ibm/db2/V11.1/bin/db2fmcd
#Turn on the fault monitor for the instance:
sudo  ./db2fm -i db2inst1 -f on
# установка 1с
mkdir -p /tmp/1ctmp
cd /tmp/1ctmp
sudo apt install -y unixodbc libgsf-1-114 libglib2.0
#ubuntu
#sudo apt install ttf-mscorefonts-installer -y
#debian
#wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
sudo  apt install -y xfonts-utils cabextract
#sudo dpkg -i ttf-mscorefonts-installer_3.6_all.deb
# фонты от Etersoft
#ubuntu
#cp /home/user/test/fonts-ttf-ms_1.0-eter4ubuntu_all.deb /tmp/1ctmp
#sudo dpkg -i fonts-ttf-ms_1.0-eter4ubuntu_all.deb
#sudo apt -f -y install
#debian
cp /home/user/test/fonts-ttf-ms_1.0-eter4debian_all.deb /tmp/1ctmp
sudo dpkg -i fonts-ttf-ms_1.0-eter4debian_all.deb
sudo apt -f -y install
cp /home/user/test/server.deb64.tar.gz /tmp/1ctmp
cp /home/user/test/client.deb64.tar.gz /tmp/1ctmp
tar xvzf server.deb64.tar.gz
tar xvzf client.deb64.tar.gz
sudo dpkg -i 1c*.deb
sudo apt -f -y install
sudo chown -R usr1cv8:grp1cv8 /opt/1C
sudo echo -e "pass\npass\n" | sudo passwd usr1cv8
sudo usermod -aG db2iadm1 usr1cv8
#sudo echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
sudo sh -c "echo '. /home/db2inst1/sqllib/db2profile' >> /home/usr1cv8/.profile"
sudo service srv1cv83 start
#sudo service srv1cv83 status
sudo  apt install -y libc6-i386
mkdir /tmp/hasp
cd /tmp/hasp
cp /home/user/test/haspd_7.60-eter1debian_amd64.deb /tmp/hasp
cp /home/user/test/haspd-modules_7.60-eter1debian_amd64.deb /tmp/hasp
#cp /home/user/test/haspd_7.40-eter10ubuntu_amd64.deb /tmp/hasp
#cp /home/user/test/haspd-modules_7.40-eter10ubuntu_amd64.deb /tmp/hasp
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/8/haspd_7.60-eter1debian_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd_7.40-eter10ubuntu_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/8/haspd-modules_7.60-eter1debian_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd-modules_7.40-eter10ubuntu_amd64.deb
sudo dpkg -i *.deb
sudo apt-get install -f -y
sudo service haspd start
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'
#sudo service haspd status
#sudo shutdown -r now

Сохраним файл installdb2.sh

Сделаем исполняем
$ chmod +x  installdb2.sh

Перед запуском обратим внимание нужно будет 2 раза подтвердить "да" русскими буквами




Выполним:

$ ./installdb2.sh
$ sudo poweroff


Сохранение базы средствами db2
$ su - db2inst1
$ db2 backup db demo
Будет доступно только владельцу, узнаем как называется backup

$ ls
DEMO.0.db2inst1.DBPART000.20171107172851.001
$ chmod -R 777 DEMO.0.db2inst1.DBPART000.20171107172851.001

Теперь можно положить базу на ftp.



Восстановление базы средствами db2
$ su - db2inst1
$ db2 restore db demo

Если нужно сделать дополнительные базы:

Регистрация дополнительной базы "old" в основном экземпляре
Создадим базу средствами 1С:




$ su - db2inst1
Наша дополнительная база  называется old
$ db2 restart db old

Сохранение базы средствами db2
$ db2 backup db old

вторник, 7 ноября 2017 г.

Использование консервов db2zgu.ova

Итак у нас есть сделанные нами консервы db2zgu.ova
Установка 1С 8.3.10 СУБД db2 11.1. ubuntu 16.04.3
Импортируем виртуальную машину.
Используя скрипт смены ip адреса,
заменим ip адрес.
Для примера в скрипте ip адреса для сетевого подключения NAT virtualbox
(можно установить свои ip)

$ nano start2.sh

Скопируем из буфера следующий скрипт, в котором Вам нужно исправить ip и адрес шлюза в соответствии со своей сетью:

#!/bin/bash
# замена ip & name
#----------------------------------------------------------------------
_hostname="ud1604"
# real computer
#_iface="enp0s31f6"
# kvm iface
#_iface="ens3"
# virtualbox iface
_iface="enp0s3"
_address="10.0.2.15"
_gateway="10.0.2.2"
_netmask="255.255.255.0"
_nameserver="8.8.8.8"
#----------------------------------------------------------------------
# настроим статический ip
sudo cat > /tmp/interfaces <<EOF
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#auto $_iface
#iface $_iface inet dhcp
iface $_iface inet static
address $_address
netmask $_netmask
gateway $_gateway
#dns-nameservers $_nameserver
auto $_iface
EOF
sudo cp /tmp/interfaces /etc/network
sudo rm /etc/resolv.conf
sudo /bin/su -c "echo 'nameserver $_nameserver' > /etc/resolv.conf"
# изменим hostname и ip
sudo cat > /tmp/hosts <<EOF
127.0.0.1       localhost
$_address       $_hostname
EOF
sudo cp /tmp/hosts /etc
# изменим hostname
sudo hostname $_hostname
sudo /bin/su -c "echo $_hostname > /etc/hostname"
# перезагрузим сеть
sudo systemctl restart networking.service

Сохраним файл start2.sh

Сделаем исполняем
$ chmod +x  start2.sh

Выполним:

$ ./start2.sh

Перезагрузимся

$ sudo reboot

Подключим базу:


Зайдем в конфигуратор,  в пустой конфигурации создадим справочник (будет доступна кнопка сохранить), сохраним, выйдем.

Теперь положим базу сохраненную средствами db2 базу в /home/db2inst1/

Восстановление базы средствами db2
$ su - db2inst1
$ db2 restore db demo
.

четверг, 2 ноября 2017 г.

Остановка всех процессов DB2 (Linux и UNIX)

Остановка всех процессов DB2 (Linux и UNIX)
How to completely stop DB2
как надежно остановить DB2?

Долго бился с db2 для того что бы правильно включить, а потом нормально выключить
Установка 1С 8.3.10 СУБД db2 11.1. ubuntu 16.04.3

На сегодняшний день отказался от db2fm , иначе гасить руками и ждать.

# запуск db2 через rc.local
cd /tmp
cat > rc.local <<EOF
#!/bin/bash
# Не запускаю db2fm, плохо гаситься
cd /opt/ibm/db2/V11.1/bin/
#./db2fm -i db2inst1 -u -U
#./db2fm -i db2inst1 -s -S
# Запустим db2
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
exit 0
EOF
sudo cp /tmp/rc.local /etc/
sudo chmod +x /etc/rc.local
#sudo systemctl daemon-reload

# скрипт выключения db2
cd /tmp
cat > db2exit.service <<EOF
[Unit]
Description=db2stop
[Service]
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop force'
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target reboot.target poweroff.target
EOF
sudo cp db2exit.service /lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable db2exit.service


Если db2 установили старым скриптом, тогда правим:

$ sudo nano /etc/rc.local

Исправить как здесь:

#!/bin/bash
# Не запускаю db2fm, плохо гаситься
cd /opt/ibm/db2/V11.1/bin/
#./db2fm -i db2inst1 -u -U
#./db2fm -i db2inst1 -s -S
# Запустим db2
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
exit 0

Сохранить.


$ sudo nano /lib/systemd/system/db2exit.service

Строку:
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'

Редактируем:
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop  force'

Сохранить.
sudo systemctl daemon-reload

Еще вариант гасить вручную:

$ su - db2inst1
$ db2stop force
$ exit

среда, 25 октября 2017 г.

Установка 1С 8.3.10 СУБД db2 11.1. ubuntu 16.04.3

23 октября 2017 года, фирма "1С", исправила ошибки в платформе и начиная с версии 8.3.10.2650, платформа наконец, стала работоспособна с зарплатными решениями фирмы "1С" на управляемых формах, в частности 1С:Зарплата и кадры государственного учреждения 8 редакция 3.1.
В данной статье опишем установку сервера и клиента 1С 8.3.10.2650 с СУБД db2 11.1 на ubuntu 16.04.3 на virtualbox.
Нам потребуется (все 64 бит):
1. ubuntu 16.04.3
2. 1С берем на сайте 8.3.10.2650 при наличии договора ИТС
3. DB2 берем IBM Db2 Express-C (требуется зарегистрироваться, страну указать USA если с Russia не получиться)
4.  Фонты берем etersoft по кнопке получить (после бесплатной регистрации wine.local для ubuntu 16.04 64 бит)
5. Драйверы hasp берем etersoft

1. Устанавливаем ubuntu 16.04.3 desktop без swap файла, т.е. размечаем вручную весь диск ext4 root.
Настройки виртуальной машины - RAM (минимум 4GB)
Сеть - сетевой мост.

Проще всего пробросить в виртуальную машину лицензии 1С:Предприятия 8 посредством локального hasp.


Настройки ubuntu пользователь (привязка в скриптах) user пароль 12345, имя компьютера любое, позже мы его сменим скриптом, как и ip адрес.

После установки, Ctrl +Alt + T (окно терминала)
$ sudo apt update -y
$ sudo apt upgrade -y
$ sudo apt install mc ssh samba -y

Возможно sudo apt upgrade -y не пройдет из за блокировки, тогда sudo reboot и повторите с начала.

2. Настройка сети скриптом.

Откроем firefox (в ubuntu), откроем эту страничку  и скопируем в буфер скрипт настройки сети:

$ nano network.sh

Скопируем из буфера следующий скрипт, в котором Вам нужно исправить ip и адрес шлюза в соответствии со своей сетью:

#!/bin/bash
# настройка ip и hostname
#----------------------------------------------------------------------
_hostname="ud1604"
# real computer
#_iface="enp0s31f6"
# kvm iface
#_iface="ens3"
# virtualbox iface
_iface="enp0s3"
_address="192.168.0.3"
_gateway="192.168.0.1"
_netmask="255.255.255.0"
_nameserver="8.8.8.8"
#----------------------------------------------------------------------
#add a swap file to an Ubuntu 16.04
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo cp /etc/fstab /etc/fstab.bak
sudo echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# отключим сетевой менеджер
sudo systemctl stop NetworkManager.service
sudo systemctl disable NetworkManager.service
# настроим статический ip
sudo cat > /tmp/interfaces <<EOF
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#auto $_iface
#iface $_iface inet dhcp
iface $_iface inet static
address $_address
netmask $_netmask
gateway $_gateway
dns-nameservers $_nameserver
auto $_iface
EOF
sudo cp /tmp/interfaces /etc/network
#sudo rm /etc/resolv.conf
#sudo /bin/su -c "echo 'nameserver $_nameserver' > /etc/resolv.conf"
# изменим hostname и ip
sudo cat > /tmp/hosts <<EOF
127.0.0.1       localhost
$_address       $_hostname
EOF
sudo cp /tmp/hosts /etc
# изменим hostname
sudo hostname $_hostname
sudo /bin/su -c "echo $_hostname > /etc/hostname"
# отключим ip6
sudo /bin/su -c "echo 'net.ipv6.conf.all.disable_ipv6 = 1' >> /etc/sysctl.conf"
sudo /bin/su -c "echo 'net.ipv6.conf.default.disable_ipv6 = 1' >> /etc/sysctl.conf"
sudo /bin/su -c "echo 'net.ipv6.conf.lo.disable_ipv6 = 1' >> /etc/sysctl.conf"
#sudo /bin/su -c "echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf"
sudo /bin/su -c "echo 'vm.swappiness=0' >> /etc/sysctl.conf"
#sudo /bin/su -c "echo 'vm.vfs_cache_pressure = 50' >> /etc/sysctl.conf"
sudo sysctl -p
# перезагрузим сеть
sudo systemctl start networking.service
sudo systemctl enable networking.service
# Настройка sudo journalctl -b sudo journalctl -b -1 sudo journalctl --list-boots
sudo sed -i 's/#Storage=auto/Storage=persistent/' /etc/systemd/journald.conf
# Отключение уведомлений службы Apport (/var/crash)
sudo sed -i 's/enabled=1/enabled=0/' /etc/default/apport
# Настройка ftp пользователь: test пароль: test
sudo apt install pure-ftpd -y
sudo groupadd ftpgroup
sudo usermod -aG ftpgroup user
sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
sudo mkdir /home/user/test
sudo chown -R user:ftpgroup /home/user/test
#sudo pure-pw useradd test -u user -d /home/user/test
# Заведем пользователя ftp test с паролем test
sudo echo -e "test\ntest\n" | sudo pure-pw useradd test -u user -d /home/user/test
sudo pure-pw mkdb
sudo service pure-ftpd restart
# ubuntu
# Отключим службу ondemand
# (для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
sudo systemctl stop ondemand
sudo systemctl disable ondemand
# shutdown -r now

Сохраним файл network.sh

Сделаем исполняем
$ chmod +x  network.sh

Выполним:

$ ./network.sh

Перезагрузимся

$ sudo reboot

3. Установка сервера db2 и 1c скриптом:

После перезагрузки по сети можно подключиться любым ftp клиентом к ftp серверу на нашей виртуальной машине (по ip или или имени ud1604) пользователь test пароль test и загрузить файлы установки:

Файлы необходимые для установки (предварительно нужно скачать по указанным в начале статьи ссылкам):

v11.1_linuxx64_expc.tar.gz
server.deb64.tar.gz
client.deb64.tar.gz
fonts-ttf-ms_1.0-eter4ubuntu_all.deb
haspd_7.60-eter1debian_amd64.deb
haspd-modules_7.60-eter1debian_amd64.deb

Откроем firefox (в ubuntu), откроем эту страничку  и скопируем в буфер скрипт установки db2 и 1с:

$ nano installdb2.sh

Скопируем из буфера следующий скрипт:

#!/bin/sh
sudo groupadd db2iadm1
sudo useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
#passwd db2inst1
sudo echo -e "pass\npass\n" | sudo passwd db2inst1
sudo groupadd db2fadm1
sudo useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
#sudo passwd db2fenc1
sudo echo -e "pass\npass\n" | sudo passwd db2fenc1
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libpam0g:i386 -y
#sudo apt-get install libaio1 -y
sudo apt-get install libx32stdc++6 -y
#sudo apt-get install binutils -y
sudo apt-get install libnuma-dev -y
sudo apt-get install libstdc++6 -y
#sudo apt-get install libstdc++5 -y
sudo apt-get install ksh -y
#sudo apt-get install rpm -y
cp /home/user/test/v11.1_linuxx64_expc.tar.gz /tmp
cd /tmp
tar xvzf v11.1_linuxx64_expc.tar.gz
cd expc
sudo ./db2_install -f sysreq
#Не указан сервер SMTP уведомлений. Пока он не задан, нельзя послать уведомления
cd /opt/ibm/db2/V11.1/instance
#Create instance
sudo ./db2icrt -u db2fenc1 db2inst1
#Enable auto-start of the instance by running the following command as the instance owner:
sudo ./db2iauto -on db2inst1
#sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2set DB2_WORKLOAD=1C'
# запуск db2 через rc.local
cd /tmp
cat > rc.local <<EOF
#!/bin/bash
# Не запускаю db2fm, плохо гаситься
cd /opt/ibm/db2/V11.1/bin/
#./db2fm -i db2inst1 -u -U
#./db2fm -i db2inst1 -s -S
# Запустим db2
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
exit 0
EOF
sudo cp /tmp/rc.local /etc/
sudo chmod +x /etc/rc.local
#sudo systemctl daemon-reload
# скрипт выключения db2
cd /tmp
cat > db2exit.service <<EOF
[Unit]
Description=db2stop
[Service]
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop force'
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target reboot.target poweroff.target
EOF
sudo cp db2exit.service /lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable db2exit.service
#ps -eaf|grep -i db2sysc
#sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2start
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2start'
cd /opt/ibm/db2/V11.1/bin/
#This step adds an entry to the /etc/inittab so that the FMCD process is started each time you reboot.
sudo ./db2fmcu -u -p /opt/ibm/db2/V11.1/bin/db2fmcd
#Turn on the fault monitor for the instance:
sudo  ./db2fm -i db2inst1 -f on
# установка 1с
mkdir -p /tmp/1ctmp
cd /tmp/1ctmp
sudo apt install -y unixodbc libgsf-1-114 libglib2.0
#ubuntu
#sudo apt install ttf-mscorefonts-installer -y
#debian
#wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
sudo  apt install -y xfonts-utils cabextract
#sudo dpkg -i ttf-mscorefonts-installer_3.6_all.deb
# фонты от Etersoft
#ubuntu
cp /home/user/test/fonts-ttf-ms_1.0-eter4ubuntu_all.deb /tmp/1ctmp
sudo dpkg -i fonts-ttf-ms_1.0-eter4ubuntu_all.deb
sudo apt -f -y install
#debian
#cp /home/user/Загрузки/fonts-ttf-ms_1.0-eter4debian_all.deb /tmp/1ctmp
#sudo dpkg -i fonts-ttf-ms_1.0-eter4debian_all.deb
cp /home/user/test/server.deb64.tar.gz /tmp/1ctmp
cp /home/user/test/client.deb64.tar.gz /tmp/1ctmp
tar xvzf server.deb64.tar.gz
tar xvzf client.deb64.tar.gz
sudo dpkg -i 1c*.deb
sudo apt -f -y install
sudo chown -R usr1cv8:grp1cv8 /opt/1C
sudo echo -e "pass\npass\n" | sudo passwd usr1cv8
sudo usermod -aG db2iadm1 usr1cv8
#sudo echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
sudo sh -c "echo '. /home/db2inst1/sqllib/db2profile' >> /home/usr1cv8/.profile"
sudo service srv1cv83 start
#sudo service srv1cv83 status
sudo  apt install -y libc6-i386
mkdir /tmp/hasp
cd /tmp/hasp
cp /home/user/test/haspd_7.60-eter1debian_amd64.deb /tmp/hasp
cp /home/user/test/haspd-modules_7.60-eter1debian_amd64.deb /tmp/hasp
#cp /home/user/test/haspd_7.40-eter10ubuntu_amd64.deb /tmp/hasp
#cp /home/user/test/haspd-modules_7.40-eter10ubuntu_amd64.deb /tmp/hasp
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/8/haspd_7.60-eter1debian_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd_7.40-eter10ubuntu_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/8/haspd-modules_7.60-eter1debian_amd64.deb
#wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd-modules_7.40-eter10ubuntu_amd64.deb
sudo dpkg -i *.deb
sudo apt-get install -f -y
sudo service haspd start
sudo su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'
#sudo service haspd status
#sudo shutdown -r now

Сохраним файл installdb2.sh

Сделаем исполняем
$ chmod +x  installdb2.sh

Перед запуском обратим внимание нужно будет 2 раза подтвердить "да" русскими буквами



Выполним:

$ ./installdb2.sh
$ sudo poweroff

Здесь полезно сделать "консервы".
До подключения базы 1с легко менять ip адрес и название сервера.
Сделаем выгрузку db2zgu.ova

Использование консервов db2zgu.ova

Перезагрузимся, если не делали выгрузку или просто загрузим виртуалку.

$ sudo reboot

Можно подключать базу 1С.
 


Можно создать базу пользователь db2inst1 пароль pass


Сохранение базы средствами db2
$ su - db2inst1
$ db2 backup db demo
Будет доступно только владельцу, узнаем как называется backup

$ ls
DEMO.0.db2inst1.DBPART000.20171107172851.001
$ chmod -R 777 DEMO.0.db2inst1.DBPART000.20171107172851.001

Теперь можно положить базу на ftp.



Восстановление базы средствами db2
$ su - db2inst1
$ db2 restore db demo

Если нужно сделать дополнительные базы:

Регистрация дополнительной базы "old" в основном экземпляре
Создадим базу средствами 1С:


$ su - db2inst1
Наша дополнительная база  называется old
$ db2 restart db old

Сохранение базы средствами db2
$ db2 backup db old
______________________________________________________________________

Коллега задал вопрос а работает ли 32 битный сервер 1С с 64 битной DB2?
Установка 32-разрядного сервера 1С:Предприятие в Linux x64 архитектуры
Переименовал 32 битные пакеты в client.deb64.tar.gz server.deb64.tar.gz
Воспользовался приведенным скриптом, однако для 32 битной версии 1С
после скрипта нужно выполнить:

$ sudo dpkg --add-architecture i386 && sudo apt update
$ sudo apt install imagemagick-6.q16:i386 unixodbc:i386 libgsf-bin:i386
$ sudo apt install imagemagick:i386

Запускается, работает, база из backup средствами db2 грузиться.

среда, 20 сентября 2017 г.

Запуск db2 Ubuntu 17.10 через rc.local

How can I execute command on startup (rc.local alternative) on Ubuntu 16.10
Как автоматически перезапустить экземпляры DB2 через монитор сбоя DB2

На ubuntu 17.10 запустить приведенным ниже способом не удается:

$ sudo nano  /lib/systemd/system/db2fmcd.service

1. После перезагрузки компьютера не стартует DB2. Если коротко: это происходит потому, что не запускается DB2 Fault Monitor Coordinator.  Настроим systemd для его запуска. Для этого в /usr/lib/systemd/system/ создал файл db2fmc.service со следующим содержимым:
[Unit]
Description=DB2V11122

[Service]
#ExecStart=/opt/ibm/db2/V11.1/bin/db2fmcd
#ExecStart=/opt/ibm/db2/V11.1/bin/start.sh
ExecStart=/bin/sh -ec "/opt/ibm/db2/V11.1/bin/db2fmcd"
 
Restart=always
KillMode=process
KillSignal=SIGHUP

[Install]
WantedBy=default.target

2) Execute the following commands as root:

$ sudo systemctl daemon-reload
$ sudo systemctl enable db2fmcd
$ sudo systemctl start db2fmcd

$ sudo nano /opt/ibm/db2/V11.1/bin/start.sh

#!/bin/sh -e
#
exit 0

Пришлось в соответствии с  советом  городить костыли запускать через rc.local
 
$ sudo nano /etc/rc.local

#!/bin/bash
cd /opt/ibm/db2/V11.1/bin/
./db2fm -i db2inst1 -u -U
./db2fm -i db2inst1 -s -S
exit 0


Сохранить. 
$ sudo chmod +x /etc/rc.local

$ sudo reboot

Выполнение скрипта при выключении-перезагрузке, что не так?

Создадим сервис для выключения db2


$ sudo nano  /lib/systemd/system/db2exit.service

[Unit]
Description=db2stop

[Service]
ExecStop=/bin/su db2inst1 -c '. /home/db2inst1/sqllib/db2profile;/home/db2inst1/sqllib/adm/db2stop'
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target reboot.target poweroff.target

Сохранить.

$ sudo systemctl daemon-reload
$ sudo systemctl enable db2exit.service
$ sudo systemctl status db2exit.service
!!!$ sudo systemctl stop db2exit.service

суббота, 16 сентября 2017 г.

Установка db2 11.1.2.2 windows server 2012

Установка Microsoft Windows Server 2012 R2

1. Создать пользователя USR1CV8 с правами администратора (на администратора ругается).
Задаем пароль для пользователя USR1CV8, например, a12345A(без русских букв), также делаем пароль бессрочным, также администратору в "Управление компьютером").

2. Переименовать сервер покороче (без русских букв), например, WINDB2 :


3. Отключаем или настраиваем  брандмауэр.


4. Зайти пользователем USR1CV8, выполнить setup.
Задаем для пользователя db2admin пароль, например a12345A (в пароле не должно быть русских букв windows позволяет, db2 нет).



Выполняем команду:
db2set DB2_WORKLOAD=1C
если запустить просто db2set, то система покажет список установленных параметров


Затем перезапускаем СУБД:
db2stop
db2start

(сохраняем образ windb2.ova)
Устанавливаем 1с.




Не забываем проверить, что в каталоге с сервером приложений 1С размещен файл-семафор db2loadapion, что позволит ускорить процесс загрузки базы данных из dt-файла.

.

пятница, 15 сентября 2017 г.

Диагностика

sudo service postgresql status
или
sudo systemctl status postgresql.service
видим запущен, автозагрузка.


$ netstat -tunpl | grep 5432
видим слушает порт 5432





sudo service srv1cv83 status
или
sudo systemctl status srv1cv83.service



 Как не должно быть:
$ ps aux|grep 1c


действия:
грохнуть кластер (понимайте что делаете!):
$ sudo rm -r /home/usr1cv8/.1cv8/1C/1cv8
перегрузить сервер 1с:
$ sudo systemctl restart srv1cv83.service

Как должно быть:
$ ps aux|grep 1c




вторник, 12 сентября 2017 г.

Как посмотреть размер базы ?

Как посмотреть размер базы demo postgresql?
Самый простой способ: 
postgres=# \l+ 
   
# su - postgres
$ sudo su - postgres
$ psql 
postgres=# select pg_database_size('demo');
 pg_database_size
------------------
       8046019076
(1 строка)
postgres=# SELECT pg_size_pretty( pg_database_size( 'demo' ) );
 pg_size_pretty
----------------
 7673 MB
(1 строка)
 
postgres=# SELECT pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) AS size
FROM pg_database;
 
  datname  |  size
-----------+---------
 postgres  | 7301 kB
 demo      | 2752 MB
 template1 | 7301 kB
 template0 | 7169 kB
 demo1     | 9021 kB
 example   | 7484 MB
(6 rows) 
 
 
Database size in DB2 
 
Аналогично db2:

$ su - db2inst1
$ db2 connect to demo

   Database Connection Information

 Database server        = DB2/LINUXX8664 11.1.2.2
 SQL authorization ID   = DB2INST1
 Local database alias   = DEMO


$ db2 "CALL GET_DBSIZE_INFO (?, ?, ?, -1)"

  Value of output parameters
  --------------------------
  Parameter Name  : SNAPSHOTTIMESTAMP
  Parameter Value : 2017-09-12-13.33.11.596646

  Parameter Name  : DATABASESIZE
  Parameter Value : 4702175232

  Parameter Name  : DATABASECAPACITY
  Parameter Value : 22786310144

  Return Status = 0

среда, 6 сентября 2017 г.

Настройка kernel parameters db2

Требования к параметрам ядра (Linux)
Modifying kernel parameters (Linux)

$ ipcs -l

------ Messages Limits --------
max queues system wide = 32000    // MSGMNI
max size of message (bytes) = 8192    // MSGMAX
default max size of queue (bytes) = 16384    // MSGMNB

------ Shared Memory Limits --------
max number of segments = 4096            // SHMMNI
max seg size (kbytes) = 18014398509465599    // SHMMAX
max total shared memory (kbytes) = 18014398442373116    // SHMALL
min seg size (bytes) = 1

------ Semaphore Limits --------
max number of arrays = 32000        // SEMMNI
max semaphores per array = 32000    // SEMMSL
max semaphores system wide = 1024000000 // SEMMNS
max ops per semop call = 500        // SEMOPM
semaphore max value = 32767


Требования к параметрам ядра (Linux)
В версии db2 11.1 параметры ядра настраиваются автоматически,
однако  целесообразно настроить:
vm.swappiness=0 

ниже относится к db2 9.7
$ sudo nano /etc/sysctl.conf

#Example for a computer with 16GB of RAM:
kernel.shmmni=4096
kernel.shmmax=17179869184
kernel.shmall=8208903
#kernel.sem=<SEMMSL> <SEMMNS> <SEMOPM> <SEMMNI>
kernel.sem=32000 1024000000 500 32000
kernel.msgmni=16384
kernel.msgmax=65536
kernel.msgmnb=65536
vm.swappiness=0


$ sudo sysctl -p

вторник, 29 августа 2017 г.

Как автоматически перезапустить экземпляры DB2 через монитор сбоя DB2

Не стартует db2
Еще
http://own.sap.sd/db2ubuntu
Как автоматически перезапустить экземпляры DB2 через монитор сбоя DB2.
Auto-starting instances
Configure DB2 instance to start automatically at boot time
Autostart of DB2 instance on reboot does not work on RHEL6/CentOS systems
How to automatically restart DB2 instances via the DB2 fault monitor.
How to disable the fault monitor daemon (db2fmcd) process
DB2 AutoStart is not supported on Red Hat Enterprise Linux version 7
How to completely stop DB2
Example Upstart Service
Convert "run at startup" script from upstart to systemd for Ubuntu 16
ошибка
db2 autostart
autostart process in ubuntu

Рецепт прекрасно работает в debian 9, ubuntu 16.04, но не работает в ubuntu 17.10
Запуск db2 Ubuntu 17.10 через rc.local

1. После перезагрузки компьютера не стартует DB2. Если коротко: это происходит потому, что не запускается DB2 Fault Monitor Coordinator.  Настроим systemd для его запуска. Для этого в /usr/lib/systemd/system/ создал файл db2fmc.service со следующим содержимым:
[Unit]
Description=DB2V11122

[Service]
#ExecStart=/opt/ibm/db2/V11.1/bin/db2fmcd
ExecStart=/opt/ibm/db2/V11.1/bin/db2fmcd
Restart=always
KillMode=process
KillSignal=SIGHUP

[Install]
WantedBy=default.target

2) Execute the following commands as root:
sudo systemctl enable db2fmcd
sudo systemctl start db2fmcd

3. Этого мало, нужно настроить монитор сбоев:
http://www-01.ibm.com/support/docview.wss?uid=swg21209001

Включите координатор монитора сбоев, выполнив команду (один раз)
cd /opt/ibm/db2/V11.1/bin/
sudo ./db2fmcu -u -p /opt/ibm/db2/V11.1/bin/db2fmcd

или

su - db2inst1
$ db2fm -s -S

$ db2fm -s -S
Gcf module 'fault monitor' is NOT operable
Gcf module '/opt/ibm/db2/V11.1/lib64/libdb2gcf.so' state is AVAILABLE

exit
 

cd /opt/ibm/db2/V11.1/bin/
sudo  ./db2fm -i db2inst1 -f on

su - db2inst1
$ db2fm -s -S
Gcf module 'fault monitor' state is AVAILABLE
Gcf module '/opt/ibm/db2/V11.1/lib64/libdb2gcf.so' state is AVAILABLE

 


 

понедельник, 29 мая 2017 г.

Виртуальный образ kvm ubuntu 16.04.2 db2 11.1 trial server

Клонируем /db2111/Base_01 в base
a base  в db2s
 $ sudo -i
# nano /etc/network/interfaces
address 192.168.0.215
Сохранить.
# nano /etc/hosts
Изменить:
127.0.0.1       localhost
127.0.1.1       db2111
Сохранить.
# nano /etc/hostname
Изменить
db2111
Сохранить.
!!!# service hostname restart
!!!# service networking restart
# reboot
Проверить из под windows
ping db2111
# poweroff

Сохраним образ в /db2s/Base_01

Установка db2 утилитой db2_install
Зададим пользователей:

$ sudo -i
# groupadd db2iadm1
# useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
# passwd db2inst1

# groupadd db2fadm1
# useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
# passwd db2fenc1

!# dpkg --add-architecture i386
!# apt-get update
 Пакет libaio1 есть.
# apt-get install libx32stdc++6 -y
# apt-get install libpam0g:i386 -y
# apt-get install binutils -y
# apt-get install libnuma-dev -y
Пакет  libstdc++6 есть.
!!!# apt-get install libstdc++6 -y
# apt-get install libstdc++5 -y
# apt-get install ksh -y
# apt-get install rpm -y


Используем пакет v11.1.1fp1_linuxx64_universal_fixpack.tar.gz
# cd /home/user/universal
# ./db2prereqcheck -v 11.1.1.1

инсталляция выбираем SERVER
# ./db2_install
Не указан сервер SMTP уведомлений. Пока он не задан, нельзя послать уведомления адресатам, указанным в вашем списке адресатов.
#  rm -R /home/ubuntu/universal
Настройка db2 для работы с 1С

# cd /opt/ibm/db2/V11.1/instance
# ./db2icrt -u db2fenc1 db2inst1

# su - db2inst1

Конфигурируем DB2 для работы с 1С:

$ db2set DB2_WORKLOAD=1C

Запускаем экземпляр DB2:

При установке db2setup экземпляр db2 уже запущен, пропускаем

$ db2start
!!!без apt-get install libnuma-dev -y
!!!db2start: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No !!!such file or directory

Посмотреть версию DB2

$ db2ls

Посмотреть БД
$ db2ilist

$ db2licm -l
Product name:                     "DB2 Enterprise Server Edition"
License type:                     "License not registered"
Expiry date:                      "License not registered"
Product identifier:               "db2ese"
Version information:              "11.1"

$ exit

# cd /opt/ibm/db2/V11.1/instance
# ./db2iauto -on db2inst1
# reboot

$ sudo -i
 # ps -eaf|grep -i db2sysc
root      1306  1286  0 15:35 pts/0    00:00:00 grep --color=auto -i db2sysc

# su - db2inst1
$ db2start
$ exit
# ps -eaf|grep -i db2sysc
db2inst1  1784  1782  2 15:37 pts/0    00:00:00 db2sysc
root      1809  1286  0 15:37 pts/0    00:00:00 grep --color=auto -i db2sysc

Итог db2 не запускается автоматом.
DB2 AutoStart is not supported on Red Hat Enterprise Linux version 7

Вариант 1 пропускаем идем к Вариант 2.
Вариант 1. оформим автозагрузку с помощью update-rc.d в стиле System-V
update-rc.d - install and remove System-V style init script links
Для запуска воспользуемся скриптом:
# nano /etc/init.d/db2autostart
Добавим:
#! /bin/sh
# /etc/init.d/db2autostart
#
case "$1" in
  start)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2start
    ;;
  stop)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2stop
    ;;
  *)
    echo "Usage: /etc/init.d/db2autostart {start|stop}"
    exit 1
    ;;
esac
exit 0

Сохраним.
# chmod +x /etc/init.d/db2autostart
поставим в автозагрузку
# update-rc.d db2autostart defaults
warning: script 'db2autostart' missing LSB tags and overrides
Проверим
# ps -eaf|grep -i db2sysc
# /etc/init.d/db2autostart start
# ps -eaf|grep -i db2sysc 
# /etc/init.d/db2autostart stop
# reboot
$ sudo -i
# ps -eaf|grep -i db2sysc
db2inst1  1125  1123  0 15:52 ?        00:00:00 db2sysc
root      1323  1309  0 15:52 pts/0    00:00:00 grep --color=auto -i db2sysc
# reboot
работает.
$ sudo -i
# ps -eaf|grep -i db2sysc
db2inst1  1275  1242  0 11:41 ?        00:00:00 db2sysc
root      1565  1551  0 11:45 pts/0    00:00:00 grep --color=auto -i db2sysc

!!!Удаление (если использовать 2 вариант)
!!! # update-rc.d db2autostart remove
!!! # rm /etc/init.d/db2autostart -y
Конец Вариант 1.

Вариант 2. с использованием systemd:
SystemdForUpstartUsers
Шпаргалка по управлению сервисами CentOS 7 с systemd

Для запуска воспользуемся скриптом:
# nano /usr/local/bin/db2autostart.sh
Добавим:
#! /bin/sh
# /etc/init.d/db2autostart
#
case "$1" in
  start)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2start
    ;;
  stop)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2stop
    ;;
  *)
    echo "Usage: /etc/init.d/db2autostart {start|stop}"
    exit 1
    ;;
esac
exit 0
Сохраним.
# chmod +x /usr/local/bin/db2autostart.sh

# nano  /lib/systemd/system/db2autostart.service

[Unit]
Description = db2 db2autostart daemon

[Service]
Type=forking
ExecStart=/usr/local/bin/db2autostart.sh start
ExecStop =/usr/local/bin/db2autostart.sh stop

[Install]
WantedBy=multi-user.target

Сохранить.

# chmod +x /lib/systemd/system/db2autostart.service

# systemctl daemon-reload
# systemctl enable db2autostart.service
# systemctl status db2autostart.service
# ps -eaf|grep -i db2sysc
root      2849  2775  0 11:37 pts/0    00:00:00 grep --color=auto -i db2sysc
# systemctl start db2autostart.service
# ps -eaf|grep -i db2sysc
db2inst1  2864  2862  1 11:39 ?        00:00:00 db2sysc
root      2888  2775  0 11:39 pts/0    00:00:00 grep --color=auto -i db2sysc
# systemctl stop db2autostart.service
# ps -eaf|grep -i db2sysc
root      2901  2775  0 11:40 pts/0    00:00:00 grep --color=auto -i db2sysc
# systemctl start db2autostart.service
db2inst1  2913  2911  2 11:40 ?        00:00:00 db2sysc
root      2943  2775  0 11:40 pts/0    00:00:00 grep --color=auto -i db2sysc 
# reboot
Конец Вариант 2.
------------------------------------------------ 
$ sudo -i

Проверка
#  ps -eaf|grep -i db2sysc
db2inst1   694   692  0 09:41 ?        00:00:00 db2sysc
root       771   760  0 09:42 pts/4    00:00:00 grep --color=auto -i db2sysc

# apt-get install  imagemagick -y

Строка ниже срабатывает далеко не всегдаю
# apt-get install ttf-mscorefonts-installer -y
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
Дистрибутивы  в папке soft
!!!# ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so

# cd /home/user/soft/8.3.10.2252/
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd .. 
# rm -R  /home/ubuntu/8.3.10.2168
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
 Теперь создадим базу 1С на сервере DB2.
добавим пользователя usr1cv8 в группу доступа db2iadm1
# usermod -aG db2iadm1 usr1cv8
# echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
# poweroff

Сохраним образ в /db2s/Base02
Теперь создадим базу.


.

Запуск машины на хосте
 # virsh start db2s
Домен db2s запущен

Запущенные машины:
 # virsh list

Выключение машины
# virsh shutdown db2s
. 

 

воскресенье, 28 мая 2017 г.

Виртуальный образ vbx ubuntu 16.04.2 db2 11.1

Без файла подкачи!
Предустановки 4 ядра, 8 Гб RAM,  Ubuntu 16.04.2
При инсталляции  установить ssh, samba
Название db2
 $ sudo -i
# apt update -y
# apt upgrade -y
# apt install mc htop -y
# reboot
$ sudo -i
How To Add Swap Space on Ubuntu 16.04

Создание:
# fallocate -l 8G /swapfile
Проверка:
# ls -lh /swapfile
-rw-r--r-- 1 root root 8,0G май 13 13:14 /swapfile
Подключение:
# chmod 600 /swapfile
Проверка:
# ls -lh /swapfile
-rw------- 1 root root 8,0G май 13 13:14 /swapfile
# mkswap /swapfile
Setting up swapspace version 1, size = 8 GiB (8589930496 bytes)
без метки, UUID=870205f2-31db-4977-a89e-f3e283ff91f9

Старт:
# swapon /swapfile
Посмотрим:
# swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   8G   0B   -1
# free -h
              total        used        free      shared  buff/cache   available
Память:        7,8G        524M        5,4G         56M        1,9G        7,0G
Подкачка:        8,0G          0B        8,0G

Сделать перманентным:

# cp /etc/fstab /etc/fstab.bak
# echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Посмотреть:
# nano /etc/fstab
В конце файла:
/swapfile none swap sw 0 0
# cat /proc/sys/vm/swappiness
60
По умолчанию установлено значение 60. Если это значение ближе к 100, система будет пытаться поместить в подкачку больше данных и сберечь память, при значениях близких к нулю, ядро не переносит данные на диск, если в этом нет крайней необходимости.

 Другой параметр, который влияет на количество используемой памяти - это vfs_cache_pressure. Он указывает системе какое время нужно хранить открытые файлы в кэше оперативной памяти. Значение 100 заставляет систему удалять такие файлы очень быстро, 0 - держать их в памяти как можно дольше. Посмотрите текущее состояние:

# cat /proc/sys/vm/vfs_cache_pressure
100


 
# nano /etc/sysctl.conf
В конец
vm.swappiness=0
vm.vfs_cache_pressure = 100
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
Применить сразу:
# sysctl -p

Отключим службу ondemand
(для разгона cpu)

# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
# reboot

$ sudo -i
Проверки:
# cat /proc/cpuinfo | grep MHz
# hdparm -Tt /dev/sda1
# free -h
# cat /proc/sys/vm/swappiness
# cat /proc/sys/vm/vfs_cache_pressure
----------------------------------------------------------------
Установка db2 утилитой db2_install
Зададим пользователей:

$ sudo -i
# groupadd db2iadm1
# useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
# passwd db2inst1

# groupadd db2fadm1
# useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
# passwd db2fenc1

# dpkg --add-architecture i386
# apt-get update
 Пакет libaio1 есть.
# apt-get install libx32stdc++6 -y
# apt-get install libpam0g:i386 -y
# apt-get install binutils -y
# apt-get install libnuma-dev -y

# cd /home/user/expc
# ./db2prereqcheck -v 11.1.0.0
инсталляция
# ./db2_install
Не указан сервер SMTP уведомлений. Пока он не задан, нельзя послать уведомления адресатам, указанным в вашем списке адресатов.
#  rm -R /home/ubuntu/expc
Настройка db2 для работы с 1С

# cd /opt/ibm/db2/V11.1/instance
# ./db2icrt -u db2fenc1 db2inst1

# su - db2inst1

Конфигурируем DB2 для работы с 1С:

$ db2set DB2_WORKLOAD=1C
$  db2licm -l

Запускаем экземпляр DB2:

При установке db2setup экземпляр db2 уже запущен, пропускаем

$ db2start
!!!без apt-get install libnuma-dev -y
!!!db2start: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No !!!such file or directory

Посмотреть версию DB2

$ db2ls

Посмотреть БД
$ db2ilist

$ exit
# cd /opt/ibm/db2/V11.1/instance
# ./db2iauto -on db2inst1
# ps -eaf|grep -i db2sysc
db2inst1  6753  6751  0 15:33 pts/0    00:00:00 db2sysc
root      7294  1286  0 15:35 pts/0    00:00:00 grep --color=auto -i db2sysc

# su - db2inst1
$ db2stop
$ /d
# reboot

$ sudo -i
 # ps -eaf|grep -i db2sysc
root      1289  1274  0 15:39 pts/0    00:00:00 grep --color=auto -i db2sysc

Т.е. не происходит автозагрузка db2 instance после перезагрузки системы
Autostart of DB2 instance on reboot does not work on RHEL6/CentOS systems  

Для запуска воспользуемся скриптом:
# nano /etc/init.d/db2autostart
Добавим:
#! /bin/sh
# /etc/init.d/db2autostart
#
case "$1" in
  start)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2start
    ;;
  stop)
    sudo -u db2inst1 /home/db2inst1/sqllib/adm/db2stop
    ;;
  *)
    echo "Usage: /etc/init.d/db2autostart {start|stop}"
    exit 1
    ;;
esac
exit 0

Сохраним.
# chmod +x /etc/init.d/db2autostart

Вариант 1. оформим автозагрузку с помощью update-rc.d в стиле System-V
update-rc.d - install and remove System-V style init script links
поставим в автозагрузку

# update-rc.d db2autostart defaults
warning: script 'db2autostart' missing LSB tags and overrides
Проверим
# ps -eaf|grep -i db2sysc
# /etc/init.d/db2autostart start
# ps -eaf|grep -i db2sysc 
# /etc/init.d/db2autostart stop
# reboot
$ sudo -i
# ps -eaf|grep -i db2sysc
db2inst1  1125  1123  0 15:52 ?        00:00:00 db2sysc
root      1323  1309  0 15:52 pts/0    00:00:00 grep --color=auto -i db2sysc
# reboot
работает.

Удаление (если использовать 2 вариант)
!!! # update-rc.d db2autostart remove
!!! # rm /etc/init.d/db2autostart -y

Вариант 2. с использованием systemd:
SystemdForUpstartUsers
Шпаргалка по управлению сервисами CentOS 7 с systemd

# nano  /lib/systemd/system/db2autostart.service

[Unit]
Description = db2 db2autostart daemon

[Service]
Type=forking
ExecStart=/etc/init.d/db2autostart start
ExecStop =/etc/init.d/db2autostart stop

[Install]
WantedBy=multi-user.target

Сохранить.

# chmod +x /lib/systemd/system/db2autostart.service

# systemctl daemon-reload
# systemctl enable db2autostart.service  
# systemctl status db2autostart.service 
# ps -eaf|grep -i db2sysc
# systemctl stop db2autostart.service
# ps -eaf|grep -i db2sysc
# systemctl start db2autostart.service
# systemctl status db2autostart.service

$ sudo -i
# ps -eaf|grep -i db2sysc
db2inst1   754   752  0 15:42 pts/4    00:00:00 db2sysc
root       779   272  0 15:43 pts/4    00:00:00 grep --color=auto -i db2sysc

# apt-get install  imagemagick -y
Строка ниже срабатывает далеко не всегдаю
# apt-get install ttf-mscorefonts-installer -y
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
Дистрибутивы  в папке soft
!!!# ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so

# cd /home/user/soft/8.3.10.2252/
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd .. 
# rm -R  /home/ubuntu/8.3.10.2168
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
 Теперь создадим базу 1С на сервере DB2.
добавим пользователя usr1cv8 в группу доступа db2iadm1
# usermod -aG db2iadm1 usr1cv8
# echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
# poweroff 

Сохраняем db2.ova .
------------------------------------------------------------------------------

Действия после восстановления виртуальной машины из образа db2.ova

в VirtualBox 1. Импортировать файл db2.ova 2. Перед запуском изменить настройки сети перевыбрать сетевой мост и имя адаптера.



.


3. Система -> материнская плата установить 16 GB.
4. Система -> процессор установить 8 ядер.
5. Запустить виртуальную машину.
6. Через консоль настроить сеть:
$ sudo nano /etc/network/interfaces

Пример:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

#source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#auto enp0s3
#iface enp0s3 inet dhcp

iface enp0s3 inet static
address 192.168.0.77
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1 8.8.8.8
auto enp0s3
 
Сохранить. 
Перезагрузка 
$ sudo reboot
 
 
Кластер 1с не создан. 
После перезагрузки
Подключение 1с
 
 
Тест Гилёва
 
 Многопоточный тест производительности 1с - результаты
.