기술 정보
home
채널 소개
home
▪️

TAC에서 TAS DISKSPACE 생성 명령어 실행 시 생성 실패 현상

문서 유형
장애 해결
분야
기타
키워드
TAS
적용 제품 버전
7F S02PS
1 more property

현상

TAC에서 TAS DISKSPACE를 생성하는 SQL 문 실행 시 생성에 실패합니다.

1. TAS DISKSPACE 생성 수행

TAS DISKSPACE를 생성하는 SQL 문 실행 시 정상적으로 DISKSPACE가 생성되어야 합니다.
[tibero@tac1 ~]$ tbsql sys/tibero tbSQL 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Connected to Tibero. SQL> CREATE DISKSPACE DS0 EXTERNAL REDUNDANCY FAILGROUP FG1 DISK '/dev/tas/disk01' name disk01 FAILGROUP FG2 DISK '/dev/tas/disk02' name disk02 FAILGROUP FG3 DISK '/dev/tas/disk03' name disk03 ATTRIBUTE 'AU_SIZE'='4M'; TBR-31006: Cannot create the diskspace. SQL> SQL> !tberr 31006 /* err: -31006 name: ERROR_AS_CREATE_DS desc: Cannot create the diskspace. cause: Cannot create the given diskspace. action: For more information, refer to the logs.; */ SQL>
SQL
복사

2. TAS 인스턴스 로그

로그에서 알 수 있듯이, 지정된 디스크(/dev/tas/disk01disk02disk03)에 접근할 수 없어 DISKSPACE 생성이 실패한 것을 확인할 수 있습니다.
디스크 접근 권한 문제로 확인이 필요합니다.
[2025-04-11T16:54:47.787239] [DDL-68] [I] Executing DDL: CREATE DISKSPACE DS0 EXTERNAL REDUNDANCY FAILGROUP FG1 DISK '/dev/tas/disk01' name disk01 FAILGROUP FG2 DISK '/dev/tas/disk02' name disk02 FAILGROUP FG3 DISK '/dev/tas/disk03' name disk03 ATTRIBUTE 'AU_SIZE'='4M' [2025-04-11T16:54:47.787283] [AS-68] [I] create diskspace[DS0] master 1 [2025-04-11T16:54:47.787340] [AS-68] [F] cannot open or get disk size for "/dev/tas/disk01" [2025-04-11T16:54:47.787342] [AS-68] [F] cannot open or get disk size for "/dev/tas/disk02" [2025-04-11T16:54:47.787343] [AS-68] [F] cannot open or get disk size for "/dev/tas/disk03" [2025-04-11T16:54:47.787345] [AS-68] [W] failed to discover disks (rc=-1) [2025-04-11T16:54:47.787355] [FRM-68] [I] THROW. ec=ERROR_AS_CREATE_DS(-31006) [ Cannot create the diskspace. ] (sql_id:fd1x6nuw8n5ya, sub_sql_id:(null), user:SYS, ap_module:(null), program:tbsql, host:tac1) [as_ds.c:1534:as_create_diskspace]
SQL
복사

원인

udev rule 적용 누락으로 인해 디스크 접근 권한이 부족하여 DISKSPACE 생성에 실패했습니다.
udev rule 설정 이후 udevadm 또는 reboot을 통해 적용하지 않아 /dev/tas/ 디렉토리 내 디스크 심볼릭 링크가 root 권한으로 남아 있었고, 실제 디스크(/dev/sdb/dev/sdc/dev/sdd)의 소유자가 tibero가 아닌 경우 create diskspace 수행 시 디스크 접근 불가로 DISKSPACE 생성에 실패했습니다.

해결

udev rule 점검 후 재적용하여 디스크 권한을 DB User로 수정합니다.
아래와 같이 udev rule을 설정하여 /dev/tas/ 하위 디스크에 대해 OWNER=tibero 설정
udevadm trigger 명령어를 사용하여 rule을 즉시 적용하거나 시스템 Reboot 수행
재적용 방법은 아래와 같이 rebooting 또는 udevadm 명령어를 사용
[root@tac1 ~]# reboot 또는 [root@tac1 ~]# udevadm control --reload-rules [root@tac1 ~]# udevadm trigger --type=devices --action=change
SQL
복사
이후, DISKSPACE 정상 생성됨을 확인할 수 있습니다.
[root@tac1 ~]# cat /etc/udev/rules.d/99-tas.rules ACTION=="add|change", KERNEL=="sdb", ENV{ID_SERIAL}=="device system unique id", SYMLINK+="tas/disk01", OWNER="tibero", GROUP="dba", MODE="0660" ACTION=="add|change", KERNEL=="sdc", ENV{ID_SERIAL}=="device system unique id", SYMLINK+="tas/disk02", OWNER="tibero", GROUP="dba", MODE="0660" ACTION=="add|change", KERNEL=="sdd", ENV{ID_SERIAL}=="#디스크의 WWID 값", SYMLINK+="tas/disk03", OWNER="tibero", GROUP="dba", MODE="0660"
SQL
복사