Показати хост MySQL за допомогою команди SQL


96
Show Database
Use database
show tables
Describe <table>

Все добре і добре, але чи можна показати поточний підключення хоста. Не ідентифікатор_зв'язку, а IP-адреса або ім'я хоста.

Відповіді:


197

Щоб отримати поточне ім'я хосту: -

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


У мене немає віддаленого хоста для тестування на банкоматі, але "SELECT @@ ім'я хоста" дає моєму локальному хосту. Якщо сеанс MySQL підключений до іншого хосту, чи буде він відображати ім'я віддалених хостів? Чи можу я отримати IP?
Крейг Стюарт,

Так, він відображатиме іншого хоста, якщо ви походите з іншого хоста. Однак вирішити відповідний IP дещо важко ...
ajreal

Чи можна отримати IP із My-SQL? Було б чудово. Голосуйте за один голос за @@ Ім'я хоста, дякую !! Прийме, якщо це неможливо на IP
Крейг Стюарт

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

Малайзійський, але сингапурський піар.
ajreal


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 адресу, ви отримаєте ipadress замість імені хоста.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.