orzdba 설치 및 사용
설치:
퍼블릭 스크립트라면 퍼블릭 관련 의존 패키지와 컨트롤을 먼저 설치해야 한다.
yum install -y perl-Test-Simple.x86_64 perl-Time-HiRes perl-ExtUtils-CBuilder
yum install -y perl-ExtUtils-MakeMaker perl-DBD-MySQL perl-DBI perl-Module-Build
또 하나의 종속 명령:
#
wget http://github.com/downloads/Lowercases/tcprstat/tcprstat-static.v0.3.1.x86_64
# /usr/bin
mv tcprstat-static.v0.3.1.x86_64 /usr/bin/
#
ln -sf /usr/bin/tcprstat-static.v0.3.1.x86_64 /usr/bin/tcprstat
그리고 스크립트와 의존 패키지를 다운로드해서
http://code.taobao.org/svn/orzdba/trunk
아니면 이렇게 해도 돼요.
# svn
yum install -y subversion
#
apt-get install -y subversion
#
svn co http://code.taobao.org/svn/orzdba/trunk
A trunk/orzdba_rt_depend_perl_module.tar.gz
A trunk/orzdba
A trunk/orzdba .pdf
4。
----------------------------------------------------------------------------------
이거는 제가 51cto에 올렸어요. 여러분이 직접 다운로드하셔도 돼요. 다 안에 있어요.
http://down.51cto.com/data/2277755
그리고 이것도 수정된 스크립트입니다. 26-29줄의 변수를 직접 수정하면 됩니다. 160줄로 넘어가지 않아도 됩니다.
cat orzdba
my $used = 'root'; #
my $pswd = '****'; #
my $ipdz = '127.0.0.1'; #ip
my $port = 3306; # -P
-----------------------------------------------------------------------------------
다운로드한 가방에는 압축 가방이 있고 안에 컨트롤을 설치해야 합니다.
#
tar xf orzdba_rt_depend_perl_module.tar.gz
#
cd Perl_Module
# ,
tar xf version-0.99.tar.gz
cd version-0.99
perl Makefile.PL
make
make install
cd ..
tar xf File-Lockfile-v1.0.5.tar.gz
cd File-Lockfile-v1.0.5
perl Build.PL
perl ./Build
perl ./Build install
cd ..
tar xf Class-Data-Inheritable-0.08.tar.gz
cd Class-Data-Inheritable-0.08
perl Makefile.PL
make
make install
cd ..
tar xf Module-Build-0.31.tar.gz
cd Module-Build-0.31
perl Build.PL
./Build
./Build install
당연하지, 배치도 바꿔야지, 그렇지 않으면 그가 어디에 연결되어 있는지 어떻게 확인할 수 있겠니?
# 160 MySQL , username,password,host,port,sock ,
# 51cto , 26-29
grep -n 'my $MYSQL' orzdba
160:my $MYSQL = qq{mysql -s --skip-column-names -uroot -p123123 -h127.0.0.1 -P$port };
# host , ( )
cat /etc/hosts
172.17.0.2 32044b19ae8c
# ,
chmod +x orzdba
이럴 때 쓸 수 있어요.
사용:
물론입니다. 많은 매개 변수가 있습니다. 맨 뒤에 일일이 열거해 주십시오. 지금 어떻게 사용하는지 보십시오.
./orzdba -lazy -rt 2>/dev/null
.=================================================.
| Welcome to use the orzdba tool ! |
| Yep...Chinese English~ |
'=============== Date : 2017-01-04 ==============='
HOST: 32044b19ae8c IP: 172.17.0.2
DB : XXX|XXX|XXX
Var : binlog_format[ROW] max_binlog_cache_size[17179869184G] max_binlog_size[500M]
max_connect_errors[100000] max_connections[200] max_user_connections[150]
open_files_limit[65535] sync_binlog[0] table_definition_cache[656]
table_open_cache[512] thread_cache_size[51]
innodb_adaptive_flushing[ON] innodb_adaptive_hash_index[ON] innodb_buffer_pool_size[512M]
innodb_file_per_table[ON] innodb_flush_log_at_trx_commit[2] innodb_flush_method[]
innodb_io_capacity[200] innodb_lock_wait_timeout[10] innodb_log_buffer_size[16M]
innodb_log_file_size[512M] innodb_log_files_in_group[2] innodb_max_dirty_pages_pct[35]
innodb_open_files[65535] innodb_read_io_threads[4] innodb_thread_concurrency[0]
innodb_write_io_threads[4]
-------- -----load-avg---- ---cpu-usage--- ---swap--- -QPS- -TPS- -Hit%- --------tcprstat(us)--------
time | 1m 5m 15m |usr sys idl iow| si so| ins upd del sel iud| lor hit| count avg 95-avg 99-avg|
14:43:31| 0.36 0.23 0.17| 1 0 98 0| 0 0| 0 0 0 0 0| 0 100.00| 0 0 0 0|
14:43:32| 0.36 0.23 0.17| 3 1 95 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:33| 0.36 0.23 0.17| 4 2 94 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:34| 0.36 0.23 0.17| 4 1 95 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:35| 0.33 0.23 0.17| 2 1 97 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:36| 0.33 0.23 0.17| 3 1 95 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:37| 0.33 0.23 0.17| 4 1 95 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:38| 0.33 0.23 0.17| 3 1 97 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:39| 0.30 0.22 0.16| 2 1 97 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:40| 0.30 0.22 0.16| 3 1 96 0| 0 0| 0 0 0 8 0| 16 100.00| 0 0 0 0|
14:43:41| 0.30 0.22 0.16| 3 1 97 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
14:43:42| 0.30 0.22 0.16| 2 1 97 0| 0 0| 0 0 0 1 0| 0 100.00| 0 0 0 0|
주석:count:이 간격으로 처리된 요청 수량 avg:이 간격으로 처리된 모든 요청, 응답 평균 시간 95avg: 이 간격에서 95%의 요청량의 평균 응답 시간, 단위가 미묘하다. 이 값은 MySQL Server의 조회 평균 응답 시간을 나타낼 수 있다.
주의: mysql5.6버전 이후 명문 출력 비밀번호에 경고 알림이 있어 출력 이상을 초래할 수 있으므로 이 인자를 추가해야 합니다: 2>/dev/null. 필터를 제거해야 합니다.
InnoDB의 지표 모니터링:
./orzdba -innodb 2>/dev/null
.=================================================.
| Welcome to use the orzdba tool ! |
| Yep...Chinese English~ |
'=============== Date : 2017-01-04 ==============='
HOST: 32044b19ae8c IP: 172.17.0.2
DB : xxx|xxx|xxx
Var : binlog_format[ROW] max_binlog_cache_size[17179869184G] max_binlog_size[500M]
max_connect_errors[100000] max_connections[200] max_user_connections[150]
open_files_limit[65535] sync_binlog[0] table_definition_cache[656]
table_open_cache[512] thread_cache_size[51]
innodb_adaptive_flushing[ON] innodb_adaptive_hash_index[ON] innodb_buffer_pool_size[512M]
innodb_file_per_table[ON] innodb_flush_log_at_trx_commit[2] innodb_flush_method[]
innodb_io_capacity[200] innodb_lock_wait_timeout[10] innodb_log_buffer_size[16M]
innodb_log_file_size[512M] innodb_log_files_in_group[2] innodb_max_dirty_pages_pct[35]
innodb_open_files[65535] innodb_read_io_threads[4] innodb_thread_concurrency[0]
innodb_write_io_threads[4]
-------- ---innodb bp pages status-- -----innodb data status---- --innodb log-- his --log(byte)-- read ---query---
time | data free dirty flush| reads writes read written|fsyncs written| list uflush uckpt view inside que|
14:48:03| 0 0 0 0| 0 0 0 0| 0 0| 0 0 0 0 0 0|
14:48:04| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:05| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:06| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:07| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:08| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:09| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:10| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
14:48:11| 29961 1024 0 0| 0 0 0 0| 0 0| 1754 0 0 0 0 0|
MySQL Server 성능 모니터링:
./orzdba -mysql 2>/dev/null
.=================================================.
| Welcome to use the orzdba tool ! |
| Yep...Chinese English~ |
'=============== Date : 2017-01-04 ==============='
HOST: 32044b19ae8c IP: 172.17.0.2
DB : xxx|xxx|xxx
Var : binlog_format[ROW] max_binlog_cache_size[17179869184G] max_binlog_size[500M]
max_connect_errors[100000] max_connections[200] max_user_connections[150]
open_files_limit[65535] sync_binlog[0] table_definition_cache[656]
table_open_cache[512] thread_cache_size[51]
innodb_adaptive_flushing[ON] innodb_adaptive_hash_index[ON] innodb_buffer_pool_size[512M]
innodb_file_per_table[ON] innodb_flush_log_at_trx_commit[2] innodb_flush_method[]
innodb_io_capacity[200] innodb_lock_wait_timeout[10] innodb_log_buffer_size[16M]
innodb_log_file_size[512M] innodb_log_files_in_group[2] innodb_max_dirty_pages_pct[35]
innodb_open_files[65535] innodb_read_io_threads[4] innodb_thread_concurrency[0]
innodb_write_io_threads[4]
-------- -QPS- -TPS- -Hit%- ------threads------ -----bytes----
time | ins upd del sel iud| lor hit| run con cre cac| recv send|
14:49:30| 0 0 0 0 0| 0 100.00| 0 0 0 0| 0 0|
14:49:31| 0 0 0 4 0| 179 100.00| 1 79 0 15| 1k 74k|
14:49:32| 0 0 0 5 0| 4228 100.00| 1 79 0 15| 2k 6k|
14:49:33| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:34| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:35| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:36| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:37| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:38| 0 0 0 1 0| 0 100.00| 1 79 0 15| 972 1k|
14:49:39| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:40| 0 0 0 8 0| 16 100.00| 1 79 0 15| 2k 4k|
14:49:41| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
14:49:42| 0 0 0 1 0| 0 100.00| 1 79 0 15| 846 1k|
몇 개 더 열거해 보시오, 여러분 스스로 시험해 보시오
# Linux
./orzdba -sys -C 10 -i 1 -t -d sda
-sys: 프린터 시스템 정보, 포함 -t(프린터 현재 시간), -l(프린터 부하 정보, 1분, 5분, 15분), -c(프린터 cpu 정보), -s(프린터 교환 구역 정보)
DISK(-d)와 NET(-n)를 보려면 구체적인 장치 이름을 가져야 한다(구체적으로/proc/diskstats와/proc/net/dev의 장치를 보거나 iostat과sar-n DEV에서 추출할 수 있다)
리눅스 지표의 데이터는/proc 디렉터리에 있는 시스템 메타데이터에서 나온다: LOAD:/proc/loadavg CPU:/proc/statsWAP:/proc/vmstatDISK:/proc/diskstatsNET:/proc/net/dev
# MySQL (rt)
./orzdba -rt -C 10 -i 1 -t -d sda
- C: 10회 인쇄
-i: 1초 간격
주석:
./orzdba --help==========================================================================================Info : Created By [email protected] :Command line options : -h,--help Print Help Info. -i,--interval Time(second) Interval. -C,--count Times. -t,--time Print The Current Time. -nocolor Print NO Color. -l,--load Print Load Info. -c,--cpu Print Cpu Info. -s,--swap Print Swap Info. -d,--disk Print Disk Info. -n,--net Print Net Info. -P,--port Port number to use for mysql connection(default 3306). -S,--socket Socket file to use for mysql connection. -com Print MySQL Status(Com_select,Com_insert,Com_update,Com_delete). -hit Print Innodb Hit%. -innodb_rows Print Innodb Rows Status(Innodb_rows_inserted/updated/deleted/read). -innodb_pages Print Innodb Buffer Pool Pages Status(Innodb_buffer_pool_pages_data/free/dirty/flushed) -innodb_data Print Innodb Data Status(Innodb_data_reads/writes/read/written) -innodb_log Print Innodb Log Status(Innodb_os_log_fsyncs/written) -innodb_status Print Innodb Status from Command: 'Show Engine Innodb Status' (history list/log unflushed/uncheckpointed bytes/read views/queries inside/queued) -T,--threads Print Threads Status(Threads_running,Threads_connected,Threads_created,Threads_cached). -rt Print MySQL DB RT(us). -B,--bytes Print Bytes received from/send to MySQL(Bytes_received,Bytes_sent). -mysql Print MySQLInfo (include -t,-com,-hit,-T,-B). -innodb Print InnodbInfo(include -t,-innodb_pages,-innodb_data,-innodb_log,-innodb_status) -sys Print SysInfo (include -t,-l,-c,-s). -lazy Print Info (include -t,-l,-c,-s,-com,-hit). -L,--logfile Print to Logfile. -logfile_by_day One day a logfile,the suffix of logfile is 'yyyy-mm-dd'; and is valid with -L.Sample : shell> nohup ./orzdba -lazy -d sda -C 5 -i 2 -L/tmp/orzdba.log >/dev/null 2>&1 &==========================================================================================
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.