Computer >> 컴퓨터 >  >> 프로그램 작성 >> 데이터 베이스

IBM DB2 데이터베이스 관리

IBM DB2는 IBM이 개발하고 소유한 관계형 데이터베이스입니다. DB2 데이터베이스는 Linux, UNIX 및 Windows(LUW)를 포함한 여러 플랫폼에서 사용할 수 있습니다. DB2는 여러 모델 또는 에디션의 데이터베이스 소프트웨어로 사용할 수 있습니다.

Community Edition으로 알려진 DB2 에디션 중 하나는 개발자에게 평생 무료로 제공되며, 다른 에디션은 라이선스 요구 사항이 있는 Standard 및 Enterprise Edition입니다. 이 블로그에서는 IBM DB2 데이터베이스 관리와 관련된 몇 가지 작업을 공유하고 있습니다. 데이터베이스를 유지 관리하는 정기적인 활동에 유용하게 사용되기를 바랍니다.

  1. 라이선스 세부정보 찾기
  2. DB2 서버, 인스턴스, 데이터베이스 관계
  3. DB2 운영 체제 그룹
  4. 데이터베이스 매개변수 구성si) 전역 수준ii) 인스턴스 수준iii) 데이터베이스 수준
  5. DB2 설치, 클라이언트, 인스턴스, 데이터베이스 생성, 변경, 수정, 삭제
  6. 기본 테이블스페이스, 테이블스페이스 생성, 테이블스페이스 나열
  7. 리스너 구성
  8. 아카이브 구성

1) 라이선스 세부 정보 찾기:제품 라이선스 세부 정보를 확인하려면 아래 명령을 사용하십시오.

$>db2licm -l

제품 이름:"DB2 커뮤니티 에디션"

라이선스 유형:"커뮤니티"

만료 날짜:"영구적"

제품 식별자:"db2dec"

버전 정보:"11.5"

최대 메모리 양(GB):"16"

최대 코어 수:"4"

기능:IBM DB2 Performance Management 오퍼링:"라이센스 없음"

2) DB2 서버, 인스턴스, 데이터베이스 관계(분할되지 않음)

아래 그림 1을 확인하십시오. 그림 1에 표시된 대로 Db2 서버는 DB2COPYn과 같은 이름으로 정의할 수 있는 데이터베이스 바이너리 설치 디렉토리입니다. 이 서버는 업그레이드, 마이그레이션에 사용할 수 있으며 서버의 여러 데이터베이스 및 인스턴스에 대해 환경을 고유하게 분리할 수 있습니다. 단일 서버에 여러 DB 서버 설치를 생성할 수 있습니다. DB2 Server는 클러스터의 여러 노드에도 동일한 위치의 파티션으로 설치할 수 있습니다. DB2 서버는 구성 파일(글로벌 CFG로 표시됨)의 매개변수를 사용하여 유지보수할 수 있습니다. DBA는 모든 데이터베이스 및 인스턴스에서 동일한 매개변수 세트로 관리할 수 있는 데이터베이스 및 시스템 자원 관리를 담당하는 환경을 작성하여 여러 DB2 인스턴스를 조정/자동화하는 정책을 작성할 수 있습니다. DB2 인스턴스는 프로세스 세트를 포함하는 부분으로 나눌 수 있습니다. , 스레드 및 메모리 영역, 유지 관리 및 여러 데이터베이스에 연결하기 위한 것입니다. (Depicted DBM CFG)로 알려진 구성 파일을 사용하여 인스턴스를 구성할 수 있으며 리소스 할당을 위한 정책을 생성할 수 있습니다. 애플리케이션 요구 사항에 따라 연결을 위해 포트를 정의할 수 있습니다. DB2 데이터베이스는 여러 논리적 스토리지 그룹, 테이블스페이스, 테이블스페이스의 개체, 트랜잭션 로그(TX LOGS로 표시됨) 및 버퍼 풀로 구성됩니다. 다음 다이어그램은 Db2 서버, 해당 인스턴스 및 연관된 데이터베이스 간의 관계를 보여줍니다.

그림 1:DB2 서버, 인스턴스, 데이터베이스 관계 및 콘텐츠를 나타내는 다이어그램

3) DB2 운영 체제 그룹

Windows에서 기본 인스턴스 이름은 DB2이고 Linux에서는 DB2INST1입니다. 각 인스턴스는 연결을 위한 고유한 포트로 구성할 수 있습니다. 동일한 서버에 여러 인스턴스가 존재할 수 있습니다. DB2 설치는 사용 관련 역할의 데이터 안전 및 보안을 위해 4가지 유형의 OS 그룹으로 구성할 수 있으며, 모든 권한을 가진 데이터베이스 관리자로 SYSADM, 데이터베이스 관리자 인스턴스의 여러 데이터베이스를 관리하기 위한 SYSMON 그룹, DBADM은 특정 데이터베이스에 대한 최상위 권한입니다.

• SYSADM

• SYSCTRL

• 시스템 유지

• SYSMON

• DBADM

4) 데이터베이스 매개변수 구성

그림 1과 같이 IBM DB2를 3단계로 구성할 수 있습니다. 최상위는 DB2 서버 구성, 2단계는 데이터베이스 관리자 구성, 3단계는 데이터베이스 수준 구성입니다.

i) 전역 매개변수의 경우:

설정을 보려면:db2set -all

변경 가능한 모든 매개변수를 나열하려면: db2set -lr

설정을 업데이트하려면:db2set parameter=newvalue

예:db2set db2comm=tcpip

변경되면 db2stop 및 db2start로 모든 인스턴스를 다시 시작해야 합니다.

ii) 인스턴스 레벨 :

설정을 보려면:db2 get dbm cfg

설정을 업데이트하려면:db2 update dbm cfg using parameter_name new-valueEg:db2 update dbm cfg using NUM_DB 5

iii) 데이터베이스 수준:

설정을 보려면:db2 get db cfg for database-name

설정을 업데이트하려면:db2 update db cfg for database-name using parameter new-value

예:db2 update db cfg for sample using AUTO_REORG ON

5) DB2 설치, 인스턴스, 데이터베이스 생성, 변경, 수정, 삭제

주로 Db2 사본으로 구성된 DB2 서버는 동일한 서버의 특정 위치에 있는 하나 이상의 Db2 데이터베이스 제품 설치를 나타냅니다. 각 Db2 버전 사본은 같거나 다른 코드 레벨에 있을 수 있습니다. DB2 버전 9 이상을 사용하면 DB2 버전 9의 DB2COPY1, 버전 10의 DB2COPY2 … 버전 11의 DB2COPY3 등과 같이 동일한 서버에 여러 개의 Db2 사본을 설치하고 실행할 수 있습니다.

여러 DB2 사본의 장점:

i) 동일한 서버에 다른 Db2 데이터베이스 버전이 있는 애플리케이션.

ii) 프로덕션 데이터베이스를 Db2 데이터베이스 제품의 최신 버전으로 이동하기 전에 동일한 컴퓨터에서 테스트하는 기능.

iii) 별도의 DB2 버전에서 활동을 나눌 수 있는 기능.

여러 DB2COPY를 사용할 수 있는 경우 DB2 설치 복사본으로 전환하는 방법:

$>db2swtch -l

DB2COPY1 C:\ IBM\ SQLLIB(기본 DB2 및 IBM 데이터베이스 클라이언트 인터페이스 사본)

$>db2swtch -db2 -d DB2COPY1

전환에 성공했습니다. 현재 기본 DB2 사본은 DB2COPY1입니다.

$>dasupdt (Change DB admin Server to current copy.

SQL22266N DB2 Administration Server가 현재 DB2 Copy에 이미 설치되어 있습니다.

DB2 인스턴스를 유지 관리하는 방법:

DB2CPOPY1의 현재 설치에서 인스턴스를 생성/목록/삭제하고 현재 인스턴스 이름을 설정/보기 위해 아래 명령을 실행할 수 있습니다.

현재 인스턴스를 중지하고 시작하려면 아래 명령을 사용하십시오. 매개변수 start_stop_time 데이터베이스 시작 중지 동작에 영향을 줍니다.

$>Db2stop [ force ]

$>Db2start

Windows 시스템에서 다른 방법을 사용할 수 있으므로 인스턴스의 시작/중지/자동 시작 동작에 서비스를 사용할 수 있습니다.

데이터베이스 관리 목적으로만 데이터베이스 인스턴스를 시작하려면 아래 명령을 사용할 수 있습니다.$>db2start admin mode [ user <username> | group <groupname> ]

또는

$>QUIESCE DATABASE 위의 명령으로 데이터베이스는 SYSADM, SYSMAINT, DBADM 또는 SYSCTRL 권한을 가진 사용자만 액세스할 수 있습니다.$>QUIESCE INSTANCE instance-name

위의 명령을 사용하면 해당 인스턴스의 모든 데이터베이스에 SYSADM, SYSMAINT 또는 SYSCTRL 권한이 있는 사용자만 액세스할 수 있습니다.

QUIESCE 명령의 전체 구문:

데이터베이스 관리 작업이 완료되면 아래 명령을 사용하여 데이터베이스를 DBA 전용 모드에서 모든 모드에서 사용 가능으로 변환할 수 있습니다.

UNQUIESCE DATABASE – Remove database from Quisece mode

UNQUIESCE INSTANCE instance-name – Remove instance and all databases of instance from Quisece mode

데이터베이스 생성 방법: DB2 데이터베이스는 여러 유형의 애플리케이션에 대해 생성할 수 있으며 3가지 작업 부하 범주는 다음과 같습니다.

  • 간단함(온라인 거래 처리),
  • 복잡(온라인 분석 처리)
  • 혼합(OLTP와 OLAP의 혼합 유형)

구문:CREATE database testdb1 ( 옵션 예:암호화, 전체 구문에 대해서는 ibm db2 특정 안내서를 확인하십시오.);

예:db2 create db emp_utf autoconfigure using workload_type simple apply db only

db2 create db emp_utf using codeset utf-8 territory lets us collate using system

db2 drop db emp_utf

6) 기본 테이블스페이스, 테이블스페이스 생성, 테이블스페이스 나열

DB2 데이터베이스의 기본 테이블스페이스 및 버퍼 풀:

DB2 데이터베이스는 3개의 기본 테이블스페이스와 함께 제공되며 기본 테이블스페이스 이외의 애플리케이션 요구사항에 따라 여러 테이블스페이스를 생성할 수 있습니다.:

• SYSCATSPACE – 이 테이블스페이스에는 시스템 카탈로그 관련 세부 정보가 들어 있습니다.

• TEMPSPACE1 – 이 임시 테이블스페이스는 SORTING과 같은 메모리 지향 작업에 사용됩니다.

• USERSPACE1 – 이 테이블스페이스는 기본이 아닌 데이터베이스 개체의 기본값입니다.

DB2 데이터베이스에는 이름이 IBMDEFAULTBP인 하나의 기본 버퍼 풀도 포함되어 있습니다.

DB2 데이터베이스에 테이블스페이스 생성:

샘플 테이블스페이스 생성:

새로 생성된 테이블스페이스에 테이블, 인덱스, 뷰 등과 같은 객체를 생성할 수 있습니다. 예를 들어 MYTBLS1 테이블스페이스에 B라는 테이블 하나를 생성할 수 있습니다.:

테이블스페이스 나열:

아래 명령어를 사용하고 옵션을 사용하여 자세한 정보를 찾을 수 있습니다.

db2 list tablespaces [show details]

7) 리스너 구성

인스턴스 레벨에서 DB2COMM 매개변수를 설정하여 데이터베이스 연결 세부사항을 설정할 수 있습니다. 연결에 포트 60000을 사용하도록 현재 수신기 설정을 변경하겠습니다. 포트가 변경되면 변경된 포트에서 수신을 시작하기 위해 새 연결을 위해 데이터베이스 서비스를 다시 시작해야 합니다. 명령어는 다음과 같습니다.

$>db2set -i db2inst1 DB2COMM=tcpip

$>db2 update dbm cfg using SVCENAME 60000

$>db2stop

$>db2start

9) 아카이브 구성

명령줄 처리기에서 UPDATE DATABASE CONFIGURATION 명령을 사용하여 데이터베이스 로깅 옵션을 구성하려면:

순환 로깅을 사용할지 아카이브 로깅을 사용할지 지정합니다. 순환 로깅을 사용하려면 logarchmeth1 및 **logarchmeth2 데이터베이스 구성 매개변수는 OFF로 설정해야 합니다. 이 설정은 기본값입니다. 아카이브 로깅을 사용하려면 이러한 데이터베이스 구성 매개변수 중 하나 이상을 OFF 이외의 값으로 설정해야 합니다. 예를 들어 아카이브 로깅을 사용하고 아카이브 로그를 디스크에 저장하려면 다음 명령을 실행하십시오.

db2 update db configuration for mydb using logarchmeth1 disk:/u/dbuser/archived_logs

또는

IBM® Data Studio, 데이터베이스 구성 업데이트를 사용하여 데이터베이스 로깅 옵션을 구성할 수도 있습니다. 명령

또는

db2CfgSet API

리두 로그 생성을 방지하려면 CREATE TABLE/INDEX 명령과 함께 NOT LOGGED INITIALLY 옵션을 사용할 수 있습니다.

결론

데이터베이스 관리 작업에는 여러 활동이 포함되며 이 블로그에서 탐색하려고 시도한 몇 가지 프로세스가 있으므로 데이터베이스에서 제공하는 여러 기능에 대해 IBM DB2 데이터베이스를 직접 체험해 보고 싶을 것입니다. 대부분의 SQL 작업은 ANSI(American National Standards Institute)에서 정의한 SQL 표준에 따릅니다. 클러스터형 데이터베이스, 고가용성, 파티셔닝, 복제, 구체화된 보기와 같은 추가 기능은 Oracle, PostgreSQL 및 제품 가격과 같은 다른 인기 있는 RDBMS와 유사한 모든 안전 프로토콜을 유지하고 거의 모든 기술에 대한 연결성을 제공하므로 DB2는 전 세계 개발자들의 독특한 선택이 됩니다. 데이터베이스 시장.

전문가가 데이터베이스 여정을 안내해 드립니다.

피드백 탭을 사용하여 의견을 작성하거나 질문하십시오. 저희와 대화를 시작할 수도 있습니다.