เชื่อมต่อระยะไกลกับ MySQL


0

มีสองเครื่อง PC # 1 ที่มี db mysql และ appache และ PC # 2 ที่มีรูปแบบ ac # พยายามเชื่อมต่อกับ db นี้

นี่คือสตริงการเชื่อมต่อของฉันที่ใช้ในพีซี # 2: SERVER=My_public_ip;PORT=3306;DATABASE = my_test; UID = root; PASSWORD = xxxx;"

เมื่อฉันพยายามเชื่อมต่อในเครื่องจาก PC # 1 มันใช้งานได้ดี:

SERVER=localhost;DATABASE = my_test; UID = root; PASSWORD = xxxx;"

ฉันทำให้ผู้ใช้รูทของฉันเปิดใช้งานรีโมตอย่างนั้น

GRANT ALL ON *.* to '%'@'%' WITH GRANT OPTION;

และทั้งหมดที่ฉันได้รับคือตัวแสดงเหตุการณ์: unable to connect to any of the specified MySQL host

ตอนนี้ฉันคิดว่ามันไม่มีอะไรเกี่ยวข้องกับไฟร์วอลล์ aftr ให้ปิดทั้งพีซีและฉันยังได้รับข้อความแสดงข้อผิดพลาดเหมือนเดิม แต่ฉันไม่สามารถหาได้


1
ปิดไฟร์วอลล์และตรวจสอบว่าใช้งานได้หรือไม่ หากเป็นเช่นนั้นให้ตรวจสอบพอร์ตที่คุณใช้และอนุญาต
Rob

ผลลัพธ์เดียวกันฉันปิดไฟร์วอลล์บนพีซีและฉันได้รับข้อผิดพลาดเดียวกัน
Maged E William

ไม่ใช่ไฟร์วอลล์ของคุณแล้ว
Rob

เป็นการดีที่จะรู้ว่า
Maged E William

คุณต้องกำหนดค่า mysql เพื่ออนุญาตการเชื่อมต่อระยะไกล คุณทำสิ่งนี้แล้วหรือ
Ramhound

คำตอบ:


0

อ่านคำถามของคุณฉันสามารถสมมติว่า PC # 1 และ PC # 2 ไม่ได้อยู่ใน LAN เดียวกัน (IP สาธารณะ)

SERVER = My_public_ip; PORT = 3306

หากคำสั่งนี้ถูกต้องคุณจะต้องพอร์ตส่งต่อพอร์ต 3306 จากเราเตอร์ของคุณไปยังไอพีท้องถิ่นของพีซี # 1

นี่เป็นเว็บไซต์ที่ดีที่จะบอกคุณว่าคุณต้องทำอะไร

หาก PC # 1 และ PC # 2 ของคุณอยู่ใน LAN เดียวกันคุณต้องเปลี่ยน "public_ip" ของคุณด้วย "local_ip's PC # 1" ของคุณ


ดังนั้นฉันต้องการค้นหา ip ของเราเตอร์ของฉันใช่ไหม?
Maged E William

คุณต้องใช้ ip ของเราเตอร์ของคุณในการตั้งค่าพอร์ตเพื่อส่งต่อจากนั้น ip ของพีซี # 1 ในเครื่องของคุณ คุณสามารถค้นหาข้อมูลทั้งหมดในเว็บไซต์จากคำตอบ นี่คือตัวอย่างสำหรับเราเตอร์ NETGEAR DG834 และพอร์ต MySQL Server
NaNNy
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.