Показать хост MySQL через команду SQL


97
Show Database
Use database
show tables
Describe <table>

Все хорошо и хорошо, но можно ли показать текущие соединения хоста. Не connection_id, а IP-адрес или имя хоста.

Ответы:


200

Чтобы получить текущее имя хоста: -

select @@hostname;
show variables where Variable_name like '%host%';

Чтобы получить хосты для всех входящих запросов: -

select host from information_schema.processlist;

Основываясь на вашем последнем комментарии,
я не думаю, что вы можете разрешить IP для имени хоста с помощью чистой функции mysql,
поскольку для этого требуется поиск в сети, что может занять много времени.

Однако в документе mysql упоминается это: -

resolveip google.com.sg

документы: - http://dev.mysql.com/doc/refman/5.0/en/resolveip.html


У меня нет удаленного хоста для тестирования на ATM, но "SELECT @@ hostname" дает мой локальный хост. Если сеанс MySQL подключен к другому хосту, будет ли отображаться имя удаленного хоста? Могу я получить IP?
Крейг Стюарт,

Да, он будет показывать другой хост, если вы пришли с другого хоста. Однако разрешить соответствующий IP-адрес немного сложно ...
аджреал

Можно ли получить IP из My-SQL? Это было бы прекрасно. Спасибо за @@ Hostname на один голос! Приму, если это невозможно, по IP
Крейг Стюарт

Используя командную строку, получите текущий IP-адрес подключенного удаленного хоста в SQL. Причина, долговечность скрипта Я не могу быть на 100% уверен в своем коде, что мы подключены к одному и тому же хосту !!
Крейг Стюарт

Малазийский, но сингапурский пиар.
ajreal 07


6

Я думаю, вы пытаетесь получить удаленный хост подключенного пользователя ...

Вы можете получить строку типа myuser @ localhost из команды:

SELECT USER()

Вы можете разделить этот результат на знак '@', чтобы получить части:

-- delivers the "remote_host" e.g. "localhost" 
SELECT SUBSTRING_INDEX(USER(), '@', -1) 

-- delivers the user-name e.g. "myuser"
SELECT SUBSTRING_INDEX(USER(), '@', 1)

если вы подключаетесь через IP-адрес, вы получите IP-адрес вместо имени хоста.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.