mysql : 주어진 데이터베이스에 대한 모든 열린 연결을 봅니까?


답변:


169

명령은

SHOW PROCESSLIST

안타깝게도 축소 매개 변수가 없습니다 . 필요한 경우 명령 줄에서 수행 할 수 있습니다.

mysqladmin processlist | grep database-name

23
mysqladmin -i 1 processlist매초마다 출력을 새로 고칩니다.
chanux 2014

5
인증이 필요한 경우mysqladmin --user=[USERNAME] --password=[PASSWORD] -i 1 processlist
Tom Jenkinson

2
나는 암호가 명령 행 역사 또는 프로세스 목록에 표시하지 않기 때문에 @TomJenkinson 나는 보통 그것을 사용하지 않는 (PS 보조)
데이비드 라 비노 위츠

@chanux의 대안으로 약간 더 깔끔한 출력 imhowatch -n1 mysqladmin processlist
Josiah

64

또한 다음을 사용할 수 있습니다.

mysql> show status like '%onn%';
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| Aborted_connects         | 0     |
| Connections              | 303   |
| Max_used_connections     | 127   |
| Ssl_client_connects      | 0     |
| Ssl_connect_renegotiates | 0     |
| Ssl_finished_connects    | 0     |
| Threads_connected        | 127   |
+--------------------------+-------+
7 rows in set (0.01 sec)

Mysql-server-status-variables 또는 Too-many-connections-problem을 자유롭게 사용하십시오.


2
어쨌든 대소 문자를 구분하지 않습니다. Why %onn%대신 %conn%?
Pacerier

물론 % onn % 대신 % conn %를 사용할 수 있습니다. 그리고 예, 대부분 대소 문자를 구분하지 않습니다. 대소 문자 구분을 참조하시기 바랍니다 dev.mysql.com/doc/refman/5.0/en/...
wiseland

1
통계 / 이력 데이터를 보여줍니다. 문제는 현재 열려있는 연결에 관한 것입니다.
Matthew

32

최신 MySQL 버전에 대한 트릭을 수행해야합니다.

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE DB = "elstream_development";


3
이것은 선택된 것을 제외하고는 mysqladmin. 대신 SQL을 사용하여 수행 할 수있는 유일한 정답입니다 .
dresende

2
감사합니다. 이것이 제가 원했던 대답입니다.

1
이 답변은 매우 유용하며 모든 연결과 쿼리를 표시하여 제 경우에 큰 도움이 될 수 있습니다.
Hammad Khan

10

MySQL show status 명령을 호출 할 수 있습니다.

'Conn %'와 같은 상태 표시;

자세한 내용은 열린 데이터베이스 연결 표시 를 참조하세요.


3
죄송합니다.이 솔루션은 하나의 값만 표시합니다. " '% onn %'과 같은 상태 표시"명령을 선호합니다. 동일한 참조 웹 페이지에 있습니다.
Raul Luna

@RaulLuna,이 경우는 왜, 어쨌든 문자를 구분의 %onn%대신 %conn%?
Pacerier

@Pacerier 그 이상입니다. "연결"단어가 더 큰 단어 (예 : max_used_connections)의 일부로 나타나는 경우입니다. 물론 '% conn %'와 같은 상태 표시를 사용할 수 있습니다.
Raul Luna

@RaulLuna, "연결"단어가 더 큰 단어의 일부로 나타나면 %onn%및 둘 다 %conn%계속 작동합니다. 차이 없음.
Pacerier

1
왜 이것이 마크 업되어 있습니까? 현재 열려있는 연결은 표시되지 않습니다.
James


3

MySql에서 다음 쿼리는 열린 연결의 총 수를 표시합니다.

show status like 'Threads_connected';

2

* nix 시스템을 실행하는 경우 mytop 도 고려하십시오 .

결과를 하나의 데이터베이스로 제한하려면 실행 중일 때 "d"를 누른 다음 데이터베이스 이름을 입력합니다.


이 앱은 show processlist내부적으로 도 사용되지 않나요?
Pacerier

나는 그것을 믿는다. mytop은 필터링 옵션으로 정보를 깔끔하게 보여줍니다. 나는 과거에 성능 문제를 분석하는 동안 그것을 많이 사용했습니다. 또한 응급 상황에서는 컴퓨터에 로그온하고 mytop을 실행 한 다음 상황을 즉시 확인하는 것이 더 빠릅니다. "정상"을 실행하는 것과 비슷합니다.
Pryo 2015-06-29

더 많은 구성 요소를 사용하면 더 많은 버그에 노출됩니다. show processlist의 출력이 만족 스럽기 때문에 왜 필요 mytop합니까?
Pacerier

2
"ps aux"가 만족할 때 왜 "top"을 사용합니까?
Pryo 2015-07-17

-1

쿼리 브라우저에서 데이터베이스를 마우스 오른쪽 버튼으로 클릭하고 프로세스 목록을 선택하십시오.


이것은 클라이언트에 따라 다릅니다.
Nino Škopac
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.