Show Database
Use database
show tables
Describe <table>
Tout va bien, mais est-il possible de montrer l'hôte des connexions actuelles. Pas connection_id, mais l'adresse IP ou le nom de l'hôte.
Show Database
Use database
show tables
Describe <table>
Tout va bien, mais est-il possible de montrer l'hôte des connexions actuelles. Pas connection_id, mais l'adresse IP ou le nom de l'hôte.
Réponses:
Pour obtenir le nom d'hôte actuel: -
select @@hostname;
show variables where Variable_name like '%host%';
Pour obtenir des hôtes pour toutes les demandes entrantes: -
select host from information_schema.processlist;
Sur la base de votre dernier commentaire,
je ne pense pas que vous puissiez résoudre l'IP du nom d'hôte en utilisant la fonction mysql pure,
car cela nécessite une recherche réseau, ce qui peut prendre beaucoup de temps.
Cependant, le document mysql mentionne ceci: -
resolveip google.com.sg
docs: - http://dev.mysql.com/doc/refman/5.0/en/resolveip.html
Peut être
mysql> show processlist;
Je pense que vous essayez d'obtenir l'hôte distant de l'utilisateur connecté ...
Vous pouvez obtenir une chaîne comme 'myuser @ localhost' à partir de la commande:
SELECT USER()
Vous pouvez diviser ce résultat sur le signe '@', pour obtenir les parties:
-- delivers the "remote_host" e.g. "localhost"
SELECT SUBSTRING_INDEX(USER(), '@', -1)
-- delivers the user-name e.g. "myuser"
SELECT SUBSTRING_INDEX(USER(), '@', 1)
si vous connectez via l'adresse IP, vous obtiendrez l'ipadress au lieu du nom d'hôte.
show variables where Variable_name='hostname';
Cela pourrait vous aider !!