แสดงโฮสต์ MySQL ผ่านคำสั่ง SQL


98
Show Database
Use database
show tables
Describe <table>

ทั้งหมดดีและดี แต่สามารถแสดงโฮสต์การเชื่อมต่อปัจจุบันได้หรือไม่ ไม่ใช่ connection_id แต่เป็นที่อยู่ IP หรือชื่อของโฮสต์

คำตอบ:


203

ในการรับชื่อโฮสต์ปัจจุบัน: -

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 ได้ไหม?
Craig Stewart

ใช่มันจะแสดงโฮสต์ที่แตกต่างกันหากคุณมาจากโฮสต์อื่น อย่างไรก็ตามในการแก้ไข IP ที่ตรงกันนั้นค่อนข้างยาก ...
ajreal

เป็นไปได้ไหมที่จะรับ IP จาก My-SQL มันจะดีมาก. โหวตให้ @@ ชื่อโฮสต์ขอบคุณครับ !! จะยอมรับหากเป็นไปไม่ได้ทาง IP
Craig Stewart

ใช้บรรทัดคำสั่งรับ IP โฮสต์ระยะไกลที่เชื่อมต่อปัจจุบันภายใน SQL เหตุผลอายุการใช้งานของสคริปต์ฉันไม่สามารถมั่นใจได้ 100% ในรหัสของฉันว่าเราเชื่อมต่อกับโฮสต์เดียวกัน !!
Craig Stewart

มาเลเซีย แต่สิงคโปร์ PR.
ajreal


6

ฉันคิดว่าคุณพยายามรับโฮสต์ระยะไกลของผู้ใช้ที่เชื่อมต่อ ...

คุณสามารถรับ String เช่น '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 แทนชื่อโฮสต์


1
show variables where Variable_name='hostname'; 

ที่ช่วยคุณได้ !!


ของฉันที่น่าสนใจกลับไม่มีสิ่งนี้
Vitor Canova

สิ่งนี้ส่งคืนชื่อโฮสต์ของเซิร์ฟเวอร์ไม่ใช่ชื่อโฮสต์ไคลเอ็นต์สำหรับการเชื่อมต่อตามที่ร้องขอ ...
Hartmut Holzgraefe
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.