Продолжаем писать цикл стаей о Oracle Linux Oracle Database.
В прошлой статье мы установили Oracle Linux Server, теперь нужно подготовить ОС для создания базы данных.
Можно почитать про установку Oracle Database 19c на официальном сайте, а также oracle-base.com, где частично описано что и как делать, Oracle Database 19c Installation On Oracle Linux 8 (OL8), но мы будем настраивать самостоятельно.
1. Отключаем firewalld
[root@LinuxServer ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@LinuxServer ~]# systemctl stop firewalld
2. Отключаем SELINUX
[root@LinuxServer ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
3. Подключаем репозиторий epel
[root@LinuxServer ~]# dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Ставим нужные пакеты, список пакетов у Вас может отличаться от моего, здесь есть лишние, но мне они нужны для работы.
[root@LinuxServer ~]# dnf install -y vim mc htop iotop vim telnet nmap vnstat p7zip hdparm ftp screen smartmontools mlocate mailx yum-utils unzip cifs-utils createrepo tree pciutils sysfsutils bind-utils dmidecode wget net-tools tcpdump ntsysv iptables firefox ntfs-3g ntfsprogs ntfs-3g-system-compression
Ставим пакеты из группы для разработчиков
[root@LinuxServer ~]# dnf groupinstall -y "Development Tools"
Если у вас в сети не настроен DNS сервер, то рекомендую прописать соответствие имя сервера и IP адреса в файле /etc/hosts, также можно дать короткое имя для сервера, например o19
[root@LinuxServer ~]# vim /etc/hosts
Получаем:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.14 LinuxServer o19
Предварительную настройку ядра для установки Oracle можно выполнить автоматически или вручную
Автоматическая настройка
[root@LinuxServer ~]# dnf install -y oracle-database-preinstall-19c
Ручная настройка
[root@LinuxServer ~]# vim /etc/sysctl.conf
Прописываем следующие параметры
- fs.file-max = 6815744
- kernel.sem = 250 32000 100 128
- kernel.shmmni = 4096
- kernel.shmall = 1073741824
- kernel.shmmax = 4398046511104
- kernel.panic_on_oops = 1
- net.core.rmem_default = 262144
- net.core.rmem_max = 4194304
- net.core.wmem_default = 262144
- net.core.wmem_max = 1048576
- net.ipv4.conf.all.rp_filter = 2
- net.ipv4.conf.default.rp_filter = 2
- fs.aio-max-nr = 1048576
- net.ipv4.ip_local_port_range = 9000 65500
Применяем настройки
[root@LinuxServer ~]# /sbin/sysctl -p
Добавляем еще настройки в файл /etc/security/limits.d/oracle-database-preinstall-19c.conf
[root@LinuxServer ~]# vim /etc/security/limits.d/oracle-database-preinstall-19c.conf
- oracle soft nofile 1024
- oracle hard nofile 65536
- oracle soft nproc 16384
- oracle hard nproc 16384
- oracle soft stack 10240
- oracle hard stack 32768
- oracle hard memlock 134217728
- oracle soft memlock 134217728
- oracle soft data unlimited
- oracle hard data unlimited
Ставим еще требуемые пакеты, некоторые из них не установятся, но это не помешает установке.
[root@LinuxServer ~]# dnf install -y bc binutils elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel.i686 elfutils-libelf.i686 fontconfig-devel gcc gcc-c++ glibc glibc-devel glibc-devel.i686 glibc.i686 ksh libaio libaio-devel libaio-devel.i686 libaio.i686 libgcc libgcc.i686 librdmacm-devel libstdc++ libstdc++-devel libstdc++-devel.i686 libstdc++.i686 libX11 libX11.i686 libXau libXau.i686 libxcb libxcb.i686 libXext libXext.i686 libXi libXi.i686 libXrender libXrender-devel libXtst libXtst.i686 make net-tools nfs-utils python39 python3-configshell.noarch python3-rtslib python3-six smartmontools sysstat targetcli unixODBC unixODBC-devel zlib-devel zlib-devel.i686
4. Обновляем всю систему и перезагружаем ОС
[root@LinuxServer ~]# dnf update -y
[root@LinuxServer ~]# reboot now
5. Скачиваем архив с инсталлятором Oracle 19.3 с официального сайта
https://www.oracle.com/ru/database/technologies/oracle-database-software-downloads.html
Загружаем архив с инсталлятором Oracle 19.3 - Enterprise Edition (also includes Standard Edition 2)
[root@LinuxServer ~]# mkdir /dst && cd /dst
[root@LinuxServer ~]# wget https://download.oracle.com/otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip .
Также в будущем нам понадобятся следующие пакеты:
oracle-instantclient19.12-basic-19.12.0.0.0-1.x86_64.rpm
oracle-instantclient19.12-devel-19.12.0.0.0-1.x86_64.rpm
oracle-instantclient19.12-sqlplus-19.12.0.0.0-1.x86_64.rpm
oracle-instantclient19.12-tools-19.12.0.0.0-1.x86_64.rpm
oracle-instantclient19.12-jdbc-19.12.0.0.0-1.x86_64.rpm
oracle-instantclient19.12-odbc-19.12.0.0.0-1.x86_64.rpm
Скачиваем.
[root@LinuxServer ~]# cd /dst
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-basic-19.12.0.0.0-1.x86_64.rpm .
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-devel-19.12.0.0.0-1.x86_64.rpm .
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-sqlplus-19.12.0.0.0-1.x86_64.rpm .
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-tools-19.12.0.0.0-1.x86_64.rpm .
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-jdbc-19.12.0.0.0-1.x86_64.rpm .
[root@LinuxServer ~]# wget https://download.oracle.com/otn_software/linux/instantclient/1912000/oracle-instantclient19.12-odbc-19.12.0.0.0-1.x86_64.rpm .
(В конце команды wget стоит точка, означает текущий каталог)
Устанавливаем.
[root@LinuxServer ~]# rpm -ivh oracle-instantclient19.12-basic-19.12.0.0.0-1.x86_64 oracle-instantclient19.12-devel-19.12.0.0.0-1.x86_64 oracle-instantclient19.12-sqlplus-19.12.0.0.0-1.x86_64 oracle-instantclient19.12-tools-19.12.0.0.0-1.x86_64 oracle-instantclient19.12-jdbc-19.12.0.0.0-1.x86_64 oracle-instantclient19.12-odbc-19.12.0.0.0-1.x86_64
6. Создаем пользователей и группы
Создаем группы
[root@LinuxServer ~]# groupadd -g 54321 oinstall
[root@LinuxServer ~]# groupadd -g 54322 dba
[root@LinuxServer ~]# groupadd -g 54331 oper
[root@LinuxServer ~]# groupadd -g 54332 asmadmin
[root@LinuxServer ~]# groupadd -g 54333 asmdba
[root@LinuxServer ~]# groupadd -g 54334 asmoper
[root@LinuxServer ~]# groupadd -g 54335 backupdba
[root@LinuxServer ~]# groupadd -g 54336 dgdba
[root@LinuxServer ~]# groupadd -g 54337 kmdba
[root@LinuxServer ~]# groupadd -g 54338 racdba
Создаем пользователей и добавляем в нужные группы
[root@LinuxServer ~]# useradd -u 54321 -g oinstall -G dba,oper,asmdba,backupdba,dgdba,kmdba,racdba oracle
[root@LinuxServer ~]# useradd -u 54331 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba grid
Устанавливаем пароли для пользователей
[root@LinuxServer ~]# passwd grid
[root@LinuxServer ~]# passwd oracle
Даем права пользователю oracle на изменение для каталога /dst
[root@LinuxServer ~]# chown -R oracle.oinstall /dst
[root@LinuxServer ~]# chmod -R 775 /dst
На этом подготовительная работа окончена, в следующей статье будем создавать базу данных Oracle.