Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
본 장에서는 ZetaData의 각 구성 요소에 대한 장애 복구 방법을 설명합니다.

$ sudo apt-cache search libibverb$ sudo apt-get install libibverbs-dev$ yum install libibverbs-devel libibverbs-devel-static$ ./mlnxofedinstall$ echo "CONNECTED_MODE=yes
> TYPE=InfiniBand
> BOOTPROTO=none
> DEFROUTE=yes
> #IPV4_FAILURE_FATAL=no
> #IPV6INIT=yes
> #IPV6_AUTOCONF=yes
> #IPV6_DEFROUTE=yes
> #IPV6_FAILURE_FATAL=no
> NAME=ib0
> #UUID=6842318b-35d2-475a-8ae2-b3f9ec6b787a
> DEVICE=ib0
> ONBOOT=yes
> IPADDR=10.10.10.11
> NETMASK=255.255.255.0
> #PREFIX=32
> #IPV6_PEERDNS=yes
> #IPV6_PEERROUTES=yes" > /etc/sysconfig/network-scripts/ifcfg-ib0$ systemctl enable opensmd.service
$ service opensmd start$ ip addr show ib0
8: ib0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65520 qdisc pfifo_fast \
state UP qlen 1024
link/infiniband 80:00:00:2c:fe:80:00:00:00:00:00:00:50:65:f3:ff:ff:88:81:d0 \
brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
inet 10.10.10.11/24 brd 10.10.10.255 scope global ib0
valid_lft forever preferred_lft forever
inet6 fe80::5265:f3ff:ff88:81d0/64 scope link
valid_lft forever preferred_lft forever
$ ibv_rc_pingpong
local address: LID 0x0006, QPN 0x008382, PSN 0xc85390, GID ::
remote address: LID 0x0002, QPN 0x02e388, PSN 0xb0671b, GID ::
8192000 bytes in 0.01 seconds = 10726.02 Mbit/sec
1000 iters in 0.01 seconds = 6.11 usec/iter$ ip addr show ib0
8: ib0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65520 qdisc pfifo_fast \
state UP qlen 1024
link/infiniband 80:00:00:2c:fe:80:00:00:00:00:00:00:50:65:f3:ff:ff:88:71:40 \
brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
inet 10.10.10.12/24 brd 10.10.10.255 scope global ib0
valid_lft forever preferred_lft forever
inet6 fe80::5265:f3ff:ff88:7140/64 scope link
valid_lft forever preferred_lft forever
$ ibv_rc_pingpong 10.10.10.11
local address: LID 0x0002, QPN 0x02e388, PSN 0xb0671b, GID ::
remote address: LID 0x0006, QPN 0x008382, PSN 0xc85390, GID ::
8192000 bytes in 0.00 seconds = 13317.62 Mbit/sec
1000 iters in 0.00 seconds = 4.92 usec/iter$ tbsql sys/tibero@tas0
SQL> alter diskspace DS0 drop disks in failgroup FG0 rebalance wait;$ tbsql sys/tibero@tas0
SQL> alter diskspace DS0 add failgroup FG0
disk '-10.10.10.11/GD0' name DISK0 size 64G,
'-10.10.10.11/GD1' name DISK1 size 64G
rebalance wait;본 장에서는 ZetaData의 주요 기능인 스토리지 데이터 맵(Storage Data Map)에 대해 설명합니다.

SQL> alter system checkpoint;SQL> select a.type, a.block_size, b.name from v$as_file a, v$as_alias b
where a.file_number = b.file_number;$ tbascmd 9120
ASCMD> cptolocal +DS0/c1.ctl /home/node0/c1.ctl$ ls /home/node0
c1.ctl c1.ctl_rollback.shcpfromlocal /home/node1/c1.ctl +DS0/c1.ctl -b 16384 -t CTRL
cpfromlocal /home/node1/log001.log +DS0/log001.log -b 512 -t REDO
cpfromlocal /home/node1/usr001.tdf +DS0/usr001.dtf -b 32768 -t DATA
cpfromlocal /home/node1/temp001.dtf +DS0/temp001.dtf -b 32768 -t TEMP
cpfromlocal /home/node1/log-t0-r0-s1.arc +DS0/ARCH/log-t0-r0-s1.arc -b 512 -t ARCHABS, ADD_MONTHS, ASCII, ASCIISTR, BETWEEN, BITAND, CASE, CEIL, CHR, COALESCE, DECODE, DUMP, EXP, EXTRACT, FLOOR, FROM_TZ
HEXTORAW, INITCAP, INSTR, INSTRB, ISSEQUENCEWORDS,
LAST_DAY, LENGTH, LENGTHB, LENGTHC, LIKE, LNNVL, LOG, LOWER, LPAD, LTRIM, MOD, MONTHS_BETWEEN, NEW_TIME, NEXT_DAY, NULLIF, NUMTODSINTERVAL, NUMTOYMINTERVAL, NVL, NVL2, OVERLAPS, RAWTOHEX, REVERSE, ROUND, ROWIDTOCHAR,
RPAD, RTRIM, SIGN, SQRT, SUBSTR, SUBSTRB, SYS_EXTRACT_UTC,
TO_CHAR(Lob 타입은 지원하지 않음), TO_DATE, TO_DSINTERVAL, TO_MULTI_BYTE, TO_NCHAR, TO_NUMBER, TO_SINGLE_BYTE, TO_TIME, TO_TIMESTAMP, TO_TIMESTAMP_TZ, TO_YMINTERVAL, TRANSLATE, TRIM, TRUNC, UPPER, VSIZE

CREATE TABLE {table-name} COMPRESS FOR QUERY LOWCREATE TABLE {table-name} COMPRESS FOR QUERY HIGHCREATE TABLE {table-name} COMPRESS FOR ARCHIVE LOWCREATE TABLE {table-name} COMPRESS FOR ARCHIVE HIGHCREATE TABLE T(A NUMBER) COMPRESS FOR QUERY HIGH
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> alter flashcache checkpoint;
altered.
SQL>$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> drop flashcache flash0;
dropped.
SQL>$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> select * from V$SSVR_FLASHCACHE;
FLASHCACHE_NUMBER NAME PATH OS_BYTES
----------------- ----------------------- -------------------------- -----------
0 FLASH1 /dev/zeta-flash1 5.3687E+10
1 FLASH2 /dev/zeta-flash2 5.3687E+10
2 FLASH3 /dev/zeta-flash3 5.3687E+10
3 rows selected.
SQL>
$ grep MemTotal /proc/meminfo
MemTotal: 98707668 kB$ fdisk -l
Disk /dev/sdd: 4000.8 GB, 4000753475584 bytes, 7813971632 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk label type: dos
Disk identifier: 0x00000000
...$ ls -al /dev
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk0 -> sda
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk1 -> sdb
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk2 -> sdc
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk3 -> sdd
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk4 -> sde
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk5 -> sdf
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk6 -> sdg
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk7 -> sdh
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk8 -> sdi
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk9 -> sdj
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk10 -> sdk
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/disk11 -> sdl
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/flash0 -> nvme0n1
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/flash1 -> nvme1n1
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/flash2 -> nvme2n1
lrwxrwxrwx. 1 root root 3 Aug 13 19:50 /dev/flash3 -> nvme3n1
$ cat /etc/udev/rules.d/zetadisk.rules
KERNEL=="sdb", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32750", \
SYMLINK+="disk0", OWNER="zeta", MODE="0600"
KERNEL=="sdc", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32751", \
SYMLINK+="disk1", OWNER="zeta", MODE="0600"
KERNEL=="sdd", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32752", \
SYMLINK+="disk2", OWNER="zeta", MODE="0600"
KERNEL=="sde", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32753", \
SYMLINK+="disk3", OWNER="zeta", MODE="0600"
KERNEL=="sdf", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32754", \
SYMLINK+="disk4", OWNER="zeta", MODE="0600"
KERNEL=="sdg", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32755", \
SYMLINK+="disk5", OWNER="zeta", MODE="0600"
KERNEL=="sdh", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32756", \
SYMLINK+="disk6", OWNER="zeta", MODE="0600"
KERNEL=="sdi", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32757", \
SYMLINK+="disk7", OWNER="zeta", MODE="0600"
KERNEL=="sdj", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32758", \
SYMLINK+="disk8", OWNER="zeta", MODE="0600"
KERNEL=="sdk", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32759", \
SYMLINK+="disk9", OWNER="zeta", MODE="0600"
KERNEL=="sdl", SUBSYSTEM=="block", \
ENV{ID_SERIAL}=="3600508b1001cdc32710", \
SYMLINK+="disk10", OWNER="zeta", MODE="0600"
KERNEL=="nvme0n1", SYMLINK+="flash0", OWNER="zeta", MODE="0600"
KERNEL=="nvme1n1", SYMLINK+="flash1", OWNER="zeta", MODE="0600"
KERNEL=="nvme2n1", SYMLINK+="flash2", OWNER="zeta", MODE="0600"
KERNEL=="nvme3n1", SYMLINK+="flash3", OWNER="zeta", MODE="0600"
$ /usr/lib/udev/scsi_id --whitelisted --device=/dev/sda
3600508b1001cdc32750/etc/sysctl.confkernel.sem = 100000 100000 100000 100000
kernel.shmmax = 17179869184
kernel.shmall = 24718805
fs.aio-max-nr = 4194304
fs.file-max = 8388608
vm.max_map_count = 262144$ getconf PAGE_SIZE
4096net.core.rmem_default = 4194304
net.core.wmem_default = 4194304
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864# ssvr0.tip
INSTANCE_TYPE=SSVR
LISTENER_PORT=9100
CONTROL_FILES="/home/tibero/zetadata/database/ssvr0/c1.ctl"
TOTAL_SHM_SIZE=15G
MEMORY_TARGET=70G
SSVR_RECV_PORT_START=9110SSVR 인스턴스 기준
MEMORY_TARGET = (전체 메모리양)
- [(DB 노드 개수)
* {(TAC 인스턴스의 Max Session Count)
+ (TAC 인스턴스의 PEP thread 전체 개수)}] * 4MB
- 10GB(=OS 및 타 thread의 connection 여유분)
** (TAC 인스턴스의 PEP thread 전체 개수) = (TAC 인스턴스의 PEP Process 개수)
* (PEP process 당 thread 개수)
** TAC 인스턴스의 PEP thread 전체 개수 계산은 하나의 TAC 인스턴스를 기준으로 함.ssvr0=((INSTANCE=(HOST=10.10.10.13)(PORT=9100)))
ssvr1=((INSTANCE=(HOST=10.10.10.14)(PORT=9100)))
ssvr2=((INSTANCE=(HOST=10.10.10.15)(PORT=9100)))
tas0=((INSTANCE=(HOST=10.10.10.11)(PORT=9120)))
tas1=((INSTANCE=(HOST=10.10.10.12)(PORT=9120)))
tac0=((INSTANCE=(HOST=10.10.10.11)(PORT=9150)(DB_NAME=TAC)))
tac1=((INSTANCE=(HOST=10.10.10.12)(PORT=9150)(DB_NAME=TAC)))$ export TB_SID=ssvr0
$ tbboot -t nomount
Listener port = 9100
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NOMOUNT mode).
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create storage server;
created.$ tbboot -t mount
Listener port = 9100
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (MOUNT mode).create storage disk {storage-disk-name} path {path} size {storage-disk-size}$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create storage disk SD00 path '/dev/disk0' size 3350G;
created.
SQL> create storage disk SD01 path '/dev/disk1' size 3725G;
created.
SQL> create storage disk SD02 path '/dev/disk2' size 3725G;
created.
SQL> create storage disk SD03 path '/dev/disk3' size 3725G;
created.
SQL> create storage disk SD04 path '/dev/disk4' size 3725G;
created.
SQL> create storage disk SD05 path '/dev/disk5' size 3725G;
created.
SQL> create storage disk SD06 path '/dev/disk6' size 3725G;
created.
SQL> create storage disk SD07 path '/dev/disk7' size 3725G;
created.
SQL> create storage disk SD08 path '/dev/disk8' size 3725G;
created.
SQL> create storage disk SD09 path '/dev/disk9' size 3725G;
created.
SQL> create storage disk SD10 path '/dev/disk10' size 3725G;
created.
SQL> create storage disk SD11 path '/dev/disk11' size 3725G;
created.SQL> select * from v$ssvr_storage_disk;
STORAGE_DISK_NUMBER NAME PATH OS_BYTES
------------------- ------ ----------- ---------
0 SD00 /dev/disk0 4.000E+12
1 SD01 /dev/disk1 4.000E+12
2 SD02 /dev/disk2 4.000E+12
3 SD03 /dev/disk3 4.000E+12
4 SD04 /dev/disk4 4.000E+12
5 SD05 /dev/disk5 4.000E+12
6 SD06 /dev/disk6 4.000E+12
7 SD07 /dev/disk7 4.000E+12
8 SD08 /dev/disk8 4.000E+12
9 SD09 /dev/disk9 4.000E+12
10 SD10 /dev/disk10 4.000E+12
11 SD11 /dev/disk11 4.000E+12create grid disk {grid-disk-name} storage disk {storage-disk-name} \
offset {offset} size {grid-disk-size}SQL> create grid disk GD00 storage disk SD00;
created.
SQL> create grid disk GD01 storage disk SD01;
created.
SQL> create grid disk GD02 storage disk SD02;
created.
SQL> create grid disk GD03 storage disk SD03;
created.
SQL> create grid disk GD04 storage disk SD04;
created.
SQL> create grid disk GD05 storage disk SD05;
created.
SQL> create grid disk GD06 storage disk SD06;
created.
SQL> create grid disk GD07 storage disk SD07;
created.
SQL> create grid disk GD08 storage disk SD08;
created.
SQL> create grid disk GD09 storage disk SD09;
created.
SQL> create grid disk GD10 storage disk SD10;
created.
SQL> create grid disk GD11 storage disk SD11;
created.SQL> select * from v$ssvr_grid_disk;
GRID_DISK_NUMBER NAME STORAGE_DISK_NUMBER STORAGE_DISK_OFFSET TOTAL_BYTES
---------------- ------ ------------------- ------------------- -----------
0 GD00 0 0 4.000E+12
1 GD01 1 0 4.000E+12
2 GD02 2 0 4.000E+12
3 GD03 3 0 4.000E+12
4 GD04 4 0 4.000E+12
5 GD05 5 0 4.000E+12
6 GD06 6 0 4.000E+12
7 GD07 7 0 4.000E+12
8 GD08 8 0 4.000E+12
9 GD09 9 0 4.000E+12
10 GD10 10 0 4.000E+12
11 GD11 11 0 4.000E+12create flashcache {name} path {path} size {flashcache-size}SQL> create flashcache flash0 path '/dev/flash0' size 1490G;
created.
SQL> create flashcache flash1 path '/dev/flash1' size 1490G;
created.
SQL> create flashcache flash2 path '/dev/flash2' size 1490G;
created.
SQL> create flashcache flash3 path '/dev/flash3' size 1490G;
created.
SQL> quit
Disconnected.
$ tbdown
Tibero instance terminated (NORMAL mode).
$ tbboot -t mount
Listener port = 9100
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (MOUNT mode).SQL> select * from v$ssvr_flashcache;
FLASHCACHE_NUMBER NAME PATH OS_BYTES
----------------- ------ ----------- ---------
0 FC0 /dev/flash0 1.600E+12
1 FC1 /dev/flash1 1.600E+12
2 FC2 /dev/flash2 1.600E+12
3 FC3 /dev/flash3 1.600E+12
# Example
# {storage node #0 IP}/{port}
# {storage node #1 IP}/{port}
# {storage node #2 IP}/{port}
10.10.10.13/9110
10.10.10.14/9110
10.10.10.15/9110ssvr0=((INSTANCE=(HOST=10.10.10.13)(PORT=9100)))
ssvr1=((INSTANCE=(HOST=10.10.10.14)(PORT=9100)))
ssvr2=((INSTANCE=(HOST=10.10.10.15)(PORT=9100)))
tas0=((INSTANCE=(HOST=10.10.10.11)(PORT=9120)))
tas1=((INSTANCE=(HOST=10.10.10.12)(PORT=9120)))
tac0=((INSTANCE=(HOST=10.10.10.11)(PORT=9150)(DB_NAME=TAC)))
tac1=((INSTANCE=(HOST=10.10.10.12)(PORT=9150)(DB_NAME=TAC)))# tas0.tip
INSTANCE_TYPE=AS
LISTENER_PORT=9120
TOTAL_SHM_SIZE=4G
MEMORY_TARGET=5G
CLUSTER_DATABASE=Y
LOCAL_CLUSTER_ADDR=10.10.10.11
LOCAL_CLUSTER_PORT=9130
CM_PORT=9140
THREAD=0
DB_BLOCK_SIZE=4K
AS_SCAN_SSVR_DISK=Y
USE_ZETA=Y$ export TB_SID=tas0
$ tbboot -t nomount
Listener port = 9120
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NOMOUNT mode).
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create diskspace DS0 normal redundancy
failgroup FG1 disk
'-10.10.10.13/GD00' name DISK00 size 3350G,
'-10.10.10.13/GD01' name DISK01 size 3725G,
'-10.10.10.13/GD02' name DISK02 size 3725G,
'-10.10.10.13/GD03' name DISK03 size 3725G,
'-10.10.10.13/GD04' name DISK04 size 3725G,
'-10.10.10.13/GD05' name DISK05 size 3725G,
'-10.10.10.13/GD06' name DISK06 size 3725G,
'-10.10.10.13/GD07' name DISK07 size 3725G,
'-10.10.10.13/GD08' name DISK08 size 3725G,
'-10.10.10.13/GD09' name DISK09 size 3725G,
'-10.10.10.13/GD10' name DISK10 size 3725G,
'-10.10.10.13/GD11' name DISK11 size 3725G
failgroup FG2 disk
'-10.10.10.14/GD00' name DISK20 size 3350G,
'-10.10.10.14/GD01' name DISK21 size 3725G,
'-10.10.10.14/GD02' name DISK22 size 3725G,
'-10.10.10.14/GD03' name DISK23 size 3725G,
'-10.10.10.14/GD04' name DISK24 size 3725G,
'-10.10.10.14/GD05' name DISK25 size 3725G,
'-10.10.10.14/GD06' name DISK26 size 3725G,
'-10.10.10.14/GD07' name DISK27 size 3725G,
'-10.10.10.14/GD08' name DISK28 size 3725G,
'-10.10.10.14/GD09' name DISK29 size 3725G,
'-10.10.10.14/GD10' name DISK30 size 3725G,
'-10.10.10.14/GD11' name DISK31 size 3725G
failgroup FG3 disk
'-10.10.10.15/GD00' name DISK40 size 3350G,
'-10.10.10.15/GD01' name DISK41 size 3725G,
'-10.10.10.15/GD02' name DISK42 size 3725G,
'-10.10.10.15/GD03' name DISK43 size 3725G,
'-10.10.10.15/GD04' name DISK44 size 3725G,
'-10.10.10.15/GD05' name DISK45 size 3725G,
'-10.10.10.15/GD06' name DISK46 size 3725G,
'-10.10.10.15/GD07' name DISK47 size 3725G,
'-10.10.10.15/GD08' name DISK48 size 3725G,
'-10.10.10.15/GD09' name DISK49 size 3725G,
'-10.10.10.15/GD10' name DISK50 size 3725G,
'-10.10.10.15/GD11' name DISK51 size 3725G
attribute 'AU_SIZE' = '4M';
created.SQL> select * from v$as_diskspace;
DISKSPACE_NUMBER NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE
----------------- ------ ------------ ----------- ---------------------
0 DS0 512 4096 4194304
STATE TYPE TOTAL_MB FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB
------- ------- --------- --------- ----------------------- --------------
MOUNT NORMAL 33666928 30482600 106152 14710574# cm0.tip
CM_NAME=cm0
CM_UI_PORT=9140
CM_RESOURCE_FILE="/home/tibero/zetadata/cm0_res.crf"$ export CM_HOME=$TB_HOME
$ export CM_SID=cm0
$ tbcm -b
CM Guard demon started up.
TBCM 7.1.1 (Build -)
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero cluster manager started up.
Local node name is (cm0:9140).
$ cmrctl add network --name net0 --ipaddr 10.10.10.11 --portno 1000
Resource add success! (network, net0)
$ cmrctl add cluster --name cls --incnet net0 --cfile "-"
Resource add success! (cluster, cls)
$ cmrctl start cluster --name cls
MSG SENDING SUCCESS!
$ cmrctl add service --name TAS --type as --cname cls
Resource add success! (service, TAS)
$ cmrctl add as --name tas0 --svcname TAS --dbhome "$TB_HOME"
Resource add success! (as, tas0)
$ cmrctl start as --name tas0
Listener port = 9120
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NORMAL mode).
BOOT SUCCESS! (MODE : NORMAL)$ export TB_SID=tas0
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> alter diskspace DS0 add thread 1;
Diskspace altered.# tas1.tip
INSTANCE_TYPE=AS
LISTENER_PORT=9120
TOTAL_SHM_SIZE=4G
MEMORY_TARGET=5G
CLUSTER_DATABASE=Y
LOCAL_CLUSTER_ADDR=10.10.10.12
LOCAL_CLUSTER_PORT=9130
CM_PORT=9140
THREAD=1
DB_BLOCK_SIZE=4K
AS_SCAN_SSVR_DISK=Y
USE_ZETA=Y# cm1.tip
CM_NAME=1
CM_UI_PORT=9140
CM_RESOURCE_FILE="/home/tibero/zetadata/cm1_res.crf"$ export TB_SID=tas1
$ export CM_HOME=$TB_HOME
$ export CM_SID=cm1
$ tbcm -b
CM Guard demon started up.
TBCM 7.1.1 (Build -)
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero cluster manager CM started up.
Local node name is (cm1:9140).
$ cmrctl add network --name net1 --ipaddr 10.10.10.12 --portno 1000
Resource add success! (network, net1)
$ cmrctl add cluster --name cls --incnet net1 --cfile "-"
Resource add success! (cluster, cls)
$ cmrctl start cluster --name cls
MSG SENDING SUCCESS!
$ cmrctl add as --name tas1 --svcname TAS --dbhome "$TB_HOME"
Resource add success! (as, tas1)
$ cmrctl start as --name tas1
Listener port = 9120
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NORMAL mode).
BOOT SUCCESS! (MODE : NORMAL)# tac0.tip
DB_NAME=TAC
LISTENER_PORT=9150
CONTROL_FILES="+DS0/c1.ctl"
LOG_ARCHIVE_DEST="+DS0/ARCH"
MAX_SESSION_COUNT=300
TOTAL_SHM_SIZE=60G
MEMORY_TARGET=270G
CLUSTER_DATABASE=Y
LOCAL_CLUSTER_ADDR=10.10.10.11
LOCAL_CLUSTER_PORT=9160
CM_PORT=9140
THREAD=0
UNDO_TABLESPACE=UNDO0
DB_BLOCK_SIZE=32K
AS_PORT=9120
USE_ACTIVE_STORAGE=Y
_USE_O_DIRECT=Y
USE_ZETA=YTAC 인스턴스 기준
MEMORY_TARGET = (전체 메모리양)
- (Storage 노드 개수)
* {(TAC 인스턴스의 Max Session Count)
+ (TAC 인스턴스의 PEP thread 전체 개수)} * 4MB
- (노드 내 TAS 인스턴스의 Memory Target)
- 10GB(=OS 및 타 thread의 connection 여유분)
** (TAC 인스턴스의 PEP thread 전체 개수) = (TAC 인스턴스의 PEP Process 개수)
* (PEP process 당 thread 개수)
** TAC 인스턴스의 PEP thread 전체 개수 계산은 현재 TAC 인스턴스를 기준으로 함.$ export CM_HOME=$TB_HOME
$ export CM_SID=cm0
$ cmrctl add service --name TAC --type db --cname cls
Resource add success! (service, TAC)
$ cmrctl add db --name tac0 --svcname TAC --dbhome "$TB_HOME"
Resource add success! (db, tac0)$ export TB_SID=tac0
$ tbboot -t nomount
Listener port = 9150
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NOMOUNT mode).
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create database "TAC"
user sys identified by tibero
maxinstances 32
maxdatafiles 2048
character set MSWIN949
logfile group 1 '+DS0/log0001.log' size 2G,
group 2 '+DS0/log0002.log' size 2G,
group 3 '+DS0/log0003.log' size 2G
maxloggroups 255
maxlogmembers 8
datafile '+DS0/system.dtf' size 4G
autoextend on next 64M maxsize 128G
syssub datafile '+DS0/syssub.dtf' size 4G
autoextend on next 64M maxsize 128G
default temporary tablespace TEMP tempfile
'+DS0/temp000.dtf' size 128G autoextend off,
'+DS0/temp001.dtf' size 128G autoextend off,
'+DS0/temp002.dtf' size 128G autoextend off,
'+DS0/temp003.dtf' size 128G autoextend off,
.
.
.
'+DS0/temp098.dtf' size 128G autoextend off,
'+DS0/temp099.dtf' size 128G autoextend off
undo tablespace UNDO0 datafile
'+DS0/undo00.dtf' size 128G autoextend off,
'+DS0/undo01.dtf' size 128G autoextend off,
'+DS0/undo02.dtf' size 128G autoextend off
default tablespace USR
datafile '+DS0/usr.dtf' size 32G
autoextend on next 64M maxsize unlimited;
Database created.
SQL> Disconnected.
$ tbboot
Listener port = 9150
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NORMAL mode).$ export TB_SID=tac0
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create undo tablespace UNDO1 datafile
'+DS0/undo03.dtf' size 128G autoextend off,
'+DS0/undo04.dtf' size 128G autoextend off,
'+DS0/undo05.dtf' size 128G autoextend off;
SQL> alter database add logfile thread 1 group 4 '+DS0/log004.log' size 2G;
SQL> alter database add logfile thread 1 group 5 '+DS0/log005.log' size 2G;
SQL> alter database add logfile thread 1 group 6 '+DS0/log006.log' size 2G;
SQL> alter database enable public thread 1;
SQL> Disconnected.# tac1.tip
DB_NAME=TAC
LISTENER_PORT=9150
CONTROL_FILES="+DS0/c1.ctl"
LOG_ARCHIVE_DEST="+DS0/ARCH"
MAX_SESSION_COUNT=300
TOTAL_SHM_SIZE=60G
MEMORY_TARGET=270G
CLUSTER_DATABASE=Y
LOCAL_CLUSTER_ADDR=10.10.10.12
LOCAL_CLUSTER_PORT=9160
CM_PORT=9140
THREAD=1
UNDO_TABLESPACE=UNDO1
DB_BLOCK_SIZE=32K
AS_PORT=9120
USE_ACTIVE_STORAGE=Y
_USE_O_DIRECT=Y
USE_ZETA=YTAC 인스턴스 기준
MEMORY_TARGET = (전체 메모리양)
- (Storage 노드 개수)
* {(TAC 인스턴스의 Max Session Count)
+ (TAC 인스턴스의 PEP thread 전체 개수)} * 4MB
- (노드 내 TAS 인스턴스의 Memory Target)
- 10GB(=OS 및 타 thread의 connection 여유분)
** (TAC 인스턴스의 PEP thread 전체 개수) = (TAC 인스턴스의 PEP Process 개수)
* (PEP process 당 thread 개수)
** TAC 인스턴스의 PEP thread 전체 개수 계산은 현재 TAC 인스턴스를 기준으로 함.$ export TB_SID=tac1
$ export CM_HOME=$TB_HOME
$ export CM_SID=cm1
$ cmrctl add db --name tac1 --svcname TAC --dbhome "$TB_HOME"
Resource add success! (db, tac1)
$ cmrctl start db --name tac1
Listener port = 9150
Tibero 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NORMAL mode).
BOOT SUCCESS! (MODE : NORMAL)SQL> select * from v$ssvr_client;
ADDRESS PORT NAME TRHEAD_NUMBER
--------- ------ ---------- ----------------
127.0.0.1 36088 TAS 0
127.0.0.1 36070 CLIENT_LIB 0SQL> select * from v$ssvr_slab_stat;
SLAB_SIZE SLAB_GET_CNT TOTAL_CHUNK_CNT MAX_CHUNK_CNT
---------- ------------ --------------- -------------
32768 99838 48 48
1048576 354 48 48
4194304 72 48 48
32768 112967 64 64
4194304 25 16 16
5 rows selected.
SQL> select * from v$ssvr_memstat;
TOTAL_PGA_MEMORY_MB FIXED_PGA_MEMORY_MB USED_PGA_MEMORY_MB
------------------- ------------------- ------------------
TOTAL_SHARED_MEMORY_MB FIXED_SHARED_MEMORY_MB USED_SHARED_MEMORY_MB
---------------------- ---------------------- ---------------------
4092 31 3466
2048 714 1.7592E+13
1 row selected.