DB2: различия между версиями
Нет описания правки |
м (беглые вычитка, довикификация и категорирование) |
||
(не показано 25 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
DB2 — семейство программных продуктов в области управления информацией компании IBM. | == DB2 — семейство программных продуктов в области управления информацией компании IBM. == | ||
{{w | DB2}} | |||
Основная статья на форуме: | |||
[https://forum.altlinux.org/index.php?topic=46165.0 Установка ibm db2 v.11.5 на Альт Линукс 10] | |||
[[Файл:Снимок экрана 2022-05-24 21-30-47.png|мини|Начало установки]] | |||
[[Файл:Снимок экрана 2022-05-24 21-40-42.png|мини|А таким должен быть финал установки]] | |||
=== Входные данные === | |||
# Версия IBM DB2 11.5 для Linux, автор использовал архив '''v11.5.5_linuxx64_server_dec.tar.gz''' (для партнёров), подойдёт и коммерческий архив, только после установки нужно будет поставить лицензию на софт. | |||
# Альт 10 платформы, автор использовал серверный вариант стартового набора. Проверял работу на виртуальной машине KVM и контейнере LXC - оба варианта рабочие. | |||
# Архитектура процессора '''x86_64''', для других архитектур перечень библиотек может отличаться, например автор для работы на POWER PC/Ubuntu ставил дополнительные библиотеки к тем, что нужны для Ubuntu на x86_64. | |||
# IBM DB2 исторически имеет ограничения в именах(справедливо для '''username/hostname'''), имена пользователей и хоста не должны превышать '''8 символов'''. | |||
# Установка выполняется под корневым пользователем (root). | |||
# Статья имеет рекомендательный характер, т.к. доскональной проверки работы IBM DB2 на Альт Линукс после установки не проводилось, ''возможна частичная неработоспособность отдельных компонент'', результатом действий будет возможность работать с экземпляром БД. | |||
# Автор не претендует на истину в последней инстанции и может ошибаться, он такой же человек, как и все. Устанавливая IBM DB2 на Альт Линукс вы принимаете все возможные риски на себя. | |||
Изначально (официально) IBM гарантирует работоспособность DB2 на следующих дистрибутивах Linux: | |||
# Red Hat | |||
# Ubuntu | |||
# SUSE | |||
=== Распаковка архива === | |||
<source lang=bash> | |||
tar -xzvf v11.5.5_linuxx64_server_dec.tar.gz | |||
</source> | |||
Отправной точкой установки является проверка компонент операционной системы перед установкой - утилита db2prereqcheck. | |||
Если ее запустить на дистрибутиве не из привилегированного списка дистрибутивов, например, fedora (чем не rhel) или debian (чем не ubuntu), результат будет одинаков: | |||
<source lang=bash> | |||
# ./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 | |||
</source> | |||
Это значит, что ваш дистрибутив Linux официально не поддерживается IBM для работы DB2. | |||
Для примера, та же команда, выполненная на неподготовленной для IBM DB2 openSUSE выдаст перечень несоответствий: | |||
<source lang=bash> | |||
#./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". | |||
</source> | |||
=== Установка необходимых пакетов === | |||
После установки ОС Альт надо обновить компоненты системы | |||
<source lang=bash> | |||
apt-get update | |||
apt-get dist-upgrade | |||
</source> | |||
Автор поставил следующие компоненты: | |||
Консольные утилиты | |||
<source lang=bash> | |||
apt-get install mc net-tools nano | |||
</source> | |||
для авторизации в X11 (чтобы запускать GUI программы через ssh без установки X-сервера (xinit не ставил)): | |||
<source lang=bash> | |||
apt-get install xauth xterm | |||
</source> | |||
пакеты из группы "kernel-source", зависит от вашего ядра (un-def или std-def) | |||
<source lang=bash> | |||
apt-get install kernel-headers-un-def | |||
</source> | |||
пакеты из группы "sh" | |||
<source lang=bash> | |||
apt-get install pdksh | |||
</source> | |||
группа 32-битной библиотеки: "/lib/libpam.so*" и 32-битной библиотеки: "libstdc++.so.6" | |||
<source lang=bash> | |||
apt-get install i586-libpam0 libpam0 | |||
apt-get install libstdc++6 i586-libstdc++6 | |||
</source> | |||
пакеты (из зависимостей при установке Ubuntu) | |||
<source lang=bash> | |||
apt-get install make perl m4 patch i586-libaio | |||
</source> | |||
пакеты зависимостей установщика | |||
<source lang=bash> | |||
apt-get install libXtst libXi | |||
</source> | |||
пакеты зависимостей db2 (без первой не работает разбор xml и не устанавливается лицензия, без второй не стартует db2) | |||
<source lang=bash> | |||
apt-get install libxml2 libnuma | |||
</source> | |||
пакеты из группы "gcc-c++" | |||
<source lang=bash> | |||
apt-get install gcc gcc-c++ binutils cpp | |||
</source> | |||
=== Подготовка к установке <ref>Все операции по установке автор делал от '''root'''</ref> === | |||
Теперь подключиться с X-авторизацией, ключ -YC (не -XC, иначе клавиатура в GUI работать не будет, особенности текущих версий openssh). | |||
<source lang=bash> | |||
ssh -YC admin@10.10.10.111 | |||
</source> | |||
Запуск xterm; если запустился, значит, GUI-установщик ibm db2 тоже будет работать. | |||
<source lang=bash> | |||
xterm | |||
</source> | |||
Установщик ibm db2 не понимает русский язык (запускается, но в процессе установки - ломается), поэтому надо перевести пользователя root в английскую локаль: | |||
<source lang=bash> | |||
nano /root/.bash_profile | |||
</source> | |||
Вставить строки | |||
<source lang=bash> | |||
export LANG="en_US.UTF-8" | |||
export LC_ALL="en_US.UTF-8" | |||
export LC_CTYPE="en_US.UTF-8" | |||
</source> | |||
''' | |||
выйти и снова зайти root''', проверить locale | |||
<source lang=bash> | |||
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 | |||
</source> | |||
=== Непосредственно установка и её проверка === | |||
Перейти в каталог установки и запустить утилиту установки ./db2setup -f sysreq (ключ обязателен, иначе забракует не поддерживаемый официально дистрибутив Linux) | |||
<source lang=bash> | |||
./db2setup -f sysreq | |||
</source> | |||
Сам процесс установки очень прост: | |||
#новая установка, | |||
#серверная установка (первый пункт), | |||
#типовая установка и согласиться с правилами ibm db2, | |||
#задать пароли пользователям и файл ответов. | |||
Дождаться завершения установки, должна быть фраза | |||
'''Setup has completed successfully''' | |||
А лог файл не должен содержать ошибок, кроме "TSAMP" (нужен для кластера). | |||
Перезагрузиться, войти в систему пользователем '''db2inst1''' и убедиться, что экземпляр БД заработал: | |||
<source lang=bash> | |||
db2start | |||
05/24/2022 21:49:26 0 0 SQL1063N Команда DB2START выполнена успешно. | |||
SQL1063N Команда DB2START выполнена успешно. | |||
</source> | |||
При работающем экземпляре БД открыт порт для подключения, проверка | |||
<source lang=bash> | |||
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 | |||
</source> | |||
=== Итог === | |||
На этом всё, дальше работать с БД, как на официально поддерживаемых дистрибутивах Linux, при выявлении ошибок в работе - найти недостающие библиотеки и установить их. | |||
[[Категория:HOWTO]] |
Текущая версия от 21:17, 25 мая 2022
DB2 — семейство программных продуктов в области управления информацией компании IBM.
Основная статья на форуме:
Установка ibm db2 v.11.5 на Альт Линукс 10
Входные данные
- Версия IBM DB2 11.5 для Linux, автор использовал архив v11.5.5_linuxx64_server_dec.tar.gz (для партнёров), подойдёт и коммерческий архив, только после установки нужно будет поставить лицензию на софт.
- Альт 10 платформы, автор использовал серверный вариант стартового набора. Проверял работу на виртуальной машине KVM и контейнере LXC - оба варианта рабочие.
- Архитектура процессора x86_64, для других архитектур перечень библиотек может отличаться, например автор для работы на POWER PC/Ubuntu ставил дополнительные библиотеки к тем, что нужны для Ubuntu на x86_64.
- IBM DB2 исторически имеет ограничения в именах(справедливо для username/hostname), имена пользователей и хоста не должны превышать 8 символов.
- Установка выполняется под корневым пользователем (root).
- Статья имеет рекомендательный характер, т.к. доскональной проверки работы IBM DB2 на Альт Линукс после установки не проводилось, возможна частичная неработоспособность отдельных компонент, результатом действий будет возможность работать с экземпляром БД.
- Автор не претендует на истину в последней инстанции и может ошибаться, он такой же человек, как и все. Устанавливая IBM DB2 на Альт Линукс вы принимаете все возможные риски на себя.
Изначально (официально) IBM гарантирует работоспособность DB2 на следующих дистрибутивах Linux:
- Red Hat
- Ubuntu
- 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
Сам процесс установки очень прост:
- новая установка,
- серверная установка (первый пункт),
- типовая установка и согласиться с правилами ibm db2,
- задать пароли пользователям и файл ответов.
Дождаться завершения установки, должна быть фраза 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, при выявлении ошибок в работе - найти недостающие библиотеки и установить их.
- ↑ Все операции по установке автор делал от root