◈ 기본 디렉토리 위치. Diag Path : DB2 Instance 환경정보(dbm cfg)에 보면 DIAGPATH 라는것이 있는데 이 위치에 로그 파일들이 적재된다. $ db2 get dbm cfg | grep -i diag Diagnostic data directory path (DIAGPATH) = /jhlee/jhlsle/sqllib/db2dump DasHome : Das는 별도의 인스턴스를 생성하므로 별도 디렉토리에 보관된다. DASHOME/das/dump 1. Administration notification log ("instance_name.nfy") : Diag Path ▶ 운영체제 : 모두 ▶ 기본위치 : – Linux 와 UNIX: diagpath 데이터베이스 관리 프로그램 구성 매..
■ EXPLAIN으로 쿼리 최적화 EXPLAIN 문은 MySQL이 명령문을 실행하는 방법에 대한 정보를 제공합니다. + EXPLAIN은 SELECT, DELETE, INSERT, REPLACE 및 UPDATE문과 함께 작동합니다. + EXPLAIN을 설명문과 함께 사용하면 MySQL은 명령문 실행 계획에 대한 정보를 옵티마이저로부터 표시합니다. 즉, MySQL은 테이블을 조인하는 방법과 순서에 대한 정보를 포함하여 명령문을 처리하는 방법을 설명합니다. EXPLAIN을 사용하여 실행 계획 정보를 얻는 방법에 대한 내용은 아래에서 설명합니다. + EXPLAIN을 설명 가능한 명령문이 아닌 FOR CONNECTION connection_id와 함께 사용하면 명명된 연결에서 실행되는 명령문의 실행 계획이 표시됩..
참고사항 # Offline Backup, Offline Backup의 의미 Online => 사용자가 접속된 상태에서 백업 Offline => 사용자가 없는 상태에서 백업 1. Archive Logging(Online : 별도 로그 디렉토리)로 변경하는 방법 *LOGRETAIN을 ON으로 하거나 LOGARCHMETH1가 다른 방식이면 Archive Logging라고 생각하면 됨. LOGRETAIN ON시 다음과 같이 변경됨. $ db2 update db cfg for sample using LOGRETAIN on Log retain for recovery enabled (LOGRETAIN) = RECOVERY First log archive method (LOGARCHMETH1) = LOGRETAIN 후..
■ 쿼리 형태 insert into table select * from table1, table2, table3 where ... create table as select * from table1, table2, table3 where ... 위 형태의 쿼리를 사용할때는 주의 하여야 합니다. 보통 위의 쿼리는 똑같은 형태의 테이블을 생성하거나 똑같은 데이터를 특정 테이블에 밀어넣을때 많이 사용합니다. 하지만 위의 쿼리를 실행하게 되면 select를 하게되는 table1,table2,table3에는 read lock이 걸리게 됩니다. 이는 isolation level이 REPATABLE_READ일때 발생하게 됩니다. 이 REPATABLE_READ의 특징은 현재 select의 데이터 정합성과 버전을 보장하기..
1. Range Key를 정한 후 테이블을 만든다. create table t1(c1 int) in ts_table1 partition by range(c1) (partition rp1 starting from 1 ending 10 in ts_att1, partition rp2 starting from 11 ending 20 in ts_att2, partition rp3 starting from 21 ending 30 in ts_att3); 2. 각 테이블에 데이터를 저장한다. insert into t1 values(5); insert into t1 values(15); insert into t1 values(25); 3. select 문법으로 데이터를 조회한다. C1 ----------- 5 15 25..
원문 When you have long user names defined, and then decrease the limit to the original value, the command does not tell you which user names defined are too long. After you reboot the system, if longer names are used as the new lower limit, those user names cannot be used for login. See the following example, which illustrates that you cannot login with a longer user name as the new lower limit. ..
■ 사전작업 유의사항 : 장애 및 업데이트 실패를 대비하기 위하며 db2look파일, DBM 정보(인스턴스 정보) 및 DB Parameter정보 그리고 DB백업등 필요한 모든 수단을 강구합니다. 또한 Package를 다시 bind할때 db2rbind로 통째로 할건지 아니면 rebind로 Package를 검증해 나가면서 하나씩 일일이 할것인지 Plan을 정하고 수행하시기 바랍니다. 선작업 : http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.qb.server.doc/doc/t0024956.html 1. 루트 설치의 경우 루트로 로그온합니다. 비루트 설치의 경우 비루트 설치를 소유할 사용자 ID를 사용하여..
■ LOCK TABLES 그리고 UNLOCK TABLES 문법 LOCK TABLES tbl_name [[AS] alias] lock_type [, tbl_name [[AS] alias] lock_type] ... lock_type: { READ [LOCAL] | [LOW_PRIORITY] WRITE } UNLOCK TABLES MySQL은 클라이언트 세션이 테이블에 액세스하기 위해 다른 세션과 협력하거나 세션에 독점 액세스가 필요한 기간 동안 다른 세션이 테이블을 수정하지 못하도록 하기 위해 명시적으로 테이블 잠금을 획득할 수 있도록 합니다. 세션은 자체 잠금만 획득하거나 해제할 수 있습니다. 한 세션은 다른 세션에 대한 잠금 또는 다른 세션이 보유한 잠금 해제를 획득할 수 없습니다. 잠금은 트랜잭션을 ..
■ tabe open cache 파라미터의 용도 MySQL은 다중 스레드방식으로 운영되는 DBMS입니다. 여러 클라이언트가 붙고 그 안에서 여러 쿼리를 날리는데 그 쿼리 안에는 여러 테이블이 사용될 수 있습니다. 이때 요청되는 테이블이 각 클라이언트에서 공유적으로 열리는것이 아니라 각각의 클라이언트별로 테이블이 열립니다. 이렇게 하면 추가적인 메모리는 사용되지만 각각의 클라이언트에서 독립적으로 사용되는것이기 때문에 속도가 높아지는 효과가 발생하게 됩니다. 이것이 바로 table open cache 파라미터의 용도입니다. mysqladmin status 명령을 실행하면 다음과 같은 내용이 표시되어야 합니다. Uptime: 426 Running threads: 1 Questions: 11082 Reloads..
■ 가상 서버 종류 IBM은 5가지 종류의 가상 서버를 제공합니다. 종류는 다음과 같습니다. ▶︎ IBM Cloud Virtual Servers for VPC : 빠른 프로비저닝과 높은 네트워크 성능, 향상된 처리량 및 향상된 격리 기능을 제공합니다. VPC(가상 네트워크)에서 실행됩니다. 원하는 네트워크 구성을 만들고 그 네트워크 구성을 이용해서 가상서버를 생성합니다. 서울 리전에는 아직 제공되지 않습니다. ▶︎ IBM Cloud Virtual Servers for VPC : 전세계 리전에 배포할 수 있는 이전 세대 가상 서버입니다. 서울리전에 배포할 수 있는 가성서버이기도 합니다. ▶︎ IBM Cloud for VMware Solutions : VMWare사의 가상 솔루션을 이용하여 가상 서버를 만듭..
■ 트랜잭션 격리 수준 [Isolation Level] 트랜잭션 격리는 데이터베이스 처리의 기초 중 하나입니다. 격리는 약어 ACID의 I입니다. 격리 수준은 여러 트랜잭션이 동시에 변경하고 쿼리를 수행 할 때 결과의 성능과 안정성, 일관성 및 재현성 간의 균형을 미세 조정하는 설정입니다. InnoDB는 SQL:1992 표준에 의해 기술 된 READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ 및 SERIALIZABLE의 4 가지 트랜잭션 격리 수준을 모두 제공합니다. InnoDB의 기본 격리 수준은 REPEATABLE READ입니다. 사용자는 단일 세션 또는 SET TRANSACTION문으로 모든 후속 연결에 대한 분리 레벨을 변경할 수 있습니다. 모든 연결에 대해 ..
■ InnoDB 모니터 타입 InnoDB 모니터에는 두 가지 유형이 있습니다. + 표준 InnoDB 모니터는 다음 유형의 정보를 표시합니다. - 메인 백그라운드 스레드에 의해 수행 된 작업 - 세마포어 대기 - 가장 최근의 외래 키 및 교착 상태 오류에 대한 데이터 - 트랜잭션에 의한 잠금대기 - 활성 트랜잭션이 보유한 테이블 및 레코드 잠금 - 보류중인 I/O 작업 및 관련 통계 - 삽입 버퍼 및 적응 형 해시 인덱스 통계 - 재실행 로그 데이터 - 버퍼 풀 통계 - 행 연산 데이터 + InnoDB 잠금 모니터는 표준 InnoDB 모니터 출력의 일부로 추가 잠금 정보를 인쇄합니다. ■ InnoDB 모니터 사용 InnoDB 모니터가 주기적인 출력을 위해 활성화되면 InnoDB는 약 15초마다 출력을 my..