Skip to main content

Установка CarabiDB (Oracle 12c) на CentOS 7

Подготовка ОС

Выполнять из под root

sysctl

cat << EOT >> /etc/sysctl.d/90-oracle.conf
fs.file-max = 6815744 
kernel.sem = 250 32000 100 128 
kernel.shmmni = 4096 
kernel.shmall = 1073741824 
kernel.shmmax = 4398046511104 
net.core.rmem_default = 262144 
net.core.rmem_max = 4194304 
net.core.wmem_default = 262144 
net.core.wmem_max = 1048576 
fs.aio-max-nr = 1048576 
net.ipv4.ip_local_port_range = 9000 65500 
EOT

Применить настройки: sysctl --system

Проверить, применены ли настройки: sysctl -a | grep file-max

security

cat >> /etc/security/limits.d/90-oracle.conf << EOT
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
EOT

security Будет применено для всех новых сессий

зависимые пакеты

yum install mc unzip -y
yum install binutils -y
yum install compat-libstdc++-33 -y
yum install compat-libstdc++-33.i686 -y
yum install gcc -y
yum install gcc-c++ -y
yum install glibc -y
yum install glibc.i686 -y
yum install glibc-devel -y
yum install glibc-devel.i686 -y
yum install ksh -y
yum install libgcc -y
yum install libgcc.i686 -y
yum install libstdc++ -y
yum install libstdc++.i686 -y
yum install libstdc++-devel -y
yum install libstdc++-devel.i686 -y
yum install libaio -y
yum install libaio.i686 -y
yum install libaio-devel -y
yum install libaio-devel.i686 -y
yum install libXext -y
yum install libXext.i686 -y
yum install libXtst -y
yum install libXtst.i686 -y
yum install libX11 -y
yum install libX11.i686 -y
yum install libXau -y
yum install libXau.i686 -y
yum install libxcb -y
yum install libxcb.i686 -y
yum install libXi -y
yum install libXi.i686 -y
yum install make -y
yum install sysstat -y
yum install unixODBC -y
yum install unixODBC-devel -y
yum install zlib-devel -y
yum install zlib-devel.i686 -y
yum install compat-libcap1 -y
yum install smartmontools -y

создание пользователя и групп

groupadd -g 1101 oinstall
groupadd -g 1102 dba
groupadd -g 1103 oper
groupadd -g 1104 backupdba
groupadd -g 1105 dgdba
groupadd -g 1106 kmdba
groupadd -g 1107 asmdba
groupadd -g 1108 asmoper
groupadd -g 1109 asmadmin
useradd -u 1101 -g oinstall -G dba,oper oracle

Заменить mypass на свой пароль:

echo "mypass" | passwd oracle --stdin

отключение SELinux

sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/sysconfig/selinux
setenforce permissive
cat /etc/sysconfig/selinux

настройка firewalld

firewall-cmd --permanent --add-port=1521/tcp
firewall-cmd --reload

проверка X11Forwarding в SSH

mcedit /etc/ssh/sshd_config

Убедится, что есть строчка X11Forwarding yes

прописать в hosts

!!!Проверить

catecho << EOT >> /etc/hosts
"192.168.42.202 CarabiDB CarabiDB.locloc" EOT>> /etc/hosts

прописать переменные окужения

!!!Проверить

cat << EOT >> /home/oracle/.profile
export TMP=/tmp
export TMPDIR=\$TMP
export ORACLE_HOSTNAME=CarabiDB
export ORACLE_UNQNAME=PCG
export ORACLE_BASE=/oracle
export ORACLE_HOME=\$ORACLE_BASE/12c
export ORACLE_SID=PCG
export PATH=/usr/sbin:\$ORACLE_HOME/bin:\$PATH
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib
EOT

подготовить установщик

!!!Проверить

mkdir /oraonstall
mkdir /oracle
mkdir /oracle/12c

Удаленная установка из windows

Настройка minix в windows

Настройка putty в windows

Установка ПО

Устанока базы отдельно

Настройка автозапуска

Замена :N на :Y в oratab:

catsed <<-i EOT >>'s/\/oracle\/12c:N/\/oracle\/12c:Y/g' /etc/oratab
EOT

Добавить сервис в systemd (заменить DBNAME на имя базы) :

cat << EOT >> /etc/systemd/system/oracle-db.service
# Invoking Oracle scripts to start/shutdown Instances defined in /etc/oratab
# and starts Listener
[Unit]
Description=Oracle Database(s) and Listener
Requires=network.target
[Service]
Type=forking
Restart=no
ExecStart=/oracle/12c/bin/dbstart /u01/app/oracle/product/12.2.0/dbhome_1oradata/DBNAME
ExecStop=/oracle/12c/bin/dbshut /u01/app/oracle/product/12.2.0/dbhome_1oradata/DBNAME
User=oracle
[Install]
WantedBy=multi-user.target
EOT

Включить автозапуск:

systemctl enable oracle-db