Меню Рубрики

Установка ubuntu для db2

Установка и настройка DB2 под Linux для работы с 1С:Предприятием 8.1/8.2


Краткое содержание:

В статье даны подробные инструкции по установке и конфигурированию IBM DB2 при развертывании на операционной системе Linux для работы с 1С:Предприятием 8.1/8.2

Общие рекомендации:


  • Если возникли какие-то вопросы, загляните в документацию, вероятней всего там вы найдете ответ на свой вопрос. Особенно это актуально, если продукт для вас новый, или вы начинаете работать с новой версией продукта.
  • При возникновении проблем имеет смысл анализировать логи (как лог-файлы DB2 , так и технологический журнал 1С), т.к. они содержат массу полезной информации: например, сообщения об ошибках или текст исполняемого запроса.
  • Подавляющее большинство проблем можно решить при помощи логов, документации и поиска (особенно по кодам ошибок). Например, посмотрев код ошибки в лог-файле, и сделав поиск в документации по этому коду, вы найдете рекомендации по устранению ошибки.
  • Если хочется побыстрей что-то настроить в операционной системе Linux, попробуйте открыть существующий конфигурационный файл. Как правило, там много комментариев и большинство параметров уже прописаны. Или посмотрите, нет ли в каталоге файла xxx.sample, который предоставляется в качестве примера.
  • При работе с DB2 не надо бояться командной строки. В ней можно в несколько раз быстрей сделать все то же самое, что и в графическом интерфейсе.

Инструкция по установке DB2 под Linux

Все действия выполняются под пользователем root, если не сказано иное.

Сначала необходимо настроить параметры ядра Linux для работы DB2. Согласно документации для этого необходимо отредактировать /etc/sysctl.conf, чтобы он содержал следующие строки:

kernel . msgmax = 65535
kernel . msgmnb = 65535

Также немаловажно сконфигурировать параметр kernel . shmmax , который отвечает за максимальный размер сегмента выделяемой памяти. Практика показала, что для приложений на базе платформы 1С:Предприятие критичным является размер оперативной памяти, использьзуемый в качестве кэша базы данных, т.е. занимаемый буферпулами. (Об устройстве и табличных пространств и буферпулов см. статью на developerWorks. Также рекомендуется прочитать статью о модели памяти DB2). В свою очередь, рост буферпулов приводит к тому, что при перезапуске базы данных DB2 для размещения буферпулов может запрашивать сегмент памяти большого объема, что значительно превосходит параметры конфигурации, указанные в документации.

# Параметры конфигурации ядра, рекомендованные в документации

# Это значение для Linux 64 — bit
kernel . shmmax = 1073741824
# Это значение для Linux 32 — bit
kernel . shmmax = 268435456

Рекомендуется установить значение максимального размера сегмента памяти равное 2Гб, т.е.

kernel . shmmax =2147483648

Для коммерческих редакций DB2 возможно его придется устанавливать даже в большую величину. Более подбробно об этом рассказывается в другой статье .

После редактирования файла необходимо запустить

Внесенные изменения вступили в силу.

Приведенные выше значения — рекомендованны в документации по DB2. Опыт инсталляций 1С на DB2 показал, что размер сегмента памяти, который может запрашиваться разово, может превосходить рекомендованные значения.

Рекомендации, независимо от разрядности операционной системы, выставить максимальный размер сегмента памяти равный 2Гб, т.е.следующие

kernel . shmmax =2147483648

Данные настройки были проверены для следующих версий Linux:

  • Ubuntu 9.0
  • FedoraCore 6 x86
  • FedoraCore 6 x86_64
  • RedHat 4 PPC
  • RedHat 4 s390x (IBM System z — мэйнфрейм)

После этого можно приступать к установке DB2.

Прежде чем начать инсталляцию, убедитесь, что у вас установлены пакеты обратной совместимости для libstdc++. В частности, для FC6 необходимы пакеты

compat-libstdc++-33-3.2.3-61
compat-libstdc++-296-2.96-138

Можно также при установке Linux для «разработчика» выбрать поддержку старых программ, в этот раздел входят указанные пакеты.

Берем архив с дистрибутивом DB2 и распаковываем его. Например :

tar xfz db 2 exc_ 912 _ 1 Cspecial 17705 _LNX_x 86 _ 64 . tar . gz
cd exp/disk 1

Принимаем по-умолчанию каталог установки (/opt/ibm/db2/V9.1)

После чего ставим сам продукт (пишем в строке вопроса: EXP — т.е. DB2 Express)

Создаем пользователей, необходимых для работы DB2

useradd das
useradd db 2 inst
useradd db 2 fenc

Внимание! При использовании Ubuntu по-умолчанию команда useradd не создает домашний каталог пользователя. Необходимо в командной строке указать ключ -m, чтобы этот каталог создавался автоматически:

useradd -m das
useradd -m db 2 inst
useradd -m db 2 fenc cd /opt/ibm/db 2 /V 9 . 1 /instance

Создаем DB2 Administration Server (DAS).

Сервер автоматически запустится от имени пользователя das

Создаем экземпляр DB2, настроенный на работу через порт 50000 (порт DB2 по-умолчанию)

. /db 2 icrt — u db 2 fenc — p 50000 db 2 inst

su — db 2 inst

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

db 2 set DB 2 _WORKLOAD = 1 C

Возвращаемся в root через Ctrl-D (logout)

Если необходимо, чтобы DB2 запускалась автоматчески при старте системы, выполняем команду:

/opt/ibm/db 2 /V 9 . 1 /instance/db 2 iauto — on db 2 inst

Установка и конфигурирование сервера 1С:Предприятия

Для начала необходимо установить 1С:Предприятие:

После этого необходимо добавить пользователя usr1cv81 в группу доступа, которая является основной для запущенного экземпляра DB2. Основную группу доступа можно получить при помощи команды:

При этом будет получена, например, следующая информация:

u >= 501 ( db 2 inst ) g >= 501 ( db 2 inst ) groups = 501 ( db 2 inst ) , 500 ( das )

Это означает, что основной группой доступа для запущенного экземпляра DB2 является группа db2inst с идентификатором 501.

Добавляем пользователя usr1cv81 в эту группу:

usermod — G 501 usr 1 cv 81

На этом конфигурирование закончено.

Запуск 1С:Предприятия

После того, как вы установили сервер 1С:Предприятия под Linux, при каждом перезапуске системы он будет стартовать автоматически. Но сразу после инсталляции сервер еще не запущен. При запуске системы автоматически запускается скрипт /etc/rc.d/init.d/srv1cv81 с параметром start, т.е. выполняется команда

Выполнив данную команду (от имени пользователя root), получаем примерно следующее:

Starting 1C:Enterprise 8.1 server: [ OK ]

Сервер запущен, и можно приступать к работе.

Однако при попытке создания базы данных в DB2 появляется следующая ошибка:

Получается, что сервер 1С:Предприятия не видит динамических библиотек DB2 и нам надо их как-то добавить в пути поиска.

На этой проблеме остановимся более подробно, нежели просто опишем решение.

Есть 2 варианта решения данной задачи.

Вариант 1. Использовать файл /etc/ld.so.conf

Вариант 2. Использовать переменную среды LD_LIBRARY_PATH (в подразделе Быстрая настройка используется именно этот вариант)

Если хочетя в деталях понять как что работает, можете изучить детальное рассмотрение вариантов, приведенное ниже.

Если не хотите забивать себе голову подробностями, то подраздел «Быстрая настройка» это ваше все 🙂

Быстрая настройка

Все параметры настройки среды для работы с DB2, в т.ч. и настройки LD_LIBRARY_PATH прописываются для каждого инстанса автоматически в файле

db2inst/sqllib/db2profile, который и используется для настройки среды.

Все, что вам надо сделать, чтобы настроить сервер 1С на тот или иной инстанс, добавить строку

После чего надо перезапустить сервер 1С.

Таким образом, если у вас в системе (например, тестовой) есть 2 инстанса DB2, то перенастройка сервера 1С на тот или иной инстанс заключается в подключении соотвествующего файла db2profile, в профиль пользователя usr1cv81.

Подсказка! Проще всего будет, если в качестве имени пользователя инстанса DB2 вы укажите не ‘db2inst’, a ‘usr1cv81’. Почему? Догадайтесь сами! 🙂

А теперь более подробное рассмотрение вариантов.

Вариант 1.

Файл /etc/ld.so.conf служит для указания динамическому линковщику путей поиска динамических библиотек. Посмотрим на его содержимое.

]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/ofed/lib64
[root@rhel41c

]#
Видим, что помимо самого ld.so.conf пути могут быть прописаны в файлах c расширением .conf в каталоге /etc/ld.so.conf.d/

Нам надо добавить к путям поиска два каталога (один, в случае 32 битной установки). Занесем эти каталоги в новый файл /etc/ld.so.conf.d/db2.conf и сохраним его

Для того, чтобы динамический линковщик обновил пути поиска, необходимо выполнить команду ldconfig .

Теперь достаточно перезапустить сервер 1С:Предприятия и убедиться, что данный подход работает.

Останавливаем сервер, используя уже известный нам скрипт

]# /etc/rc.d/init.d/srv1cv81 stop
Stopping 1C:Enterprise 8.1 server: ragent [ OK ][root@rhel41c

И запускаем заново. Хотя можно было бы воспользоваться и командой скрипта restart

]# /etc/rc.d/init.d/srv1cv81 restart
Stopping 1C:Enterprise 8.1 server: ragent [ OK ]Starting 1C:Enterprise 8.1 server: [ OK ][root@rhel41c

Проверяем, как функционирует сервер 1С:Предприятия.

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

Давайте вернем конфигурацию системы в исходное положение (удалим /etc/ld.so.conf.d/db2.conf и запустим ldconfig, чтобы исключить пути к библиотекам DB2 из глобального поиска) и рассмотрим вариант 2.

Вариант 2.

Задание путей поиска динамических библиотек через /etc/ld.so.conf имеет один недостаток — пути поиска являются глобальными. Например, если у вас установлены DB2 9.1 и DB2 9.5, то настроить два экземпляра сервера 1С:Предприятия для работы с разными версиями DB2 через /et/ld.so.conf не получится.

Если же воспользоваться переменной окружения LD_LIBRARY_PATH, то в данном случае проблем с конфигурированием не будет. Как же добавить необходимые значения переменной LD_LIBRARY_PATH?

Казалось бы, что проще всего добавить строчку

LD_LIBRARY_PATH= /opt/ibm/db2/V9.1/lib32: /opt/ibm/db2/V9.1/lib64

в скрипт запуска сервера 1С /etc/rc.d/init.d/srv1cv81

Однако этот способ не проходит, поскольку при запуске сервера сбрасываются все настройки перменных окружения.

Единственный правильный способ установки LD_LIBRARY_PATH — это добавление в профайл пользователя, т.е. скрипт .bash_profile, расположенный в домашнем каталоге пользователя usr1cv81 (пользователя, от имени которого запускается сервер 1С:Предприятие).

LD_LIBRARY_PATH= /opt/ibm/db2/V9.1/lib32 : /opt/ibm/db2/V9.1/lib64

Перезапускаем сервер 1С. Теперь все готово к работе.

источник

1С и Linux

Пишу для себя, чтобы не забыть как делал. 95 % рабочее. На комментарии отвечаю, когда увижу.

четверг, 16 марта 2017 г.

Установка DB2 Express C v11.1 Ubuntu 14.04.5

Решил еще раз описать установку на VirtualBox, хотя уже делал, так как на Ubuntu 16.04.2, что то не завелось
Установка DB2 Express C v11.1 Ubuntu 14.04.5

Устанавливаем на VirtualBox Ubuntu server 14.04.5 (с ядром 4.4).
samba, open-ssh.
Имя db2-14-11
Имя сервера db2-14-11 .
Подключаемся MobaXterm.
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 4.4.0-31-generic x86_64)
$ sudo -i
Проверка локали
# locale
LANG=ru_RU.UTF-8
.
# apt-get update
# apt-get upgrade
# apt-get install mc htop
# poweroff

Создаем виртуальный образ db2-14-11.ova

Подключаемся MobaXterm.
Установка 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

Пакет libaio1 есть.
# apt-get install libx32stdc++6
# apt-get install libpam0g:i386
# apt-get install binutils

# cd /home/user/
# mkdir /home/user/soft
# chown -R user: /home/user/soft

Загрузить с помощью MobaXterm sftp в /home/user/soft

# cd /home/user/soft
# tar xvzf v11.1_linuxx64_expc.tar.gz
# cd expc
# ./db2prereqcheck -v 11.1.0.0

инсталляция
# ./db2_install
# cd /opt/ibm/db2/V11.1/instance
# ./db2icrt -u db2fenc1 db2inst1
# ./db2iauto -on db2inst1

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

Сообщение об успешности:
SQL1063N DB2START processing was successful.

Последние команды (до exit)

Если всё как на картинке, установка db2 завершена.

Создаем виртуальный образ db2-14-11_1.ova

Перейдем к установке сервера «1С:Предприятие 8.3»
Подключаемся MobaXterm.
$ sudo -i

# apt-get install ttf-mscorefonts-installer
# apt-get install imagemagick

Дистрибутивы в папке soft
# mkdir /home/user/soft/8.3.9.2170
# chown -R user:user /home/user/soft
с помощью MobaXterm sftp
# cd /home/user/soft/8.3.9.2170
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# 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

Starting 1C:Enterprise 8.3 server: OK

Создадим базу (из 1с 8.3.9.2170 под windows)

источник

1С и Linux

Пишу для себя, чтобы не забыть как делал. 95 % рабочее. На комментарии отвечаю, когда увижу.

пятница, 2 декабря 2016 г.

Установка db2 v9.7fp6 ubuntu 12.04.5

# nano /etc/sysctl.conf
Модификация параметров kernel для DB2

Сохранить
# sysctl -p
# reboot

# ./db2prereqcheck
WARNING:
The 32-bit library file libpam.so is not found on the system.

если ошибка отсутствия библиотеки libpam.so.0
посмотрим есть ли она в системе
# find /lib -name «*libpam*» -print
# find / | grep libpam.so
root@ub-12d:/home/user/expc# find /lib -name «*libpam*» -print
/lib/x86_64-linux-gnu/libpam_misc.so.0

А нам нужна 32 битная установим
# apt-get install libpam0g:i386
этого мало сделаем ссылку
# ln -s /lib/i386-linux-gnu/libpam.so.0 /lib/libpam.so
(удалить rm /lib/libpam.so.0)
# ./db2prereqcheck
такое сообщение
WARNING:
DBT3534W The db2prereqcheck utility determined that ASLR is set to ON and that this could cause issues with some tools.

as root
# echo 0 > /proc/sys/kernel/randomize_va_space
as sudo user
$ sudo sh -c «echo 0 > /proc/sys/kernel/randomize_va_space»

Для установки ./db2setup нужен языковой пакет
v9.7fp6_linuxx64_nlpack.tar.gz на сайте 1c.ru его нет
Будем устанавливать вручную
https://www.ibm.com/support/knowledgece nter/en/SSEPGG_9.5.0/com.ibm.db2.luw.qb.s erver.doc/doc/t0007067.html

Создадим группы
# groupadd db2iadm1
# groupadd db2fadm1
# groupadd dasadm1

Создадим пользователей
# useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
# useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
# useradd -g dasadm1 -m -d /home/dasusr1 dasusr1

Зададим пароли
# passwd db2inst1
# passwd db2fenc1
# passwd dasusr1

Создаем DB2 Administration Server (DAS):
# cd /opt/ibm/db2/V9.7/instance/
# ./dascrt dasusr1

Создадим экземпляр DB2, настроенный на работу
через порт 50000 (порт DB2 по-умолчанию):

# ./db2icrt -u db2fenc1 -p 50000 db2inst1

Зайдём под пользователем db2inst1:

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

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

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

Возвращаемся в root через Ctrl-D (logout) или так:
$ exit

Настраиваем автозапуск сервера:

$ sudo su
# apt-get install ttf-mscorefonts-installer
# apt-get install imagemagick
С помощью winscp upload /home/user/8.3.9.1818
# cd 8.3.9.1818
# tar xvzf client.deb64.tar.gz
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль
# passwd usr1cv8
Запустим сервер
# service srv1cv83 start
Для работы файловой версии нужно установить hasp
С помощью winscp upload /home/user/hasp_64
# cd /home/user/hasp_64
# dpkg -i haspd_*
# apt-get -f install

Проверяем работу модуля
Если на VBOX не забыть установить фильтр
и подключить, а также выключить и включить,
передернуть по питанию

# service haspd restart
# service haspd status

Если вставляете HASP уже после загрузки сервера, перезапустите демон haspd
# sudo service haspd restart

Для проверки создать файловую базу в конфигураторе 1с и открыть в предприятии

Теперь создадим базу 1С на сервере DB2.

добавим пользователя usr1cv8 в группу доступа db2iadm1

# usermod -aG db2iadm1 usr1cv8

# echo «. /home/db2inst1/sqllib/db2profile» >> /home/usr1cv8/.profile

———————
Кластер серверов: localhost
Параметры информационной базы:
Имя: demo1
Сервер баз данных: localhost
Тип СУБД: IBM DB2
База данных: db2inst1:50000
Пользователь сервера БД: usr1cv8
Пароль пользователя: ****
Создать базу в случае отсутствия да
Блокировка реглам.заданий да

База создана можно загружать выгрузку
или загружать средствами db2

источник

Инсталляция IBM DB2 под Linux

Ставил сборку предоставляемую IBM, выложенную на сайте users.v8.1c.ru. Но насколько понимаю она ничем не отличается от оригинала
Сначало я попытался поставить ручками как это прописано в инструкции от 1С (см. инструкцию по установке сервера 1С 8.1). Честно скажу потерпел неудачу. Сервер у меня так и не стартовал. Потом на сайте IBM я прочитал о графическом инсталяторе. В дистрибутиве есть файл./install запускаем и все запросы идут в графическом режиме. По факту я только соглашался и все… После этого все заработало. Вот инструкция от Аристархова Андрея, представителя IBM в 1С, ее я и руковоствовался при установке, отличие только в том, что я воспользовался графическим инсталятором:

Общие рекомендации:
Если возникли какие-то вопросы, загляните в документацию, вероятней всего там вы найдете ответ на свой вопрос. Особенно это актуально, если продукт для вас новый, или вы начинаете работать с новой версией продукта.
При возникновении проблем имеет смысл анализировать логи (как лог-файлы DB2, так и технологический журнал 1С), т.к. они содержат массу полезной информации: например, сообщения об ошибках или текст исполняемого запроса.
Подавляющее большинство проблем можно решить при помощи логов, документации и поиска (особенно по кодам ошибок). Например, посмотрев код ошибки в лог-файле, и сделав поиск в документации по этому коду, вы найдете рекомендации по устранению ошибки.
Если хочется побыстрей что-то настроить в операционной системе Linux, попробуйте открыть существующий конфигурационный файл. Как правило, там много комментариев и большинство параметров уже прописаны. Или посмотрите, нет ли в каталоге файла xxx.sample, который предоставляется в качестве примера.
При работе с DB2 не надо бояться командной строки. В ней можно в несколько раз быстрей сделать все то же самое, что и в графическом интерфейсе.
Инструкция по установке DB2 под Linux

Все действия выполняются под пользователем root, если не сказано иное.

Сначала необходимо настроить параметры ядра Linux для работы DB2. Согласно документации для этого необходимо отредактировать /etc/sysctl.conf, чтобы он содержал следующие строки:

  1. Это значение для Linux 64-bit
    kernel.shmmax=1073741824
    # Это значение для Linux 32-bit
    kernel.shmmax=268435456
    # А это верно для обоих вариантов
    kernel.msgmax=65535
    kernel.msgmnb=65535

После редактирования файла необходимо запустить

Внесенные изменения вступили в силу.

Подробная информация о назначении этих параметров

Данные настройки были проверены для следующих версий Linux:
FedoraCore 6×86
FedoraCore 6×86_64
RedHat 4 PPC
RedHat 4 s390x (IBM System z — мэйнфрейм)
После этого можно приступать к установке DB2.

Прежде чем начать инсталляцию, убедитесь, что у вас установлены пакеты обратной совместимости для libstdc++. В частности, для FC6 необходимы пакеты

Можно также при установке Linux для «разработчика» выбрать поддержку старых программ, в этот раздел входят указанные пакеты.

Берем архив с дистрибутивом DB2 и распаковываем его. Например:

tar xfz db2exc_912_1Cspecial17705_LNX_x86_64.tar.gz
cd exp/disk1

Принимаем по-умолчанию каталог установки (/opt/ibm/db2/V9.1)

После чего ставим сам продукт (пишем в строке вопроса: EXP — т.е. DB2 Express)

Создаем пользователей, необходимых для работы DB2

useradd das
useradd db2inst
useradd db2fenc

Создаем DB2 Administration Server (DAS).

Сервер автоматически запустится от имени пользователя das

Создаем экземпляр DB2, настроенный на работу через порт 50000 (порт DB2 по-умолчанию)

./db2icrt -u db2fenc -p 50000 db2inst

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

Возвращаемся в root через Ctrl-D (logout)

Если необходимо, чтобы DB2 запускалась автоматчески при старте системы, выполняем команду:

/opt/ibm/db2/V9.1/instance/db2iauto -on db2inst

Установка и конфигурирование сервера 1С:Предприятия

источник

Читайте также:  Установка подогрева на иномарки

Добавить комментарий