ORACLE/ADMIN2024. 2. 23. 16:23
반응형

버추얼박스 사용

vboxmanage createmedium --filename IMSI1.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename IMSI2.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename IMSI3.vdi --size 1024 --format VDI --variant Fixed

 

공유 및  서버에 할당
vboxmanage modifymedium IMSI1.vdi --type shareable
vboxmanage modifymedium IMSI2.vdi --type shareable
vboxmanage modifymedium IMSI3.vdi --type shareable

 

 

공유볼륨 IMSI1~3 추가


[root@rac2 ~]# fdisk -l

Disk /dev/sdj: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/sdi: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/sdh: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

fdisk /dev/sdh

[root@rac2 ~]# fdisk /dev/sdh
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x853b6083.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-2097151, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): 
Using default value 2097151
Partition 1 of type Linux and of size 1023 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
.

.

.


fdisk /dev/sdi
fdisk /dev/sdj

ASM 디스크 생성


[root@rac2 ~]# oracleasm createdisk  IMSI1 /dev/sdh1

Writing disk header: done
Instantiating disk: done
[root@rac2 ~]# oracleasm createdisk  IMSI2 /dev/sdi1
Writing disk header: done
Instantiating disk: done
[root@rac2 ~]# oracleasm createdisk  IMSI3 /dev/sdj1
Writing disk header: done
Instantiating disk: done


-- RAC 모든 노드에서 실행1,2
[root@rac1 ~]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
Instantiating disk "IMSI3"
Instantiating disk "IMSI2"
Instantiating disk "IMSI1"
[root@rac2 ~]# oracleasm listdisks
CRS1
CRS2
CRS3
DATA
DATA2
FRA
IMSI1
IMSI2
IMSI3

[root@rac2 ~]# kfod ds=true disks=all group=diskgroup
--------------------------------------------------------------------------------
 Disk          Size Path                                    Disk Group    User     Group   
================================================================================
   1:       1023 MB /dev/oracleasm/disks/CRS1                CRS          oracle   asmadmin
   2:       1023 MB /dev/oracleasm/disks/CRS2                CRS          oracle   asmadmin
   3:       1023 MB /dev/oracleasm/disks/CRS3                CRS          oracle   asmadmin
   4:      30719 MB /dev/oracleasm/disks/DATA                DATA         oracle   asmadmin
   5:      50999 MB /dev/oracleasm/disks/DATA2               DATA         oracle   asmadmin
   6:      20479 MB /dev/oracleasm/disks/FRA                 FRA          oracle   asmadmin
   7:       1023 MB /dev/oracleasm/disks/IMSI1               #            oracle   asmadmin
   8:       1023 MB /dev/oracleasm/disks/IMSI2               #            oracle   asmadmin
   9:       1023 MB /dev/oracleasm/disks/IMSI3               #            oracle   asmadmin
KFOD returned no data
 
디스크그룹 생성

/dev/oracleasm/disks/IMSI1 , /dev/oracleasm/disks/IMSI2 2개 추가
SQL> create diskgroup IMSI external redundancy disk '/dev/oracleasm/disks/IMSI1','/dev/oracleasm/disks/IMSI2';
Diskgroup created.

SQL> set linesize 200
SQL> set pages 100   
SQL> col disk_group_name for a15
SQL> col disk_path for a40
SQL> col disk_name for a20
SQL> col disk_fail_group for a20
SQL> 
SQL> SELECT
  2          NVL(a.name, '[CANDIDATE]') disk_group_name ,
  3          b.path                     disk_path       ,
  4          b.name                     disk_name       ,
  5          b.failgroup                disk_fail_group ,
  6          b.os_mb
  7  FROM
  8          v$asm_diskgroup a,
  9          v$asm_disk      b
 10  WHERE
 11          a.group_number(+) = b.group_number
 12  ORDER BY
 13          a.name,
 14          b.name,
 15          b.path;

DISK_GROUP_NAME DISK_PATH                                DISK_NAME            DISK_FAIL_GROUP           OS_MB
--------------- ---------------------------------------- -------------------- -------------------- ----------
CRS             /dev/oracleasm/disks/CRS1                CRS_0000             CRS_0000                   1023
CRS             /dev/oracleasm/disks/CRS3                CRS_0001             CRS_0001                   1023
CRS             /dev/oracleasm/disks/CRS2                CRS_0002             CRS_0002                   1023
DATA            /dev/oracleasm/disks/DATA2               DATA2                DATA2                     50999
DATA            /dev/oracleasm/disks/DATA                DATA_0000            DATA_0000                 30719
FRA             /dev/oracleasm/disks/FRA                 FRA_0000             FRA_0000                  20479
IMSI            /dev/oracleasm/disks/IMSI1               IMSI_0000            IMSI_0000                  1023
IMSI            /dev/oracleasm/disks/IMSI2               IMSI_0001            IMSI_0001                  1023
[CANDIDATE]     /dev/oracleasm/disks/IMSI3                                                               1023

9 rows selected.

디스크그룹에 추가

SQL> alter diskgroup IMSI add disk '/dev/oracleasm/disks/IMSI3' rebalance power 1024;
SQL> set linesize 200
SQL> set pages 100   
SQL> col disk_group_name for a15
SQL> col disk_path for a40
SQL> col disk_name for a20
SQL> col disk_fail_group for a20
SQL> 
SQL> SELECT
  2          NVL(a.name, '[CANDIDATE]') disk_group_name ,
  3          b.path                     disk_path       ,
  4          b.name                     disk_name       ,
  5          b.failgroup                disk_fail_group ,
  6          b.os_mb
  7  FROM
  8          v$asm_diskgroup a,
  9          v$asm_disk      b
 10  WHERE
 11          a.group_number(+) = b.group_number
 12  ORDER BY
 13          a.name,
 14          b.name,
 15          b.path;

DISK_GROUP_NAME DISK_PATH                    DISK_NAME    DISK_FAIL_GROUP        OS_MB
--------------- ---------------------------- ------------ ----------------- ----------
CRS             /dev/oracleasm/disks/CRS1    CRS_0000     CRS_0000                1023
CRS             /dev/oracleasm/disks/CRS3    CRS_0001     CRS_0001                1023
CRS             /dev/oracleasm/disks/CRS2    CRS_0002     CRS_0002                1023
DATA            /dev/oracleasm/disks/DATA2   DATA2        DATA2                  50999
DATA            /dev/oracleasm/disks/DATA    DATA_0000    DATA_0000              30719
FRA             /dev/oracleasm/disks/FRA     FRA_0000     FRA_0000               20479
IMSI            /dev/oracleasm/disks/IMSI1   IMSI_0000    IMSI_0000               1023
IMSI            /dev/oracleasm/disks/IMSI2   IMSI_0001    IMSI_0001               1023
IMSI            /dev/oracleasm/disks/IMSI3   IMSI_0002    IMSI_0002               1023

9 rows selected.

[root@rac2 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        ONLINE  OFFLINE                               STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.IMSI.dg(ora.asmgroup)
      1        OFFLINE OFFLINE                               STABLE
      2        OFFLINE OFFLINE                               STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     Started,STABLE
      2        ONLINE  ONLINE       rac2                     Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
.............................................
--------------------------------------------------------------------------------
[root@rac2 ~]# crsctl stat res -t

--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        ONLINE  OFFLINE                               STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
.............................................
--------------------------------------------------------------------------------
[root@rac1 ~]# srvctl start diskgroup -g IMSI -n rac1

완료

[root@rac2 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        ONLINE  OFFLINE                               STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.IMSI.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

oracle 12C allow_group_access_to_sga  (0) 2024.03.27
12C 이상에서 오라클 로그 위치  (0) 2024.03.22
ASM 디스크 그룹 삭제 방법  (0) 2024.02.22
oracle autoupgrade 12C -> 19C 업그레이드 방법  (0) 2024.02.08
single to rac 방법  (0) 2024.01.29
Posted by [PineTree]
ORACLE/ADMIN2024. 2. 22. 15:19
반응형

1. 사용자 삭제
select 'drop user '||username||' cascade;'
from dba_users
where default_tablespace in ('TBS_NAME');

ex) drop user test cascade;

2. 대상 테이블스페이스 삭제 
select 'drop tablespace '||tablespace_name||' including contents and datafiles;'
from (select tablespace_name from dba_data_files 
where file_name like '%FILE_NAME%');

3. 삭제 대상 디스크 그룹 UNMOUNT;

rac 의 경우 양 서버에서 모두 dismount

리스타트의 경우 한 번만 dismount
$sqlplus / as sysasm
SQL> alter diskgroup ARTEST dismount;

4. 대상 디스크 그룹 삭제
$sqlplus / as sysasm
SQL> drop diskgroup  ARTEST force including contents;

SQL> drop diskgroup  data3 force including contents; 
drop diskgroup  data3 force including contents
*
ERROR at line 1:
ORA-15039: diskgroup not dropped
ORA-15073: diskgroup DATA3 is mounted by another ASM instance

-- RAC 이면 모든 노드에서 디스 마운트 해줘야 된다.


5. CRS 리소스 제거( crsctl stat res -t 에서 삭제 안되면 아래 명령어 실행)
$ srvctl remove diskgroup -g ARTEST -f

반응형
Posted by [PineTree]
ORACLE/TroubleShooting2024. 2. 22. 15:05
반응형

상태 확인

[root@arac1 dev]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ARTEST.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.CRS.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.DATA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.FRA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.MGMT.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.chad
               ONLINE  ONLINE       arac1                    STABLE
ora.net1.network
               ONLINE  ONLINE       arac1                    STABLE
ora.ons
               ONLINE  ONLINE       arac1                    STABLE
ora.proxy_advm
               OFFLINE OFFLINE      arac1                    STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
중 략
--------------------------------------------------------------------------------

디스크 그룹 파괴
[root@arac1 dev]# dd if=/dev/zero of=/dev/ARTEST/ARTESTLV count=1000
1000+0 records in
1000+0 records out
512000 bytes (512 kB) copied, 0.00114053 s, 449 MB/s

확인 - 오프라인 상태로 변경 됨
[+ASM1:/home/grid]> asmcmd
ASMCMD> ls
ARTEST/
CRS/
DATA/
FRA/
MGMT/
ASMCMD> cd artest
ASMCMD> ls

[root@arac1 ARTEST]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ARTEST.dg
               OFFLINE OFFLINE      arac1                    STABLE
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.CRS.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.DATA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.FRA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.MGMT.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.chad
               ONLINE  ONLINE       arac1                    STABLE
ora.net1.network
               ONLINE  ONLINE       arac1                    STABLE
ora.ons
               ONLINE  ONLINE       arac1                    STABLE
ora.proxy_advm
               OFFLINE OFFLINE      arac1                    STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       arac1                    STABLE
ora.MGMTLSNR
      1        ONLINE  ONLINE       arac1                    169.254.51.97 192.16
                                                             8.0.111,STABLE
ora.arac1.vip
      1        ONLINE  ONLINE       arac1                    STABLE
ora.arac2.vip
      1        ONLINE  INTERMEDIATE arac1                    FAILED OVER,STABLE
ora.aracdb.db
      1        ONLINE  ONLINE       arac1                    Open,HOME=/u01/app/o
                                                             racle/product/12c/db
                                                             _1,STABLE
      2        OFFLINE OFFLINE                               STABLE
  

로 그
  
2024-02-22T11:16:08.730714+09:00
GMON dismounting group 1 at 27 for pid 44, osid 21554
2024-02-22T11:16:08.905072+09:00
System State dumped to trace file /u01/app/oracle/diag/asm/+asm/+ASM1/incident/incdir_214849/+ASM1_ora_21498_i214849.trc
2024-02-22T11:16:08.950506+09:00
ami_comp:dbgrip.c@16254:SQL> alter diskgroup ARTEST check
2024-02-22T11:16:09.156303+09:00
NOTE: cache deleting context for group ARTEST 1/0x47c6226f
2024-02-22T11:16:09.796926+09:00
NOTE: Disk ARTEST_0000 in mode 0x7f marked for de-assignment
2024-02-22T11:16:09.801824+09:00
SUCCESS: diskgroup ARTEST was dismounted
2024-02-22T11:16:09.802800+09:00
SUCCESS: alter diskgroup ARTEST dismount force /* ASM SERVER:1204167279 */
2024-02-22T11:16:09.805146+09:00
ami_comp:dbgrip.c@16254:ORA-15032: not all alterations performed
ami_comp:dbgrip.c@16254:ORA-15001: diskgroup "ARTEST" does not exist or is not mounted
ami_comp:dbgrip.c@16254:ORA-15001: diskgroup "1" does not exist or is not mounted
ami_comp:dbgrip.c@16254:
2024-02-22T11:16:09.805723+09:00
ami_comp:dbgrip.c@16254:ERROR: alter diskgroup ARTEST check
ami_comp:dbgrip.c@16254:Some DDE async actions failed or were cancelled
2024-02-22T11:16:09.813709+09:00
SUCCESS: ASM-initiated MANDATORY DISMOUNT of group ARTEST
2024-02-22T11:16:09.918350+09:00
NOTE: diskgroup resource ora.ARTEST.dg is offline



select group_number, name, state from v$asm_diskgroup;
GROUP_NUMBER NAME                     STATE
------------ ------------------------ ---------------------------------
           2 CRS                      MOUNTED
           3 DATA                     MOUNTED
           4 FRA                      MOUNTED
           5 MGMT                     MOUNTED


삭제 실패
SQL> drop diskgroup ARTEST force including contents
  2  ;
drop diskgroup ARTEST force including contents
*
ERROR at line 1:
ORA-15039: diskgroup not dropped
ORA-15063: ASM discovered an insufficient number of disks for diskgroup "ARTEST"

그냥 crs에서 삭제 한다. 오라클 문서 1478128.1
crsctl delete resource ora.ARTEST.dg

12.2.0.1 기준 아래 방법으로 해야 된다
srvctl remove diskgroup -g ARTEST -f

삭제 완료
[+ASM1:/home/grid]> srvctl remove diskgroup -g ARTEST -f
[+ASM1:/home/grid]> crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.CRS.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.DATA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.FRA.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       arac1                    STABLE
ora.MGMT.dg
               ONLINE  ONLINE       arac1                    STABLE
ora.chad
               ONLINE  ONLINE       arac1                    STABLE
ora.net1.network
               ONLINE  ONLINE       arac1                    STABLE
ora.ons
               ONLINE  ONLINE       arac1                    STABLE
ora.proxy_advm
               OFFLINE OFFLINE      arac1                    STABLE

 

참조 : ORA-015039, ORA-15063: ASM Discovered An Insufficient Number Of Disks For Diskgroup (문서 ID 1478128.1)

반응형
Posted by [PineTree]
ORACLE/INSTALL2024. 2. 20. 15:37
반응형

 1.Red Hat Enterprise Linux 9

 
Oracle Database 19.0.0.0.0(Linux x86-64 Red Hat Enterprise Linux 9 사용)
Red Hat Enterprise Linux 9: 5.14.0-70.22.1.el9_0.x86_64 or later

Minimum RU: 19.19
 
 

 2.Oracle Linux 9

Oracle Database 19.0.0.0.0(Linux x86-64 Oracle Linux 9 사용)
Product: For general information relating to certification for the Oracle Database product, including virtualization, interoperability, binary compatibiliy, general release and patch set information, see Core Database Certification Information (Doc ID 1306539.1).

Platform: For details about certifications of Oracle Database on Linux x86-64, see Certification Information for Oracle Database on Linux x86-64 (Doc ID 1304727.1).

For details about Oracle Linux Ksplice Support with the Oracle Database, see Oracle Linux Ksplice Support with Oracle Database (Doc ID 2312257.1).

Minimum RU: 19.19

Minimum kernel versions:

Oracle Linux 9 with the Unbreakable Enterprise Kernel 7: 5.15.0-1.43.4.2.el9uek.x86_64 or later,
or
Oracle Linux 9 with the Red Hat Compatible kernel: 5.14.0-70.22.1.0.2.el9_0.x86_64 or later
AFD/ASMLib

Oracle ASM Filter Driver (AFD) is supported with Oracle Linux 9. Please refer to Note 1369107.1 for more details.
Oracle ASMlib is not supported in the initial release. It will be supported soon.
Customers can choose between using AFD or configuring block devices with udev rules directly as documented here.
ACFS: Please refer to ACFS Supported on OS Platforms for Oracle ACFS certification details (Doc ID 1369107.1)
 
 
 

 

반응형
Posted by [PineTree]
ORACLE/Backup & Recovery2024. 2. 14. 17:03
반응형

주로 사용자의 실수로 datafile 삭제

-- 전제 조건 아카이브 모드 상태.
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /arch
Oldest online log sequence     83
Next log sequence to archive   85
Current log sequence           85
SQL> 

 

-- 상태 확인 
SQL> select file#,name,status,CREATION_TIME from v$datafile;

     FILE# NAME                                               STATUS  CREATION_TIM
---------- -------------------------------------------------- ------- ------------
         1 /oradata/ORA19C/system01.dbf                       SYSTEM  17-APR-19
         3 /oradata/ORA19C/sysaux01.dbf                       ONLINE  17-APR-19
         4 /oradata/ORA19C/undotbs01.dbf                      ONLINE  17-APR-19
         5 /oradata/ORA19C/users02.dbf                        ONLINE  14-FEB-24
         7 /oradata/ORA19C/users01.dbf                        ONLINE  17-APR-19
         8 /oradata/ORA19C/soe01.dbf                          ONLINE  22-JAN-24

-- 장애 상황 발생 
[oracle@ora19c ORA19C]$ rm users02.dbf 
[oracle@ora19c ORA19C]$ exit

-- 로그 스위칭 도중 db down 발생
SQL> alter system switch logfile;
alter system switch logfile
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 5028
Session ID: 154 Serial number: 38319

Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.21.0.0.0
-- DB 마운트 모드 기동
[ora19c:/home/oracle]> ss

SQL*Plus: Release 19.0.0.0.0 - Production on Wed Feb 14 14:52:56 2024
Version 19.21.0.0.0

Copyright (c) 1982, 2022, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup mount
ORACLE instance started.

Total System Global Area 3137336112 bytes
Fixed Size                  8930096 bytes
Variable Size             671088640 bytes
Database Buffers         2449473536 bytes
Redo Buffers                7843840 bytes
Database mounted.
SQL> select * from v$recover_file;

     FILE# ONLINE  ONLINE_ ERROR                   CHANGE# TIME             CON_ID
---------- ------- ------- -------------------- ---------- ------------ ----------
         5 ONLINE  ONLINE  FILE NOT FOUND                0                       0
 
SQL>  select file#,name,status,CREATION_TIME from v$datafile;
     FILE# NAME                                          STATUS  CREATION_TIM
---------- --------------------------------------------- ------- ------------
         1 /oradata/ORA19C/system01.dbf                  SYSTEM  17-APR-19
         3 /oradata/ORA19C/sysaux01.dbf                  ONLINE  17-APR-19
         4 /oradata/ORA19C/undotbs01.dbf                 ONLINE  17-APR-19
         5 /oradata/ORA19C/users02.dbf                   ONLINE  14-FEB-24
         7 /oradata/ORA19C/users01.dbf                   ONLINE  17-APR-19
         8 /oradata/ORA19C/soe01.dbf                     ONLINE  22-JAN-24

6 rows selected.
-- 삭제 파일  껍데기 만들어 줌
SQL> alter database create datafile '/oradata/ORA19C/users02.dbf';

Database altered.
-- 복구 
SQL> recover datafile 5;
Media recovery complete.
SQL> alter database datafile 5 online;

Database altered.
-- db open 완료
SQL> alter database open;

Database altered. 

-- 복구 완료 확인

SQL> select * from v$recover_file;

no rows selected

SQL> col file_name for a45
SQL> set lines 200
SQL>  select tablespace_name,file_name,bytes/1024/1024 from dba_data_files;

TABLESPACE_NAME                FILE_NAME                                     BYTES/1024/1024
------------------------------ --------------------------------------------- ---------------
USERS                          /oradata/ORA19C/users01.dbf                             93.75
UNDOTBS1                       /oradata/ORA19C/undotbs01.dbf                             605
SYSTEM                         /oradata/ORA19C/system01.dbf                             1150
SYSAUX                         /oradata/ORA19C/sysaux01.dbf                              910
USERS                          /oradata/ORA19C/users02.dbf                           36.5625
SOE                            /oradata/ORA19C/soe01.dbf                                2419

6 rows selected.

SQL>  select file#,name,status,CREATION_TIME from v$datafile;

     FILE# NAME                                          STATUS  CREATION_TIM
---------- --------------------------------------------- ------- ------------
         1 /oradata/ORA19C/system01.dbf                  SYSTEM  17-APR-19
         3 /oradata/ORA19C/sysaux01.dbf                  ONLINE  17-APR-19
         4 /oradata/ORA19C/undotbs01.dbf                 ONLINE  17-APR-19
         5 /oradata/ORA19C/users02.dbf                   ONLINE  14-FEB-24
         7 /oradata/ORA19C/users01.dbf                   ONLINE  17-APR-19
         8 /oradata/ORA19C/soe01.dbf                     ONLINE  22-JAN-24

6 rows selected.

SQL> select instance_name,status from v$instance;

INSTANCE_NAME    STATUS
---------------- ------------
ora19c           OPEN

 

※ DB가  다운 되지 않았다면 삭제한 datafile offline 후 alter database create datafile  생성 부터 

진행 하면 된다.

반응형
Posted by [PineTree]
반응형

SYMPTOMS

Pump process abends with below error:
2020-08-05 23:19:16 ERROR OGG-00041 Data source not specified.
2020-08-05 23:19:16 ERROR OGG-01668 PROCESS ABENDING.

CHANGES

 

CAUSE

Goldengate is not able to correctly interpret the parameter file.
It could be due to an unsupported parameter used or a spelling error in one of the keywords specifies in parameter file

Goldengate가 매개변수 파일을 올바르게 해석할 수 없습니다. 지원되지 않는 매개변수가 사용되었거나 매개변수 파일에 지정된 키워드 중 하나의 철자 오류가 원인일 수 있습니다
 

SOLUTION

Scan and ensure that all the parameters set in Pump parameter file are valid for extract pump and that there are no typing errors with the keywords used.

펌프 매개변수 파일에 설정된 모든 매개변수가 추출 펌프에 대해 유효한지, 사용된 키워드에 입력 오류가 없는지 스캔하고 확인하십시오.

 

 

참조 : ERROR OGG-00041 Data Source Not Specified (문서 ID 2698427.1)

 

 

반응형
Posted by [PineTree]
ORACLE/19C2024. 2. 14. 10:42
반응형

Process and Runtime Limits

Process and Runtime Limits

This table describes limit types and limit values for process and runtime items.

ItemType of LimitLimit Value
Instances per database Maximum number of cluster database instances per database Operating system-dependent
Locks Row-level Unlimited
Locks Distributed Lock Manager Operating system dependent
SGA size Maximum value Operating system-dependent; typically 2 to 4 GB for 32-bit operating systems, and > 4 GB for 64-bit operating systems
Advanced Queuing Processes Maximum per instance 10
Job Queue Processes Maximum per instance 1000
I/O Slave Processes Maximum per background process (DBWR, LGWR, and so on) 15
I/O Slave Processes Maximum per Backup session 15
Sessions Maximum per instance 216; limited by the PROCESSES and SESSIONS initialization parameters. 216 is 65536.
Global Cache Service Processes Maximum per instance 10
Shared Servers Maximum per instance Unlimited within constraints set by the PROCESSES and SESSIONS initialization parameters, for instance
Dispatchers Maximum per instance Unlimited within constraints set by PROCESSES and SESSIONS initialization parameters, for instance
Parallel Execution Slaves Maximum per instance Unlimited within constraints set by PROCESSES and SESSIONS initialization parameters, for instance
Backup Sessions Maximum per instance Unlimited within constraints set by PROCESSES and SESSIONS initialization parameters, for instance
Services Maximum per instance 8200

 

반응형
Posted by [PineTree]
ORACLE/19C2024. 2. 14. 10:37
반응형

논리적 데이터베이스 제한

이 표에서는 논리적 데이터베이스 항목에 대한 제한 유형과 제한 값을 설명합니다.

안건한도 유형한계값
테이블당 최대 1000
인덱스(또는 클러스터형 인덱스)당 최대값 32
비트맵 인덱스당 최대값 30
제약 열당 최대값 제한 없는
Oracle은 열당 제약 조건 수에 대한 제한을 정의하지 않습니다. 그러나 제약조건에는 데이터베이스의 최대 제약조건 수에 대한 제한이 적용됩니다. 이 표에서 " 제약조건 - 데이터베이스당 최대값 " 항목을 참조하세요 .
제약 데이터베이스당 최대값 4,294,967,293
데이터베이스 사용자 데이터베이스당 최대값 4,294,967,293
사전 관리 데이터베이스 객체 데이터베이스당 최대값 4,254,950,911 - 간접비
인덱스 테이블당 최대 제한 없는
Oracle은 테이블당 인덱스 수에 대한 제한을 정의하지 않습니다. 그러나 인덱스에는 데이터베이스당 허용되는 최대 사전 관리 데이터베이스 개체 수에 대한 제한이 적용됩니다. 이 표에서 " 사전 관리 데이터베이스 개체 " 항목을 참조하세요 .
인덱스 인덱싱된 열의 총 크기 데이터베이스 블록 크기의 약 75%에서 약간의 오버헤드를 뺀 값
파티션 선형 파티셔닝 키의 최대 길이 4KB - 오버헤드
파티션 파티션 키의 최대 열 수 16열
파티션 테이블 또는 인덱스당 허용되는 최대 파티션 수 1024K - 1
테이블당 최대 개수 제한 없는
저장된 패키지 최대 크기 대략 6,000,000적인 코드 줄.
참조: 자세한 내용은 Oracle Database PL/SQL 언어 참조
하위 파티션 복합 파티션된 테이블의 최대 하위 파티션 수 1024K - 1
하위 쿼리 SQL 문의 최대 하위 쿼리 수준 FROM최상위 쿼리 절 에서는 무제한
255WHERE절의 하위 쿼리
SCN(시스템 변경 번호) 최고 2 63 - 2 48 = 9,223,090,561,878,065,152 SCN
테이블 클러스터링된 테이블당 최대값 테이블 32개
테이블 데이터베이스당 최대값 제한 없는
Oracle은 데이터베이스당 테이블 수에 대한 제한을 정의하지 않습니다. 그러나 테이블에는 데이터베이스당 허용되는 최대 사전 관리 데이터베이스 개체 수에 대한 제한이 적용됩니다. 이 표에서 " 사전 관리 데이터베이스 개체 " 항목을 참조하세요 .
트리거 캐스케이드 제한 최대값 일반적으로 운영 체제에 따라 다름32
사용자 및 역할 최고 2,147,483,638

메모:

SQL 문의 길이에 대한 제한은 데이터베이스 구성, 디스크 공간 및 메모리를 포함한 여러 요인에 따라 달라집니다.

메모:

객체 인스턴스가 메모리에 존재하는 경우 객체의 속성 수에는 고정된 제한이 없습니다. 그러나 객체 인스턴스가 소비하는 최대 총 메모리 양은 4GB입니다. 객체 인스턴스가 테이블에 삽입되면 속성이 테이블의 별도 열로 분해되고 Oracle 1000 열 제한이 적용됩니다.

 

참조 

https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/logical-database-limits.html#GUID-685230CF-63F5-4C5A-B8B0-037C566BDA76

반응형
Posted by [PineTree]
ORACLE/19C2024. 2. 14. 10:34
반응형

물리적 데이터베이스 제한

이 표에서는 물리적 데이터베이스 항목에 대한 제한 유형과 제한 값을 설명합니다.

안건한도 유형한계값
데이터베이스 블록 크기 최저한의 2048바이트; 운영 체제 물리적 블록 크기의 배수여야 합니다.
데이터베이스 블록 크기 최고 운영 체제에 따라 다름. 32KB를 넘지 않음
데이터베이스 블록 세그먼트 초기 범위의 최소값 2블록
데이터베이스 블록 데이터 파일당 최대값 플랫폼에 따라 다릅니다. 일반적으로 2 22 - 1 블록
제어 파일 제어 파일 수 1최저한의; 2이상(별도의 장치) 강력 권장
제어 파일 제어 파일의 크기 최대 201031680개의 논리 블록
데이터베이스 파일 테이블스페이스당 최대값 운영 체제에 따라 다름. 대개1023
데이터베이스 파일 데이터베이스당 최대값 65533
일부 운영 체제에서는 더 적을 수 있습니다.
DB_FILES데이터베이스 블록의 크기와 특정 인스턴스의 초기화 매개변수 에 의해서도 제한됩니다.
데이터베이스 범위 사전 관리 테이블스페이스당 최대값 4GB * 물리적 블록 크기(K/M 수정자 사용) 4GB(K/M 수정자 제외)
데이터베이스 범위 로컬로 관리되는(균일) 테이블스페이스당 최대값 2GB * 물리적 블록 크기(K/M 수정자 사용) 2GB(K/M 수정자 제외)
데이터베이스 파일 크기 최고 운영 체제에 따라 다릅니다. 최대 운영 체제 파일 크기로 제한됩니다. 이러한 유형의 테이블스페이스의 최대 데이터베이스 파일 크기에 대한 자세한 내용은 Bigfile 테이블스페이스  Smallfile(기존) 테이블스페이스 행을 참조하세요 .
MAXEXTENTS 기본값 테이블스페이스 기본 스토리지 또는 DB_BLOCK_SIZE초기화 매개변수 에서 파생됨
MAXEXTENTS 최고 제한 없는
리두 로그 파일 최대 로그 파일 수 명령문 MAXLOGFILES의 매개변수 값으로 제한됨CREATE DATABASE
더 많은 항목을 허용하도록 제어 파일의 크기를 조정할 수 있습니다. 궁극적으로 운영 체제 제한
리두 로그 파일 그룹당 최대 로그 파일 수 제한 없는
리두 로그 파일 크기 최소 크기 4 MB
리두 로그 파일 크기 최대 크기 운영 체제 제한 일반적으로 2결핵
테이블스페이스 데이터베이스당 최대 수 64 K
각 테이블스페이스에는 하나 이상의 파일이 포함되어야 하므로 테이블스페이스 수는 데이터베이스 파일 수를 초과할 수 없습니다.
빅파일 테이블스페이스 블록 수 빅파일 테이블스페이스에는 단 하나의 데이터 파일 또는 임시 파일만 포함되며, 이는 최대 약 40억( 2 32 )개의 블록을 포함할 수 있습니다. 단일 데이터 파일 또는 임시 파일의 최대 크기는 32K 블록이 있는 테이블스페이스의 경우 128TB이고, 8K 블록이 있는 테이블스페이스의 경우 32TB입니다.
Smallfile(기존) 테이블스페이스 블록 수 스몰파일 테이블스페이스는 전통적인 Oracle 테이블스페이스로, 1023개의 데이터 파일 또는 임시 파일을 포함할 수 있으며 각 테이블스페이스에는 최대 약 400만(2 22 )개의 블록이 포함될 수 있습니다.
외부 테이블 파일 최대 크기 운영 체제에 따라 다릅니다.
외부 테이블은 여러 파일로 구성될 수 있습니다.

 

참조

https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/physical-database-limits.html#GUID-939CB455-783E-458A-A2E8-81172B990FE9

반응형
Posted by [PineTree]
ORACLE/19C2024. 2. 14. 10:30
반응형

A.1 데이터 유형 제한

이 표에는 데이터 유형에 대한 제한이 문서화되어 있으며 데이터 유형에 대한 설명이 포함되어 있습니다.

데이터 유형한계코멘트
BFILE 최대 크기: 4GB
파일 이름의 최대 크기: 255자
디렉터리 이름의 최대 크기: 128바이트
열려 있는 BFILE의 최대 수: 설명 참조
최대 수는 초기화 매개변수 BFILEs의 값에 의해 제한되며 SESSION_MAX_OPEN_FILES, 이 매개변수 자체는 운영 체제에서 허용하는 최대 열린 파일 수에 의해 제한됩니다.
BLOB 최대 크기: (4GB - 1) * DB_BLOCK_SIZE초기화 매개변수(8TB ~ 128TB) 테이블당 LOB 열 수는 테이블당 최대 열 수(즉, 1000 피트 1 )에 의해서만 제한됩니다.
CHAR 최대 크기: 2000바이트 없음
CLOB 최대 크기: (4GB - 1) * DB_BLOCK_SIZE초기화 매개변수(8TB ~ 128TB) 테이블당 LOB 열 수는 테이블당 최대 열 수(즉, 1000 피트 1 )에 의해서만 제한됩니다.
리터럴(SQL 또는 PL/SQL의 문자 또는 숫자) 최대 크기: 4000자 없음
LONG 최대 크기: 2GB - 1 테이블당 하나의 열만 LONG허용됩니다.
NCHAR 최대 크기: 2000바이트 없음
NCLOB 최대 크기: (4GB - 1) * DB_BLOCK_SIZE초기화 매개변수(8TB ~ 128TB) 테이블당 LOB 열 수는 테이블당 최대 열 수(즉, 1000 피트 1 )에 의해서만 제한됩니다.
NUMBER 999...(38 9's) x10 125 최대값
-999...(38 9's) x10 125 최소값
전체 38자리 정밀도(가수)로 표현 가능
전체 38자리 정밀도(가수)로 표현 가능
NVARCHAR2 최대 크기: 4000바이트 또는 MAX_STRING_SIZE초기화 매개변수가 다음으로 설정된 경우 32767바이트EXTENDED
추가 세부사항은 " MAX_STRING_SIZE " 초기화 매개변수를 참조하십시오.
없음
정도 유효 숫자 38개 없음
RAW 최대 크기: 2000바이트 또는 MAX_STRING_SIZE초기화 매개변수가 다음으로 설정된 경우 32767바이트EXTENDED
추가 세부사항은 " MAX_STRING_SIZE " 초기화 매개변수를 참조하십시오.
없음
VARCHAR2 최대 크기: 4000바이트 또는 MAX_STRING_SIZE초기화 매개변수가 다음으로 설정된 경우 32767바이트EXTENDED
추가 세부사항은 " MAX_STRING_SIZE " 초기화 매개변수를 참조하십시오.
없음

각주 1

테이블의 절대 최대 열 수는 1000입니다. 그러나 객체 테이블(또는 객체 열, 중첩 테이블, 가변형 또는 REF유형의 열이 있는 관계형 테이블)을 생성할 때 Oracle은 사용자 정의 유형의 열을 다음 테이블에 매핑합니다. 관계형 열을 사용하여 실제로 1000개 열 제한에 포함되는 숨겨진 열을 생성합니다. Oracle이 해당 테이블의 총 열 수를 계산하는 방법에 대한 자세한 내용은 Oracle Database Administrator's Guide를 참조하십시오 .

 

참조 : https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/datatype-limits.html#GUID-963C79C9-9303-49FE-8F2D-C8AAF04D3095

반응형
Posted by [PineTree]