MySQL เชื่อมต่อกับพอร์ต 3307 ไม่ใช่พอร์ต 3306


9

ฉันใช้ OS X Yosemite 10.10.5 บน Mac Mini ปลายปี 2014 มันเป็นเซิร์ฟเวอร์สำหรับการพัฒนาของฉัน ฉันเพิ่งติดตั้ง MySQL บนเครื่องนี้: 'mysql --version' รายงานว่าเป็นรุ่น 'mysql Ver 14.14 Distrib 5.6.26 สำหรับ osx10.8 (x86_64) โดยใช้ EditLine wrapper' ฉันดาวน์โหลดและติดตั้งเวอร์ชั่น "OS X 10.9" แน่นอน (ฉันเพิ่งตรวจสอบไฟล์ DMG อีกครั้ง)

อย่างไรก็ตามฉันพยายามทำให้ผลิตภัณฑ์ฟังบนพอร์ต 3306 ตามปกติและฉันมีปัญหาในการทำเช่นนั้น ตามค่าเริ่มต้นดูเหมือนว่าจะถูกผูกไว้กับพอร์ต 3307 แม้ว่า my.cnf มีลักษณะเช่นนี้:

[mysqld]
bind-address = 0.0.0.0
port         = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

(บรรทัดสุดท้ายอยู่ในค่าเริ่มต้นแล้วใน / usr / local / mysql /)

ดูกระบวนการทำงานที่ฉันสามารถดูบรรทัดคำสั่ง (ps ax | grep mysql) ได้รับเป็น 3307:

40958   ??  Ss     0:00.38 /usr/local/mysql/bin/mysqld \\
--user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data \\
--plugin-dir=/usr/local/mysql/lib/plugin \\
--log-error=/usr/local/mysql/data/mysqld.local.err \\
--pid-file=/usr/local/mysql/data/mysqld.local.pid --port=3307

(ฉันเริ่มและหยุดทำงานในขณะนี้ด้วยพาเนลการกำหนดค่าตามความชอบระบบ MySQL ไม่ได้ปิดบรรทัดคำสั่งโดยตรง)

ในการเข้าถึงจากไคลเอนต์ฉันต้องตั้งค่าพอร์ตบนบรรทัดคำสั่งอย่างชัดเจน

$ mysql -u smcphee -h 192.168.x.x -P 3307 -p

สำหรับการเตะฉันแก้ไข my.cnf เพื่อระบุพอร์ตสุ่มอื่น ๆ เซิร์ฟเวอร์ยังคงเชื่อมโยงกับพอร์ต 3307 ฉันไม่สามารถหา my.cnf อื่น ๆ บนดิสก์ได้ทุกที่ที่อาจมีการแทนที่

เกิดขึ้นที่นี่คืออะไร?

คำตอบ:


10

คุณลองตรวจสอบดูว่าไฟล์ต่อไปนี้มีอยู่ในเครื่องของคุณหรือไม่?

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

ตรวจสอบว่าพอร์ตถูกกำหนดบน 3307 หากนี่เป็นการเปลี่ยนแปลงจริงกับ 3306 และรีสตาร์ทเซอร์วิส


ใช่มันเป็นเช่นนั้น และมันมีบรรทัดนี้อยู่: <string> --port = 3307 </string> ทำไมมันถึงเป็นค่าเริ่มต้นล่ะ
scot

1
ฉันเดาว่าสิ่งนี้เกิดขึ้นเพราะไฟล์นี้เริ่มให้บริการฉันไม่แน่ใจ แต่ถ้าคุณลบบรรทัดบริการจะใช้พอร์ตที่my.cnfเก็บไฟล์
Victor Marroquin

ใช่แน่นอน โดย "ทำไม" ฉันหมายถึงทำไมมันจะติดตั้งไฟล์ที่มีค่าดังกล่าวค่อนข้างแล้วค่าที่คาดว่าเหมาะสมเป็นค่าเริ่มต้น (ผมถือว่าแน่นอนว่าแพคเกจติดตั้งมีการติดตั้งการเปิดตัวภูต ... เพราะสิ่งที่คนอื่นจะมี?)
ลอยนวล

1

สิ่งนี้จะต้องเกี่ยวข้องกับพาเนลการกำหนดค่าตามความชอบระบบ MySQL และวิธีเริ่มเซิร์ฟเวอร์ ฉันปิดการใช้งานและลบแผงการตั้งค่า เมื่อฉันเริ่ม / หยุดเซิร์ฟเวอร์โดยใช้ 'mysqld_safe' ในบรรทัดคำสั่งจะใช้พอร์ตที่ระบุใน my.cnf

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