DB2-스토리지 그룹

이 장에서는 데이터베이스 저장소 그룹에 대해 설명합니다.

소개

데이터베이스 테이블 또는 개체를 저장하는 저장소 경로 집합은 저장소 그룹입니다. 스토리지 그룹에 테이블 스페이스를 할당 할 수 있습니다. 데이터베이스를 생성하면 모든 테이블 스페이스가 기본 스토리지를 사용합니다. 데이터베이스의 기본 스토리지 그룹은 'IBMSTOGROUP'입니다. 새 데이터베이스를 생성 할 때 "CREATE DATABASE"명령 끝에 "AUTOMATIC STOGROUP NO"매개 변수를 전달하면 기본 저장소 그룹이 활성화됩니다. 데이터베이스에는 기본 저장소 그룹이 없습니다.

스토리지 그룹 나열

데이터베이스의 모든 저장소 그룹을 나열 할 수 있습니다.

Syntax: [현재 데이터베이스에서 사용 가능한 스토리지 그룹 목록을 보려면]

db2 select * from syscat.stogroups

Example: [현재 데이터베이스에서 사용 가능한 스토리지 목록보기]

db2 select * from syscat.stogroups

스토리지 그룹 생성

다음은 데이터베이스에 저장소 그룹을 만드는 구문입니다.

Syntax: [새 stogroup을 생성합니다. 'stogropu_name'은 새 스토리지 그룹의 이름을 나타내고 'path'는 데이터 (테이블)가 저장된 위치를 나타냅니다.]

db2 create stogroup 
      
        on ‘path’ 
      

Example: [ 'data1'경로 폴더에 새 stogroup 'stg1'을 생성하려면]

db2 create stogroup stg1 on ‘/data1’

Output:

DB20000I The SQL command completed succesfully

stogroup으로 테이블 스페이스 생성

다음은 storegroup으로 테이블 스페이스를 생성하는 방법입니다.

Syntax: [기존 스토리지 그룹을 사용하여 새 테이블 스페이스를 생성하려면]

db2 create tablespace <tablespace_name>  using stogroup <stogroup_name>

Example: [기존 스토리지 그룹 'stg1'을 사용하여 'ts1'이라는 새 테이블 스페이스를 생성하려면]

db2 create tablespace ts1 using stogroup stg1

Output:

DB20000I The SQL command completed succesfully

스토리지 그룹 변경

다음 구문을 사용하여 상점 그룹의 위치를 ​​변경할 수 있습니다.

Syntax: [저장소 그룹을 이전 위치에서 새 위치로 이동하려면]

db2 alter stogroup 
      
        add ‘location’, ‘location’ 
      

Example: [ 'sg1'이라는 스토리지 그룹의 위치 경로를 이전 위치에서 새 위치로 수정하려면]

db2 alter stogroup sg1 add ‘/path/data3’, ‘/path/data4’

스토리지 그룹의 폴더 경로 삭제

스토리지 그룹의 폴더 경로를 삭제하기 전에 alter 명령을 사용하여 스토리지 그룹의 새 위치를 추가 할 수 있습니다.

Syntax: [스토리지 그룹 위치에서 이전 경로를 삭제하려면]

db2 alter stogroup 
      
        drop ‘/path’ 
      

Example: [ 'stg1'에서 스토리지 그룹 위치 삭제]

db2 alter stogroup stg1 drop ‘/path/data1’

테이블 스페이스 재조정

데이터베이스에서 트랜잭션이 수행되고 테이블 스페이스가 가득 차는 동안 스토리지 그룹 또는 테이블 스페이스에 대한 새 폴더를 생성 할 때 테이블 스페이스 재조정이 필요합니다. 재조정은 새 스토리지 그룹으로 데이터베이스 구성 파일을 업데이트합니다.

Syntax: [이전 스토리지 그룹 경로에서 새 스토리지 그룹으로 테이블 스페이스를 재조정하려면]

db2 alter tablspace <ts_name> rebalance

Example: [재조정]

db2 alter tablespace ts1 rebalance

스토리지 그룹 이름 변경

Syntax: [기존 스토리지 이름을 수정하려면]

db2 rename stogroup <old_stg_name> to <new_stg_name>

Example: [스토리지 그룹 이름을 'sg1'에서 새 이름 'sgroup1'로 수정하려면]

db2 rename stogroup sg1 to sgroup1

스토리지 그룹 삭제

Step 1: 스토리지 그룹을 삭제하기 전에 테이블 스페이스에 대해 다른 스토리지 그룹을 할당 할 수 있습니다.

Syntax: [테이블 스페이스에 다른 스토리지 그룹을 지정하려면.]

db2 alter tablspace <ts_name> using stogroup <another sto_group_name>

Example: [테이블 스페이스 'ts1'에 대해 하나의 이전 stogroup에서 'sg2'라는 새 stogroup으로 변경하려면]

db2 alter tablespace ts1 using stogroup sg2

Step 2:

Syntax: [기존 stogroup을 삭제하려면]

db2 drop stogorup <stogroup_name>

Example: [데이터베이스에서 stogroup 'stg1'을 삭제하려면]

db2 drop stogroup stg1