MySQL: bind-address 0.0.0.0 ใน my.cnf ไม่ทำงาน?


11

ฉันใหม่กับ mysql ฉันต้องการเชื่อมต่อกับเซิร์ฟเวอร์ mysql โดยใช้ทุกสิ่งที่ฉันต้องการ ฉันอ่านว่าสิ่งที่ฉันต้องทำคือเพิ่มไฟล์ my.cnf ที่บรรทัด bind-address = 0.0.0.0 นั่นคือสิ่งที่ฉันทำ ฉันรีสตาร์ทเซิร์ฟเวอร์ mysql จากนั้นฉันทดสอบจากบรรทัดคำสั่ง

mysql -uroot -p'*password*' -h 127.0.0.1 --> Works
mysql -uroot -p'*password*' -h 192.168.2.4 (local ip address) --->
ERROR 1045 (28000): Access denied for user 'root'@'mguru.lnx.gr' (using password: YES)

คุณสามารถดูส่วนด้านล่างของส่วน mysqld ในไฟล์ my.cnf

[mysqld]
user = mysql
port=3306
socket          = /opt/lampp/var/mysql/mysql.sock
skip-external-locking
key_buffer = 16M

max_allowed_packet = 1M

table_open_cache = 64

sort_buffer_size = 512K

net_buffer_length = 8K

read_buffer_size = 256K

read_rnd_buffer_size = 512K

myisam_sort_buffer_size = 8M

plugin_dir = /opt/lampp/lib/mysql/plugin/
#skip-networking
bind-address=0.0.0.0

ขอบคุณล่วงหน้า Nikos


ขออภัยฉันทำผิดคำถามทั้งหมดนี่อาจช่วยคุณได้เท่าที่ฉันรู้ว่ามันเป็นไปไม่ได้ที่จะใช้ IP หลาย ๆ อันจริงๆแล้วมันไม่ควรจำเป็นเลย ฉันขอถามได้ไหมว่าทำไมคุณถึงต้องการทำสิ่งนั้น? cyberciti.biz/faq/...
Jeredepp

คำตอบ:


7

ตัวเลือกการกำหนดค่าbind-addressจะบอก MySQL ว่าจะให้อินเตอร์เฟสใดฟัง เมื่อได้รับข้อผิดพลาดAccess denied for user 'root'@'mguru.lnx.gr'เราจะเห็นว่ามันใช้งานได้จริง

สิ่งที่คุณต้องทำคือแก้ไขระบบสิทธิ์ของ MySQL เพื่อให้คุณสามารถเชื่อมต่อ'mguru.lnx.gr'ได้ ส่วนที่อาจเกิดความสับสนของสิทธิ์ใน MySQL คือการรวมชื่อผู้ใช้ + โฮสต์

นี้ได้รับการคุ้มครองในคู่มือของ MySQL ที่นี่

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