[Инсталляция Oracle DataBase Server 12.1 в Centos 6.7 с использованием ASM и GRID]: Конфигурирование системных пользователей, настройка параметров системы
Перед тем как вносить изменения в конфигурационные файлы, рекомедуется сделать их резервные копии:
# {
cp /etc/sysctl.conf /etc/sysctl.conf.bkp.$(date +%Y-%m-%d)
cp /etc/security/limits.conf /etc/security/limits.conf.bkp.$(date +%Y-%m-%d)
cp /etc/pam.d/login /etc/pam.d/login.bkp.$(date +%Y-%m-%d)
cp /etc/profile /etc/profile.bkp.$(date +%Y-%m-%d)
}
Создание пользователей и групп
Создаем группы:
# groupadd -g 1000 oinstall
# groupadd -g 1001 dba
# groupadd -g 1002 oper
OSASM Group
# groupadd -g 1003 asmadmin
OSDBA Group
# groupadd -g 1004 asmdba
OSOPER Group
# groupadd -g 1005 asmoper
Error Messages
https://docs.oracle.com/html/E10880_02/giinstaller_errormessages.htm
Создаем пользователя oracle12, сообщаем, что он будет находиться в группах dba и oinstall и домашним каталогом у него будет /home/oracle
# useradd \
-g oinstall \
-G dba \
-d /home/oracle12 \
-m oracle12
Добавляю пользователя еще и в группы
# usermod -a -G oper oracle12
# usermod -a -G asmadmin oracle12
# usermod -a -G asmdba oracle12
# usermod -a -G asmoper oracle12
Устанавливаем пароль для пользователе oracle12
# passwd oracle12
Изменение параметров ядра и параметров учетной записи с правами администратора базы данных
- Отредактируйте файл /etc/sysctl.conf
Рекомендуется закомментировать (поставить перед ними знак #) имеющиеся параметры kernel.shmmax и kernel.shmall. Далее они будут добавлены в качестве параметров вместе с остальными параметрами Oracle. Для этого выполните следующие команды:
# sed -i.gres "s/kernel.shmmax/#kernel.shmmax/g" /etc/sysctl.conf
# sed -i.gres "s/kernel.shmall/#kernel.shmall/g" /etc/sysctl.conf
# vi /etc/sysctl.conf
kernel.shmmax = RAM (in bytes) / 2
Количество байт отперативной памяти, можно узнать командой
# free -b
4152623104 / 2 = 2076311552
Добавьте в конец файла /etc/sysctl.conf следующие параметры ядра.
############################################
#### Kernel Parameters for Oracle 12
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2076311552
kernel.shmmni = 4096
fs.file-max = 6815744
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 20000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
vm.min_free_kbytes = 23168
kernel.panic_on_oops = 1
############################################
-
Отредактируйте файл /etc/security/limits.conf
# vi /etc/security/limits.conf
Добавьте следующие строки
############################################
#### Settings required for Oracle 12
oracle12 soft nproc 2047
oracle12 hard nproc 16384
oracle12 soft nofile 1024
oracle12 hard nofile 65536
oracle12 soft stack 10240
oracle12 hard stack 32768
############################################
-
Отредактируйте файл /etc/pam.d/login
# vi /etc/pam.d/login
Добавьте следующие строки
############################################
#### Settings required for Oracle 12
session required pam_limits.so
############################################
-
Отредактируйте файл /etc/profile
# vi /etc/profile
Перед
unset i
unset pathmunge
Добавьте
###########################################
#### Shell limits for Oracle 12 user accounts
if [ $USER = "oracle12" ]; then
ulimit -u 16384 -n 65536
fi
############################################
Применить параметры ядра без перезагрузки можно следующей командой:
# sysctl -p
-
Отредактируйте файл /home/oracle12/.bash_profile
# su - oracle12 $ vi /home/oracle12/.bash_profile
После
# User specific environment and startup programs
Добавьте
#### Oracle Parameters ###########################
umask 022
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/database/12.1
export GRID_HOME=$ORACLE_BASE/grid/12.1
export ORACLE_SID=orcl12
export ORACLE_UNQNAME=orcl12
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$PATH:$ORACLE_HOME/bin:$GRID_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
# rlwrap aliases
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
alias asmcmd='rlwrap asmcmd'
#### Oracle Parameters ###########################
Применить переменные, определенные в файле .bash_profile к текущей сессии bash можно следующей командой:
$ source ~/.bash_profile
$ vi ~/asm.sh
export ORACLE_HOME=$GRID_HOME
export ORACLE_SID=+ASM
$ chmod +x ~/asm.sh
Чтобы использовались переменные указанные в файле asm.sh достаточно выполнить команы:
$ . asm.sh
Проверка:
$ echo $ORACLE_SID
+ASM