본문 바로가기
MySQL Tool

[Percona Toolkit] 설치법 및 알아야 할 내용

by 모모레 2015. 6. 17.

Percona Toolkit은 Percona에서 제공하는 잡다한 프로그램들의 집합이다. MySQL을 운영하면서 필요한 잡다한 기능들을 쉽게 사용할 수 있게 만들어서 제공해 주고 있다. 

이제 전체적인 사용법및 세세한 툴들의 사용법을 익히기 전에 어떤 내용들을 알아야 하는지 알아 보도록 하자. 


1. 설치 방법

설치 방법은 간단하다. 윂 페이지에 접속해서 직접 다운로드 받거나, 설치할 서버에 wget을 이용하여 받으면 된다. 

페이지 : http://www.percona.com/software/percona-toolkit/ 

wget 으로 얻는 방법

wget percona.com/get/percona-toolkit.tar.gz

wget percona.com/get/percona-toolkit.rpm

wget percona.com/get/percona-toolkit.deb


개별로 설치하고자 하는 경우 

wget percona.com/get/[Toolname] 으로 사용하면 된다. 


2.설정 방법 

Percona Toolkit을 사용하면서 사용할 수 있는 설정 파일을 만들어서 사용 할 수 있다. 문법은 간단하고 간결하다. 일반적으로 MySQL에서 사용하는 문법과 크게 다르지 않다. 

2.1 문법

여기서도 #은 주석처리용으로 사용된다. 

빈공간은 무시된다. 

일반적으로 option=value로 사용가능하고, 값이 없이 명시만 하면 되는 것은 option 만 기입하면 된다. 

-- 는 사용하지 않는다. 

값을 따옴표("')로 묶지 않는다. 

-- 를 작성하면 해당 프로그램이 사용할 옵션은 다 작성했다는 의미로 그 이후에 작성되는 라인은 프로그램의 옵션의 아닌 추가적인 아규먼트로 처리된다. 

2.2 예제

pt-stalk 로 예제를 보면 다음과 같다. 

# Config for pt-stalk

variable=Threads_connected

cycles=2  # trigger if problem seen twice in a row

--

--user daniel

위의 파일 내용은 다음과 같은 의미이다. 

pt-stalk --variable Threads_connected --cycles 2 -- --user daniel

여기서 -- 다음의 옵션은 내부에서 호출하는 mysql과 mysqladin에 전달된다. 


2.3 읽는 순서

각 툴들은 순서대로 여러 설정 파일들을 읽는다. 

먼저 global percona toolkit 설정 파일을 먼저 읽는데, 그 위치는 /etc/percona-toolkit/percona-toolkit.conf 파일이 바로 그것이다. 

그 다음에 툴에 관련된 설정 파일을 읽는다. 그 위치는 /etc/percona-toolkit/[TOOL].conf 파일이다.

그 다음 사용자 전용 파일을 읽는데, 그 위치는 $HOME/.percona-toolkit.conf 파일이다. 

마지막으로 읽기를 시도하는 파일은 사용자 전용 툴 특화 파일로 $HOME/.[TOOL].conf 파일이다. 

 

2.4 명시 방법

내가 일고 싶은 설정 파일을 명시하 수도 있다. --config 라는 옵션을 사용하여 명시해 줄 수 있다. 이것은 툴 실행 시 가장 먼저 설정해 주어야 하고 다음과 같이 사용해야 한다. 

--config /path/to/file


3. DSN (Data Source Name) 설정하기 

Percona Toolkit은 MySQL서버에 접속할 DBD 커넥션을 만들기 위해 DSN을 사용한다. DSN은 comma로 구분되는 key=value값을 가지는 문자열 스트링이다. 

h=host1,P=3306,u=bob

표준적인 기본 구성은 보여주는 것과 같지만, 추가적인 key=value 값도 가지고 있다. 

몇몇 툴들은 DSN을 사용하지 않고, 직접 MySQL에서 사용하는 접속 값을 받아서 사용하기도 한다. --host, --user --password와 같은 식으로 

이런 툴들은 직접 값을 받아서 자동으로 DSN을 생성하여 사용한다. 


일반적으로 DSN은 명령어 라인에 직접 명시하여 사용한다. 그래서 쉘에서 사용할 때 쉘로 인해 오욕되지 않도록 처리해야 하는게 필요한데, 특수 문자라면 더더욱더 필요하다. 이때에는 역슬래쉬(\)를 사용하여 처리하면 된다. 


3.1 Key 종류

DSN에서 사용하는 키 종류는 다음과 같다. 

A : 기본 character set 

D : 기본 database

F : MySQL Client library 기본 파일 

h : MySQL hostname 혹은 ip

L : Explicitly enable LOAD DATA LOCAL INFILE

p : MySQL password

P : MySQLPort

S : MySQL Socket file

u : MySQL user 


3.2 bareword

DSN은 key=value와 같은 형태가 아닌 하나의 단어로만 사용도 가능한데 이것을 bareword라고 부른다. 이것은 툴에 따라 다른데, 자세한 것은 --help를 통해 확인해 보면 된다. 


3.3 propagation

같은 값으로 접속 가능한 서버들이 있다면 그것을 일일이 지정해 주지 않고 다음과 같이 사용 하는 것도 가능하다. 

h=host1,u=fred,p=wilma host2 host3

툴에 따라 조금씩 다르므로 잘 확인하고 사용하자. 


4. 디버깅 방법

PTDEBUG 환경 변수값을 1로 변경하고 나서 실행하면 STDERR로 나오는 결과내용으로 디버깅이 가능하다.

PTDEBUG=1 pt-table-checksum ... > FILE 2>&1


5. 사용가능한 시스템 요구 사항 
다음과 같은 경우에만 사용이 가능하다. 
Perl v 5.8 이상
Bash v 3 이상 
Core Perl 모듈 Time::HiRes 
Perl 모듈 DBI DBD::mysql 
MySQL5.0 이상 
OS 리눅스 6 이상 


'MySQL Tool ' 카테고리의 다른 글

[Percona Toolkit] pt-table-usage  (0) 2015.06.29
[percona toolkit] pt-table-checksum  (0) 2015.06.28
[Percona Toolkit] pt-config-diff  (0) 2015.06.16
[Percona Toolkit] pt-align  (0) 2015.06.16
14. mysql_config_editor 사용법  (0) 2014.03.10