#################################
OS : Redhat 9.6
DB : Oracle Database 19.3.0.0.0
#################################
192.168.56.121
hostname : testdb
SID : UGJHS
v$instance name : UGJHS
patch : 19.23
설치파일은 아래 파일을 이용함
GRID : LINUX.X64_193000_grid_home.zip
DB : LINUX.X64_193000_db_home.zip
OPatch : p6880880_190000_Linux-x86-64.zip
GI RU 19.23 → 36233126(GI 홈)
DB RU 19.23 → 36233263(DB 홈)
유저 그리드랑 오라클 나누고.
asm : udev 로 oracleasm 구성
--## GRID BASE,HOME 경로
ORACLE_BASE=/u01/app/grid
ORACLE_HOME=/u01/app/19.0.0.0/grid
--## ORACLE BASE,HOME 경로
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/19.0.0.0/dbhome_1
########################
운영체제 버전 확인(root)
########################
uname -a
cat /etc/system-release
######################
디스크 공간 확인(root)
######################
#오라클 엔진, 데이터 파일등이 위치할 만한 공간이 있는지 파악
df -h
##########################
메모리 및 SWAP 체크(root)
##########################
#/proc/meminfo에서 메모리와 SWAP 값을 가져와서 보여줌
free -h
##옵션 정보
-h : 사람이 읽기 편한 단위로 표시
-b : byte 단위로 표시
-k : kbyte 단위로 표시
-m : mbyte 단위로 표시
-g : gbyte 단위로 표시
#####################
hosts 파일 설정(root)
#####################
#해당 ip와 host를 참조하기 위한 설정
cat /etc/hosts
vi /etc/hosts
<서버접근 ip>
192.168.56.121 testdb
#############################
그리드, 오라클 유저 및 그룹 생성(root)
#############################
#고객에게 그리드와 오라클 사용 유저명을 무엇으로 사용할 건지 확인
#유저 및 그룹 생성 전 해당 id와 이름을 사용하고 있는지 조회
#이미 사용 중이라면 고객에게 확인 후 다른 이름, 다른 id로 변경하여 생성
grep -E "dba|1001" /etc/group
grep -E "grid|oracle|1001|1002" /etc/passwd
groupadd -g 1001 dba
useradd -g dba -u 1002 grid
useradd -g dba -u 1001 oracle
id grid
id oracle
passwd grid
passwd oracle
##########################
방화벽 해제 체크(root) optional
##########################
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
###################
SELinux 설정(root)
###################
프로세스가 비정상적으로 동작할 수 있기에 permissive 혹은 disabled로 설정
vi /etc/sysconfig/selinux
SELINUX=disabled
getenforce
disabled 가 뜨도록 reboot 후 다시 확인.
##########################
커널 파라미터 값 설정(root)
##########################
vi /etc/sysctl.conf
#sysctl.conf 파일에 해당 내용 작성 후 저장
#kernel.shmmax와 kernel.shmall 값의 경우 서버 사양에 따라 변경
kernel.sem = 250 32000 100 128
kernel.shmmax=4294967296
kernel.shmmni=4096
kernel.shmall=2097152
fs.file-max=6815744
fs.aio-max-nr=1048576
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
#위의 커널 파라미터 값 설정 후 적용하기 위한 명령어
/sbin/sysctl -p
/sbin/sysctl -a
#커널 파라미터 값 단위는 바이트
#getconf PAGE_SIZE << page size 구하는 방법
#kernel.shmmax: 1/2 of Physical Size or more
#kernel.shmall: Physical Size/PAGE_SIZE
#######################
유저 제한 값 설정(root)
#######################
vi /etc/security/limits.conf
#limits.conf 파일에 해당 내용 작성 후 저장
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
#위의 oracle과 grid는 유저명으로 유저명에 따라 변경
#########################
local repository(root)
#########################
#해당 부분은 OS 엔지니어에게 요청
#Local Repository 구성 요청 혹은 yum 사용 가능하게 만들어달라고 요청
#테스트 시 해당 방법으로 Local Repository 구성 #
#리눅스 CD 마운트
mount /dev/sr0 /media
#기존에 존재하는 repo 파일을 다른 경로로 백업
cd /etc/yum.repos.d
ls
mkdir back
mv *.repo back
#새로운 repo 파일을 열어서
vi local.repo
#local.repo 파일에 해당 내용 작성
#rhel : 리포형성 (node 1,2 모두)
테스트 시 해당 방법으로 Local Repository 구성
리눅스 CD 마운트
root> mount /dev/sr0 /media
기존에 존재하는 repo 파일을 다른 경로로 백업
root> cd /etc/yum.repos.d
root> mkdir back
root> mv *.repo back
vi local.repo
[AppStream]
name=localRepository
baseurl=file:///media/AppStream
enabled=1
gpgcheck=0
[BaseOS]
name=localRepository
baseurl=file:///media/BaseOS
enabled=1
gpgcheck=0
##################
패키지 설치(root)
##################
#필수 패키지 다운
dnf update -y
dnf install device-mapper* -y
dnf install -y bc
dnf install -y binutils
dnf install -y compat-libcap1
dnf install -y compat-libstdc++-33
dnf install -y elfutils-libelf
dnf install -y elfutils-libelf-devel
dnf install -y fontconfig-devel
dnf install -y glibc
dnf install -y glibc-devel
dnf install -y ksh
dnf install -y libaio
dnf install -y libaio-devel
dnf install -y libXrender
dnf install -y libXrender-devel
dnf install -y libX11
dnf install -y libXau
dnf install -y libXi
dnf install -y libXtst
dnf install -y libgcc
dnf install -y libstdc++
dnf install -y libstdc++-devel
dnf install -y libxcb
dnf install -y make
dnf install -y policycoreutils
dnf install -y policycoreutils-python
dnf install -y smartmontools
dnf install -y sysstat
dnf install -y libnsl
dnf install -y libnsl.i686
dnf install -y libnsl2
dnf install -y libnsl2.i686
dnf install -y gcc
dnf install -y unixODBC
dnf install -y nfs-utils
단일 인스턴스에서 ASM을 쓰려면 추가 디스크가 꼭 필요합니다.
지금은 sda(부팅 디스크)만 있으니 가상 디스크를 1~2개 추가하세요.
디스크 추가는 호스트(윈도우) 쪽에서 VirtualBox에 붙이는 작업
VirtualBox GUI(가장 쉬움)
VM 전원 끄기 → VM 선택 → 설정(Settings).
저장소(Storage) → 컨트롤러(SATA/SCSI/SAS) 선택 → 하드 디스크 추가 아이콘(+) → 새 디스크 만들기(Create new disk).
형식: VDI/VMDK 아무거나 가능(VDI 무난), 크기: 예) DATA=30GB, RECO=20GB.
단일 인스턴스면 공유 디스크 설정 필요 없음(RAC가 아니라면 shareable 불필요).
완료 후 확인, VM 부팅.





[root@testdb ~]# lsblk -d -o NAME,SIZE,TYPE,MODEL
NAME SIZE TYPE MODEL
sda 80G disk VBOX HARDDISK
sdb 30G disk VBOX HARDDISK
sdc 20G disk VBOX HARDDISK

#SCSI 호스트 전체 스캔
for H in /sys/class/scsi_host/host*; do echo "- - -" | sudo tee $H/scan; done
lsblk # sdb, sdc 등장 확인
[root@testdb ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 80G 0 disk
├─sda1 8:1 0 1.9G 0 part /boot
└─sda2 8:2 0 78.1G 0 part
├─rhel-root 253:0 0 70.7G 0 lvm /
└─rhel-swap 253:1 0 7.5G 0 lvm [SWAP]
sdb 8:16 0 30G 0 disk
sdc 8:32 0 20G 0 disk
by-id 기반 udev 규칙 작성
ls -l /dev/disk/by-id/ # 실제 문자열 확인 (…-part1 링크 사용)
vi /etc/udev/rules.d/99-asm.rules
#DATA (/dev/sdb 전체)
KERNEL=="sd*", ENV{ID_SERIAL}=="VBOX_HARDDISK_VB2c7d9353-ae880b28", SYMLINK+="asm/data01", OWNER="oracle", GROUP="dba", MODE="0660"
#RECO (/dev/sdc 전체)
KERNEL=="sd*", ENV{ID_SERIAL}=="VBOX_HARDDISK_VB58df4d26-390ace0d", SYMLINK+="asm/reco01", OWNER="oracle", GROUP="dba", MODE="0660"
OWNER="oracle", GROUP="asmadmin" <<< 확인
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data01", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data02", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data03", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data04", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data05", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data06", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data07", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data08", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data09", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data10", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data11", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/data12", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="", SYMLINK+="asm/data13", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/reco01", OWNER="oracle", GROUP="asmadmin", MODE="0660"
KERNEL=="sd", ENV{ID_SERIAL}=="", SYMLINK+="asm/reco02", OWNER="oracle", GROUP="asmadmin", MODE="0660"
적용 검증
udevadm control --reload-rules
udevadm trigger --type=devices --action=change
ls -l /dev/asm
ls -l /dev/asm # data01, reco01 링크와 권한 oracle:asmadmin 0660 확인
====4) ASM에서 디스크그룹 생성 =============나중에======
-- ASM 인스턴스에서
SQL> SELECT path, header_status FROM v$asm_disk;
SQL> CREATE DISKGROUP DATA EXTERNAL REDUNDANCY
DISK '/dev/asm/data01'
ATTRIBUTE 'compatible.asm'='19.0','compatible.rdbms'='11.2';
SQL> CREATE DISKGROUP RECO EXTERNAL REDUNDANCY
DISK '/dev/asm/reco01'
ATTRIBUTE 'compatible.asm'='19.0','compatible.rdbms'='11.2';
=============================================
[root@testdb dev]# ls -l /dev/sdb /dev/sdc
brw-rw---- 1 oracle dba 8, 16 Nov 2 13:39 /dev/sdb
brw-rw---- 1 oracle dba 8, 32 Nov 2 13:39 /dev/sdc
#확인
lsblk
lvdisplay
#####################################
############환경변수 설정###############
#####################################
vi ~/.bash_profile
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/grid
export PATH=ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export LANG=C
. ~/.bash_profile
vi ~/.bash_profile
export PS1="[\u@\h \W]$ "
export EDITOR=vi
export ORACLE_SID=+ASM
export GRID_BASE=/u01/app/grid
export GRID_HOME=/u01/app/19c/grid
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19.0.0.0/grid
export LD_LIBRARY_PATH=ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export LANG=C
. ~/.bash_profile
vi ~/.bash_profile
export PS1="[\u@\h \W]$ "
export EDITOR=vi
export ORACLE_TERM=xterm
export ORACLE_SID=UGJHS
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0.0/dbhome_1
export GRID_HOME=/u01/app/19c/grid
export PATH=/bin:/sbin:/usr/sbin:/usr/bin:ORACLE_HOME/OPatch:ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LANG=C
alias ss='sqlplus "/as sysdba"'
alias bdump='cd /u01/app/oracle/diag/rdbms/ugjhs/UGJHS/trace'
#디렉토리 생성
[root]
mkdir -p /u01/oracd
chown oracle:dba /u01/oracd
chmod 775 /u01/oracd
[oracle]
su - oracle
mkdir -pv mkdir -pv $ORACLE_HOME
mkdir: created directory '/u01/app'
mkdir: created directory '/u01/app/oracle'
mkdir: created directory '/u01/app/oracle/product'
mkdir: created directory '/u01/app/oracle/product/19c'
mkdir: created directory '/u01/app/oracle/product/19c/db_home'
d
-- 권한 에러 나면 그냥
mkdir -p /u01/app/oracle/product/19c/db_home
exit
chmod 775 /u01/app
[grid]
su - grid
mkdir -pv $ORACLE_BASE
mkdir -pv $ORACLE_HOME
exit
[root]
chown -R grid:dba /u01
chown -R oracle:dba /u01/app/oracle
chown -R grid:dba /u01/oracd
chmod -R 775 /u01/oracd/
#아래의 한 줄을 추가한다.
tmpfs /dev/shm tmpfs size=7g 0 0
[root@rac1 ~]# mount -o remount /dev/shm
[root@rac1 ~]# df -h /dev/shm
remount하여 적용시킨다.
언제 특히 중요?
DB에서 AMM(= MEMORY_TARGET) 을 쓰는 경우
→ /dev/shm ≥ MEMORY_MAX_TARGET 권장
-Grid Infrastructure/ASM 등 Oracle 프로세스가 공유 메모리 세그먼트를 많이 잡는 환경
-컨테이너·VM에서 기본 /dev/shm가 매우 작은 경우
점검체크
mount | grep /dev/shm # 마운트 옵션 확인(size=7g 등)
df -h /dev/shm # 실제 크기 확인
ipcs -m | head # 공유 메모리 세그먼트 존재 여부(참고)
Oracle 구동 안정성 확보를 위해 /dev/shm 용량을 요구치로 늘리고, remount로 즉시 적용하는 표준 절차
#########################
디렉토리 생성(root)
#########################
ls -arlt /ora*
mkdir -p /oracle/app/grid
mkdir -p /oracle/app/19c/grid
mkdir -p /oracle/app/oracle/product/19c/db_home
mkdir /oracd
#############################
설치 파일 및 패치 파일 업로드(root)
#############################
cd /u01/oracd
ls -al
chown -R grid:dba /u01/oracd
ls -al
#######################
root bash_profile 설정(root)
#######################
vi ~/.bash_profile
export ORACLE_BASE=/oracle/app/grid
export ORACLE_HOME=/oracle/app/19c/grid
export PATH=ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export ORACLE_SID=+ASM
export LANG=C
. ~/.bash_profile
ORACLE_BASE : 그리드 베이스 경로
ORACLE_HOME : 그리드 홈 경로
#################################
grid 유저 bash_profile 설정(grid)
#################################
vi ~/.bash_profile
export PS1="[\u@\h \W]$ "
umask 022
export EDITOR=vi
export ORACLE_SID=+ASM
export GRID_BASE=/oracle/app/grid
export GRID_HOME=/oracle/app/19c/grid
export ORACLE_BASE=/oracle/app/grid
export ORACLE_HOME=/oracle/app/19c/grid
export LD_LIBRARY_PATH=ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export LANG=C
. ~/.bash_profile
ORACLE_BASE : 그리드 베이스 경로
ORACLE_HOME : 그리드 홈 경로
#################################
오라클 유저 bash_profile 설정(oracle)
#################################
vi ~/.bash_profile
export PS1="[\u@\h \W]$ "
umask 022
export EDITOR=vi
export ORACLE_TERM=xterm
export ORACLE_SID=<<<<<<<<<<<<<<<<<<<<<<<<<<<<
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=ORACLE_HOME/bin:GRID_HOME/bin
export LD_LIBRARY_PATH=ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LANG=C
alias ss='sqlplus "/as sysdba"'
. ~/.bash_profile
PS1 : 쉘프롬프트
umask : 파일이나 디렉터리 생성 시 초기 접근권한 설정
EDITOR : 기본 텍스트 에디터 지정
ORACLE_TERM : 오라클 터미널 타입 지정
ORACLE_SID : 오라클 데이터베이스 이름
ORACLE_BASE : 오라클 베이스 경로
ORACLE_HOME : 오라클 홈 경로
GRID_HOME : 그리드 홈 경로
TNS_ADMIN : 오라클의 네트워크 관련 파일들이 저장된 디렉토리
PATH : 오라클 실행 파일을 찾을 경로
LD_LIBRARY_PATH : 오라클 라이브러리 경로
CLASSPATH : 오라클 class 파일들이 저장된 디렉토리
NLS_LANG : 오라클에서 사용할 언어(캐릭터 셋)
LANG : 리눅스에서 사용할 언어
###########################
그리드 설치 파일 소유자 변경(root)
###########################
chown -R grid:dba /u01/oracd
###########################
grid 설치 파일 압축해제(grid)
###########################
grid 유저로 하는 것.
cd /u01/oracd
ls -alrt
-rwxrwxr-x 1 oracle dba 2889184573 Nov 2 14:05 LINUX.X64_193000_grid_home.zip
실행권한과 소유자 등등 확인한다
unzip LINUX.X64_193000_grid_home.zip -d $ORACLE_HOME
-d : 해당 경로에 압축해제
cd $ORACLE_HOME
ls -al
######################
cvuqdisk rpm 설치 (root)
######################
export CVUQDISK_GRP=dba
cd $ORACLE_HOME/cv/rpm
rpm -ivh cvuqdisk-*.rpm
/u01/app/19c/grid/cv/admin
vi cvu_config
CV_ASSUME_DISTID=OEL5
주석 처리 되어있는거 주석 없앰
#############
grid 설치 (grid)
#############
=== 설치 전 패치 하려면
###PATCH###
OPatch 백업
#OPatch 버전 확인 , 백업 , 교체 node 1 only
su - grid
cd $ORACLE_HOME
opatch version
[grid@testdb grid]$ opatch version
OPatch Version: 12.2.0.1.17
OPatch succeeded.
mv OPatch OPatch.bak.오늘날짜
cd /u01/oracd
ls -al
grid:dba
unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME
$ cd opatch version
[grid@testdb grid]$ opatch version
OPatch Version: 12.2.0.1.47
OPatch succeeded.
--grid 유저에서--
ls -al
권한 확인
chown grid:dba p36233126_190000_Linux-x86-64.zip
mkdir -p gi_patch
unzip p36233126_190000_Linux-x86-64.zip -d gi_patch
-- 이따가 오라클 유저로도 쓸거라서 .. 그냥 분리했음
cd $ORACLE_HOME
who am i
[grid@testdb grid]$ who am i
root pts/0 Nov 2 12:39 (192.168.56.1)
#확인한 아이피를 DISPLAY 변수에 선언
export DISPLAY=
./gridSetup.sh -applyRU /u01/oracd/gi_patch/36233126









##################
grid 설치 확인(grid)
##################
crsctl status res -t
ora.DATA.dg
ONLINE ONLINE testdb STABLE
ora.LISTENER.lsnr
ONLINE ONLINE testdb STABLE
ora.asm
ONLINE ONLINE testdb Started,STABLE
ora.ons
OFFLINE OFFLINE testdb STABLE
ora.cssd
1 ONLINE ONLINE testdb STABLE
ora.diskmon
1 OFFLINE OFFLINE STABLE
ora.evmd
1 ONLINE ONLINE testdb STABLE
####################
디스크그룹 추가 작업(grid)
####################
아카이브 영역인 RECO 디스크그룹을 생성하기 위한 작업을 asmca를 통해 진행
asmca



#########################
oracleasm Diskgroup 확인(grid)
#########################
asmcmd lsdg
[grid@testdb ~]$ asmcmd
ASMCMD> lsdg
State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 512 512 4096 4194304 30720 30616 0 30616 0 N DATA/
MOUNTED EXTERN N 512 512 4096 4194304 20480 20384 0 20384 0 N RECO/
-- Connected to an idle instance.
vi .bash_profile SID 확인할 것 ----
###########################
오라클 설치 파일 소유자 변경(root)
###########################
chown -R oracle:dba /u01/oracd
###########################
오라클 설치 파일 압축해제(oracle)
###########################
cd /u01/oracd
[root]# chown -R oracle:dba LINUX.X64_193000_db_home.zip
[root]# chown -R oracle:dba p6880880_190000_Linux-x86-64.zip
오라클 유저로 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
-d : 해당 경로에 압축해제
cd $ORACLE_HOME
ls -al
======================================
OPatch 파일 최신 파일로 교체
$ cd $ORACLE_HOME
opatch version
OPatch Version: 12.2.0.1.17
OPatch succeeded.
mv OPatch OPatch.bk.251102
cd /u01/oracd
ls -al
--unzip
unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME
opatch version
OPatch Version: 12.2.0.1.47 <<<<<<< 잘 됨.
OPatch succeeded.
--- patch 해야지
mkdir -p db_patch
ls -al
total 9212464
drwxr-xr-x 2 oracle dba 6 Nov 2 16:48 db_patch
unzip p36233126_190000_Linux-x86-64.zip -d db_patch
########################
오라클 엔진 설치(oracle)
########################
cd $ORACLE_HOME
export DISPLAY=
cd $ORACLE_HOME
./runInstaller -applyRU /u01/oracd/db_patch/36233126







###########
DB 구성
###########
dbca
검증
lsnrctl stat
sqlplus / as sysdba
set pages 500
set lines 200
col file_name for a80
select file_name, tablespace_name, bytes/1024/1024 MB, autoextensible from dba_data_files;
col file_name for a60
col tablespace_name for a20
select file_name, tablespace_name, bytes/1024/1024 MB, autoextensible from dba_temp_files;
col name for a60
select name from v$controlfile;
show sga
show parameter pga
show parameter processes
col parameter for a30
col value for a20
select * from nls_database_parameters where parameter='NLS_CHARACTERSET';
col member for a50
select a.group#, a.thread#, a.sequence#, b.member, a.bytes/1024/1024 MB, a.status, a.archived
from vlogfile b
where a.group# = b.group#;
col comp_name for a50
col status for a10
select comp_name, status from dba_registry;
col description for a70
col status for a10
SELECT TO_CHAR(ACTION_TIME, 'YYYYMMDD HH24:MI:SS') AS ACTION_TIME
,ACTION
,STATUS
,DESCRIPTION
,PATCH_ID
FROM DBA_REGISTRY_SQLPATCH
ORDER BY ACTION_TIME;
archive log list;
alter system switch logfile;
##############
crs shutdown 절차
##############
srvctl stop listener -listener <listener_name> -node <node_name>
srvctl stop instance -d <db_name> -i <instance_name>
crsctl stop resource -all
crsctl stop has
###########
crs start 절차
###########
crsctl start has
crsctl start resource -all
srvctl start instance -d <db_name> -i <instance_name>
srvctl start listener -listener <listener_name> -node <node_name>
extpt