DB2: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
м (беглые вычитка, довикификация и категорирование)
 
Строка 8: Строка 8:
[[Файл:Снимок экрана 2022-05-24 21-40-42.png|мини|А таким должен быть финал установки]]
[[Файл:Снимок экрана 2022-05-24 21-40-42.png|мини|А таким должен быть финал установки]]


=== Входные данные: ===
=== Входные данные ===
# Версия IBM DB2 11.5 для Linux, автор использовал архив '''v11.5.5_linuxx64_server_dec.tar.gz''' (для партнёров), подойдёт и коммерческий архив, только после установки нужно будет поставить лицензию на софт.
# Версия IBM DB2 11.5 для Linux, автор использовал архив '''v11.5.5_linuxx64_server_dec.tar.gz''' (для партнёров), подойдёт и коммерческий архив, только после установки нужно будет поставить лицензию на софт.
# Альт 10 платформы, автор использовал серверный вариант стартового набора. Проверял работу на виртуальной машине KVM и контейнере LXC - оба варианта рабочие.
# Альт 10 платформы, автор использовал серверный вариант стартового набора. Проверял работу на виртуальной машине KVM и контейнере LXC - оба варианта рабочие.
Строка 23: Строка 23:
# SUSE
# SUSE


=== Распаковка архива: ===
=== Распаковка архива ===
<source lang=bash>
<source lang=bash>
tar -xzvf v11.5.5_linuxx64_server_dec.tar.gz
tar -xzvf v11.5.5_linuxx64_server_dec.tar.gz
Строка 30: Строка 30:
Отправной точкой установки является проверка компонент операционной системы перед установкой - утилита db2prereqcheck.
Отправной точкой установки является проверка компонент операционной системы перед установкой - утилита db2prereqcheck.


Если ее запустить на дистрибутиве не из привилегированного списка дистрибутивов, например fedora (чем не rhel) или debian (чем не ubuntu), результат будет одинаков:
Если ее запустить на дистрибутиве не из привилегированного списка дистрибутивов, например, fedora (чем не rhel) или debian (чем не ubuntu), результат будет одинаков:


<source lang=bash>
<source lang=bash>
Строка 62: Строка 62:


=== Установка необходимых пакетов ===
=== Установка необходимых пакетов ===
После установки Альт Линукс - надо обновить компоненты системы
После установки ОС Альт надо обновить компоненты системы
<source lang=bash>
<source lang=bash>
apt-get update
apt-get update
Строка 68: Строка 68:
</source>
</source>


Для работы на Альт Линукс, автор поставил следующие компоненты:
Автор поставил следующие компоненты:


Консольные утилиты
Консольные утилиты
Строка 74: Строка 74:
apt-get install mc net-tools nano
apt-get install mc net-tools nano
</source>
</source>
для X авторизации (чтобы запускать GUI программы через ssh, без установки X сервера (xinit не ставил)):
для авторизации в X11 (чтобы запускать GUI программы через ssh без установки X-сервера (xinit не ставил)):
<source lang=bash>
<source lang=bash>
apt-get install xauth xterm
apt-get install xauth xterm
Строка 111: Строка 111:


=== Подготовка к установке <ref>Все операции по установке автор делал от '''root'''</ref> ===
=== Подготовка к установке <ref>Все операции по установке автор делал от '''root'''</ref> ===
Теперь подключиться с X авторизацией, ключ -YC, не XC, иначе клавиатура в GUI работать не будет, особенности Альт Линукс.
Теперь подключиться с X-авторизацией, ключ -YC (не -XC, иначе клавиатура в GUI работать не будет, особенности текущих версий openssh).
<source lang=bash>
<source lang=bash>
ssh -YC admin@10.10.10.111
ssh -YC admin@10.10.10.111
</source>
</source>
Запуск xterm, если запустился, значит GUI установщик imb db2 тоже будет работать.
Запуск xterm; если запустился, значит, GUI-установщик ibm db2 тоже будет работать.
<source lang=bash>
<source lang=bash>
xterm
xterm
Строка 166: Строка 166:
А лог файл не должен содержать ошибок, кроме "TSAMP" (нужен для кластера).
А лог файл не должен содержать ошибок, кроме "TSAMP" (нужен для кластера).


Перезагрузиться, войти в систему пользователем '''db2inst1''' и убедиться, что экземпляр БД заработал
Перезагрузиться, войти в систему пользователем '''db2inst1''' и убедиться, что экземпляр БД заработал:
<source lang=bash>
<source lang=bash>
db2start
db2start
Строка 182: Строка 182:
=== Итог ===
=== Итог ===
На этом всё, дальше работать с БД, как на официально поддерживаемых дистрибутивах Linux, при выявлении ошибок в работе - найти недостающие библиотеки и установить их.
На этом всё, дальше работать с БД, как на официально поддерживаемых дистрибутивах Linux, при выявлении ошибок в работе - найти недостающие библиотеки и установить их.
[[Категория:HOWTO]]

Текущая версия от 18:17, 25 мая 2022

DB2 — семейство программных продуктов в области управления информацией компании IBM.

Логотип Википедии
В Википедии есть обзорная статья по теме « DB2».

Основная статья на форуме:

Установка ibm db2 v.11.5 на Альт Линукс 10

Начало установки
А таким должен быть финал установки

Входные данные

  1. Версия IBM DB2 11.5 для Linux, автор использовал архив v11.5.5_linuxx64_server_dec.tar.gz (для партнёров), подойдёт и коммерческий архив, только после установки нужно будет поставить лицензию на софт.
  2. Альт 10 платформы, автор использовал серверный вариант стартового набора. Проверял работу на виртуальной машине KVM и контейнере LXC - оба варианта рабочие.
  3. Архитектура процессора x86_64, для других архитектур перечень библиотек может отличаться, например автор для работы на POWER PC/Ubuntu ставил дополнительные библиотеки к тем, что нужны для Ubuntu на x86_64.
  4. IBM DB2 исторически имеет ограничения в именах(справедливо для username/hostname), имена пользователей и хоста не должны превышать 8 символов.
  5. Установка выполняется под корневым пользователем (root).
  6. Статья имеет рекомендательный характер, т.к. доскональной проверки работы IBM DB2 на Альт Линукс после установки не проводилось, возможна частичная неработоспособность отдельных компонент, результатом действий будет возможность работать с экземпляром БД.
  7. Автор не претендует на истину в последней инстанции и может ошибаться, он такой же человек, как и все. Устанавливая IBM DB2 на Альт Линукс вы принимаете все возможные риски на себя.

Изначально (официально) IBM гарантирует работоспособность DB2 на следующих дистрибутивах Linux:

  1. Red Hat
  2. Ubuntu
  3. SUSE

Распаковка архива

tar -xzvf v11.5.5_linuxx64_server_dec.tar.gz

Отправной точкой установки является проверка компонент операционной системы перед установкой - утилита db2prereqcheck.

Если ее запустить на дистрибутиве не из привилегированного списка дистрибутивов, например, fedora (чем не rhel) или debian (чем не ubuntu), результат будет одинаков:

# ./db2prereqcheck - l
=========================================================
Sun May 15 01:18:18 2022
Checking prerequisites for DB2 installation. Version "11.5.5.0". Operating system "Linux"
Validating "Linux distribution " ...
Segmentation fault

Это значит, что ваш дистрибутив Linux официально не поддерживается IBM для работы DB2.

Для примера, та же команда, выполненная на неподготовленной для IBM DB2 openSUSE выдаст перечень несоответствий:

#./db2prereqcheck -l
Несоответствие требованиям для базы данных DB2 "Server" . Версия: "11.5.5.0".
Сводка невыполненных предварительных требований в текущей системе:
DBT3514W Утилите db2prereqcheck не удалось найти следующий файл 32-битной библиотеки: "/lib/libpam.so*".
DBT3514W Утилите db2prereqcheck не удалось найти следующий файл 32-битной библиотеки: "libstdc++.so.6".
sh: -c: строка 0: синтаксическая ошибка рядом с неожиданным маркером «(»
sh: -c: строка 0: `rpm -q --qf "%{NAME}\n%{VERSION}\n%{RELEASE}\n" -l (null) 2>&1 > /tmp/db2prereqcheck.14479'
Несоответствие требованиям для базы данных DB2 "Server" с возможностью pureScale . Версия: "11.5.5.0".
Сводка невыполненных предварительных требований в текущей системе:
DBT3613E Утилите db2prereqcheck не удалось проверить предварительные условия для TSA. Убедитесь, что компьютер соответствует предварительным условия
DBT3507E DBT3507E Утилите db2prereqcheck не удалось найти следующий пакет или файл: "kernel-source".
DBT3507E DBT3507E Утилите db2prereqcheck не удалось найти следующий пакет или файл: "".
DBT3507E DBT3507E Утилите db2prereqcheck не удалось найти следующий пакет или файл: "gcc-c++".
DBT3507E DBT3507E Утилите db2prereqcheck не удалось найти следующий пакет или файл: "cpp".
DBT3507E DBT3507E Утилите db2prereqcheck не удалось найти следующий пакет или файл: "gcc".

Установка необходимых пакетов

После установки ОС Альт надо обновить компоненты системы

apt-get update
apt-get dist-upgrade

Автор поставил следующие компоненты:

Консольные утилиты

apt-get install mc net-tools nano

для авторизации в X11 (чтобы запускать GUI программы через ssh без установки X-сервера (xinit не ставил)):

apt-get install xauth xterm


пакеты из группы "kernel-source", зависит от вашего ядра (un-def или std-def)

apt-get install kernel-headers-un-def

пакеты из группы "sh"

apt-get install pdksh

группа 32-битной библиотеки: "/lib/libpam.so*" и 32-битной библиотеки: "libstdc++.so.6"

apt-get install i586-libpam0 libpam0
apt-get install libstdc++6 i586-libstdc++6

пакеты (из зависимостей при установке Ubuntu)

apt-get install make perl m4 patch i586-libaio

пакеты зависимостей установщика

apt-get install libXtst libXi

пакеты зависимостей db2 (без первой не работает разбор xml и не устанавливается лицензия, без второй не стартует db2)

apt-get install libxml2 libnuma

пакеты из группы "gcc-c++"

apt-get install gcc gcc-c++ binutils cpp

Подготовка к установке [1]

Теперь подключиться с X-авторизацией, ключ -YC (не -XC, иначе клавиатура в GUI работать не будет, особенности текущих версий openssh).

ssh -YC admin@10.10.10.111

Запуск xterm; если запустился, значит, GUI-установщик ibm db2 тоже будет работать.

xterm

Установщик ibm db2 не понимает русский язык (запускается, но в процессе установки - ломается), поэтому надо перевести пользователя root в английскую локаль:

nano /root/.bash_profile

Вставить строки

export LANG="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"

выйти и снова зайти root, проверить locale

locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

Непосредственно установка и её проверка

Перейти в каталог установки и запустить утилиту установки ./db2setup -f sysreq (ключ обязателен, иначе забракует не поддерживаемый официально дистрибутив Linux)

./db2setup -f sysreq

Сам процесс установки очень прост:

  1. новая установка,
  2. серверная установка (первый пункт),
  3. типовая установка и согласиться с правилами ibm db2,
  4. задать пароли пользователям и файл ответов.

Дождаться завершения установки, должна быть фраза Setup has completed successfully

А лог файл не должен содержать ошибок, кроме "TSAMP" (нужен для кластера).

Перезагрузиться, войти в систему пользователем db2inst1 и убедиться, что экземпляр БД заработал:

db2start
05/24/2022 21:49:26 0 0 SQL1063N Команда DB2START выполнена успешно.
SQL1063N Команда DB2START выполнена успешно.

При работающем экземпляре БД открыт порт для подключения, проверка

netstat -ntpa | grep 50000
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 :::50000 :::* LISTEN 2925/db2sysc 0

Итог

На этом всё, дальше работать с БД, как на официально поддерживаемых дистрибутивах Linux, при выявлении ошибок в работе - найти недостающие библиотеки и установить их.

  1. Все операции по установке автор делал от root