Linux 패키지 추가 설치
rpm -ivh ksh-20120801-26.el7.x86_64.rpm rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
[root@rac1 Packages]# rpm -ivh ksh-20120801-26.el7.x86_64.rpm 경고: ksh-20120801-26.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY 준비 중... ################################# [100%] Updating / installing... 1:ksh-20120801-26.el7 ################################# [100%] [root@rac1 Packages]# rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm 경고: libaio-devel-0.3.109-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY 준비 중... ################################# [100%] Updating / installing... 1:libaio-devel-0.3.109-13.el7 ################################# [100%]
DBMS 패키지 설치
rpm -ivh oracle-database-server-12cR2-preinstall-1.0-2.el7.x86_64.rpm
[root@rac1 ~]# rpm -ivh oracle-database-server-12cR2-preinstall-1.0-2.el7.x86_64.rpm 경고: oracle-database-server-12cR2-preinstall-1.0-2.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY 준비 중... ################################# [100%] Updating / installing... 1:oracle-database-server-12cR2-prei################################# [100%]
/etc/host 파일 수정
### Public 192.168.0.111 rac1.localdomain rac1 192.168.0.112 rac2.localdomain rac2 ### Private 192.168.5.111 rac1-priv.localdomain rac1-priv 192.168.5.112 rac2-priv.localdomain rac2-priv ### Virtual 192.168.0.121 rac1-vip.localdomain rac1-vip 192.168.0.122 rac2-vip.localdomain rac2-vip ### DNS 192.168.0.120 rac-scan.localdomain rac-scan
[root@rac1 ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 ### Public 192.168.0.111 rac1.localdomain rac1 192.168.0.112 rac2.localdomain rac2 ### Private 192.168.5.111 rac1-priv.localdomain rac1-priv 192.168.5.112 rac2-priv.localdomain rac2-priv ### Virtual 192.168.0.121 rac1-vip.localdomain rac1-vip 192.168.0.122 rac2-vip.localdomain rac2-vip ### DNS 192.168.0.120 rac-scan.localdomain rac-scan
/etc/selinux/config 파일 수정
SELINUX=permissive
[root@rac1 ~]# cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=permissive #SELINUX=enforcing # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
미사용 프로세스 중지
### 방화벽 중지 systemctl stop firewalld systemctl disable firewalld ### 시간 동기화 중지 systemctl stop chronyd systemctl disable chronyd mv /etc/chrony.conf /etc/chrony.conf.bak ### NTP 중지 systemctl stop ntpdate systemctl disable ntpdate ### DNS 중지 systemctl stop avahi-daemon systemctl disable avahi-daemon ### 가상 시스템 관리 중지 virsh net-destroy default virsh net-undefine default systemctl stop libvirtda systemctl disable libvirtda
[root@rac1 ~]# systemctl stop firewalld [root@rac1 ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@rac1 ~]# systemctl stop chronyd [root@rac1 ~]# systemctl disable chronyd Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service. [root@rac1 ~]# mv /etc/chrony.conf /etc/chrony.conf.bak [root@rac1 ~]# systemctl stop ntpdate [root@rac1 ~]# systemctl disable ntpdate [root@rac1 ~]# systemctl stop avahi-daemon Warning: Stopping avahi-daemon.service, but it can still be activated by: avahi-daemon.socket [root@rac1 ~]# systemctl disable avahi-daemon Removed symlink /etc/systemd/system/multi-user.target.wants/avahi-daemon.service. Removed symlink /etc/systemd/system/sockets.target.wants/avahi-daemon.socket. Removed symlink /etc/systemd/system/dbus-org.freedesktop.Avahi.service. [root@rac1 ~]# virsh net-destroy default default 네트워크 강제 종료 [root@rac1 ~]# virsh net-undefine default default 네트워크가 정의되지 않음 [root@rac1 ~]# systemctl stop libvirtd [root@rac1 ~]# systemctl disable libvirtd Removed symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service. Removed symlink /etc/systemd/system/sockets.target.wants/virtlogd.socket. Removed symlink /etc/systemd/system/sockets.target.wants/virtlockd.socket.
resolv.conf 내용 확인 및 dnsmasq 활성화
cat /etc/resolv.conf systemctl start dnsmasq systemctl enable dnsmasq nslookup rac-scan
[root@rac1 ~]# cat /etc/resolv.conf # Generated by NetworkManager search localdomain nameserver 127.0.0.1 [root@rac1 ~]# systemctl start dnsmasq [root@rac1 ~]# systemctl enable dnsmasq Created symlink from /etc/systemd/system/multi-user.target.wants/dnsmasq.service to /usr/lib/systemd/system/dnsmasq.service. [root@rac1 ~]# nslookup rac-scan Server: 127.0.0.1 Address: 127.0.0.1#53 Name: rac-scan.localdomain Address: 192.168.0.120
설치 디렉토리 생성
mkdir -p /u01/app/12.2.0/grid mkdir -p /u01/app/oracle/product/12.2.0/db_1 chown -R oracle:oinstall /u01 chmod -R 775 /u01
[root@rac1 ~]# mkdir -p /u01/app/12.2.0/grid [root@rac1 ~]# mkdir -p /u01/app/oracle/product/12.2.0/db_1 [root@rac1 ~]# chown -R oracle:oinstall /u01 [root@rac1 ~]# chmod -R 775 /u01
그룹 등록 및 사용자 설정 변경
### 그룹 등록 (필요에 따라 생략 가능) groupadd oper groupadd backupdba groupadd dgdba groupadd kmdba groupadd racdba groupadd asmadmin groupadd asmdba groupadd asmoper #groupadd vboxsf ### oracle 유저 그룹 설정 변경 usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle ### oracle 유저 암호 변경 passwd oracle
[root@rac1 ~]# groupadd oper [root@rac1 ~]# groupadd backupdba [root@rac1 ~]# groupadd dgdba [root@rac1 ~]# groupadd kmdba [root@rac1 ~]# groupadd racdba [root@rac1 ~]# groupadd asmadmin [root@rac1 ~]# groupadd asmdba [root@rac1 ~]# groupadd asmoper [root@rac1 ~]# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle [root@rac1 ~]# passwd oracle oracle 사용자의 비밀 번호 변경 중 새 암호: 잘못된 암호: 암호는 8 개의 문자 보다 짧습니다 새 암호 재입력: passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
oracle 유저 .bash_profile 수정
export TMP=/tmp export TMPDIR=$TMP export EDITOR=vi export ORACLE_HOSTNAME=rac1.localdomain # rac2.localdomain export ORACLE_UNQNAME=racdb export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/12.2.0/grid export DB_HOME=$ORACLE_BASE/product/12.2.0/db_1 export ORACLE_HOME=$DB_HOME export ORACLE_SID=racdb1 # racdb2 export ORACLE_TERM=xterm export BASE_PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export NLS_LANG=AMERICAN_KOREA.AL32UTF8 if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi