Show Database
Use database
show tables
Describe <table>
Semua baik dan baik, tetapi apakah mungkin untuk menunjukkan host koneksi saat ini. Bukan connection_id, tapi Alamat IP atau Nama host.
Show Database
Use database
show tables
Describe <table>
Semua baik dan baik, tetapi apakah mungkin untuk menunjukkan host koneksi saat ini. Bukan connection_id, tapi Alamat IP atau Nama host.
Jawaban:
Untuk mendapatkan nama host saat ini: -
select @@hostname;
show variables where Variable_name like '%host%';
Untuk mendapatkan host untuk semua permintaan masuk: -
select host from information_schema.processlist;
Berdasarkan komentar terakhir Anda,
saya rasa Anda tidak dapat menyelesaikan IP untuk nama host menggunakan fungsi mysql murni,
karena memerlukan pencarian jaringan, yang bisa memakan waktu lama.
Namun, dokumen mysql menyebutkan ini: -
resolveip google.com.sg
docs: - http://dev.mysql.com/doc/refman/5.0/en/resolveip.html
Mungkin
mysql> show processlist;
Saya pikir Anda mencoba untuk mendapatkan host jarak jauh dari pengguna yang terhubung ...
Anda bisa mendapatkan String seperti 'myuser @ localhost' dari perintah:
SELECT USER()
Anda dapat membagi hasil ini pada tanda '@', untuk mendapatkan bagian-bagiannya:
-- delivers the "remote_host" e.g. "localhost"
SELECT SUBSTRING_INDEX(USER(), '@', -1)
-- delivers the user-name e.g. "myuser"
SELECT SUBSTRING_INDEX(USER(), '@', 1)
jika Anda terhubung melalui alamat ip Anda akan mendapatkan ipadress alih-alih nama host.
show variables where Variable_name='hostname';
Itu bisa membantumu !!