Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เชื่อมต่อกับฐานข้อมูล MySQL จากบรรทัดคำสั่ง


ให้เราเข้าใจว่า MySQL สามารถเชื่อมต่อกับฐานข้อมูลโดยใช้บรรทัดคำสั่งได้อย่างไร สิ่งนี้ทำสำหรับลูกค้าเช่น mysql หรือ mysqldump

คำสั่งด้านล่างเรียกใช้ mysql โดยไม่ระบุพารามิเตอร์การเชื่อมต่อที่ชัดเจน -

mysql

เนื่องจากไม่มีตัวเลือกพารามิเตอร์ ค่าเริ่มต้นจะถูกใช้ -

  • ชื่อโฮสต์เริ่มต้นคือ localhost

  • ชื่อผู้ใช้เริ่มต้นคือ ODBC บน Windows

  • ไม่มีการส่งรหัสผ่านเนื่องจากไม่ได้กล่าวถึง --password หรือ -p

สำหรับ mysql อาร์กิวเมนต์แรกที่ไม่ใช่ตัวเลือกถือเป็นชื่อของฐานข้อมูลเริ่มต้น เนื่องจากไม่มีอาร์กิวเมนต์ดังกล่าว mysql จึงไม่เลือกฐานข้อมูลเริ่มต้น

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

mysql --host=localhost --user=myname --password=password mydb
mysql -h localhost -u myname -ppassword mydb

โปรแกรมไคลเอนต์กำหนดประเภทของการเชื่อมต่อที่ต้องทำ -

  • หากไม่ได้ระบุโฮสต์หรือเป็นโฮสต์ท้องถิ่น การเชื่อมต่อกับโฮสต์ในพื้นที่จะเกิดขึ้น

  • มิฉะนั้น การเชื่อมต่อจะใช้ TCP/IP

เพื่อให้แน่ใจว่าไคลเอ็นต์ทำการเชื่อมต่อ TCP/IP กับเซิร์ฟเวอร์ภายใน จำเป็นต้องระบุ '—host' หรือ '-h' โดยมีค่าชื่อโฮสต์ 127.0.0.1 (แทนที่จะเป็น localhost) แทนที่จะระบุที่อยู่ IP หรือชื่อของเซิร์ฟเวอร์ภายในเครื่องได้ โปรโตคอลการขนส่งสามารถระบุได้อย่างชัดเจนโดยใช้ตัวเลือก --protocol=TCP เรามาดูตัวอย่างกัน −

ตัวอย่าง

mysql --host=127.0.0.1
mysql --protocol=TCP

บน Windows ไคลเอนต์ MySQL สามารถบังคับให้ใช้การเชื่อมต่อไปป์ที่มีชื่อได้ ซึ่งสามารถทำได้โดยการระบุตัวเลือก --pipe หรือ --protocol=PIPE มิฉะนั้น, . (จุด) เรียกชื่อโฮสต์ก็ได้

การเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลจะใช้ TCP/IP คำสั่งจะเชื่อมต่อกับเซิร์ฟเวอร์ที่ทำงานบน remote.example.com โดยใช้หมายเลขพอร์ตเริ่มต้น (3306) ให้เราเห็นมันในการดำเนินการ -

mysql --host=remote.example.com

ในการระบุหมายเลขพอร์ตอย่างชัดเจน คุณสามารถใช้ตัวเลือก --port หรือ -P มาดูกันว่าจะทำได้อย่างไร -

mysql --host=remote.example.com --port=13306

หากต้องการใช้หมายเลขพอร์ต ให้บังคับการเชื่อมต่อ TCP/IP สามารถทำได้โดยใช้วิธีใดวิธีหนึ่ง −

mysql --port=13306 --host=127.0.0.1
(or)
mysql --port=13306 --protocol=TCP

เป็นไปได้ที่จะระบุพารามิเตอร์การเชื่อมต่อโดยไม่ต้องป้อนบนบรรทัดคำสั่งทุกครั้งที่เรียกใช้โปรแกรมไคลเอนต์