Mając uprawnienia administracyjne im mysql, jak mogę zobaczyć wszystkie otwarte połączenia z określoną bazą danych na moim serwerze?
Mając uprawnienia administracyjne im mysql, jak mogę zobaczyć wszystkie otwarte połączenia z określoną bazą danych na moim serwerze?
Odpowiedzi:
Polecenie jest
SHOW PROCESSLIST
Niestety nie ma parametrów zawężających . Jeśli ich potrzebujesz, możesz to zrobić z wiersza poleceń:
mysqladmin processlist | grep database-name
mysqladmin --user=[USERNAME] --password=[PASSWORD] -i 1 processlist
watch -n1 mysqladmin processlist
Możesz również użyć:
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)
Zapraszam do korzystania z Mysql-server-status-variable lub Too-many-connections-problem
%onn%
zamiast %conn%
?
To powinno załatwić sprawę w przypadku najnowszych wersji MySQL:
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE DB = "elstream_development";
mysqladmin
.
Możesz wywołać polecenie MySQL show status
pokaż status jak „Conn%”;
Aby uzyskać więcej informacji, przeczytaj Pokaż otwarte połączenia z bazą danych
%onn%
zamiast %conn%
?
%onn%
i %conn%
nadal będą działać. Bez różnicy.
SQL: pokaż pełną listę procesów;
To właśnie robi MySQL Workbench.
Jeśli używasz systemu * nix, rozważ także mytop .
Aby ograniczyć wyniki do jednej bazy danych, naciśnij "d", gdy jest uruchomiona, a następnie wpisz nazwę bazy danych.
show processlist
wewnętrznie?
show processlist
wynik jest zadowalający, dlaczego miałbyś go potrzebować mytop
?
W przeglądarce zapytań kliknij prawym przyciskiem myszy bazę danych i wybierz listę procesów
mysqladmin -i 1 processlist
aby odświeżyć wyjście co sekundę.