การรับข้อมูลบัญชี root รหัสผ่าน และข้อมูลการเชื่อมต่อฐานข้อมูลของ ServBay
สำหรับนักพัฒนาที่ใช้ ServBay เพื่อสร้างสภาพแวดล้อมเว็บในเครื่อง รู้วิธีการเข้าถึงและใช้บัญชี root รหัสผ่าน และข้อมูลการเชื่อมต่อฐานข้อมูลถือเป็นสิ่งสำคัญมาก ข้อมูลเหล่านี้เป็นพื้นฐานในการเชื่อมต่อผ่านไคลเอนต์ฐานข้อมูล การตั้งค่าแอปพลิเคชัน การใช้ ORM หรือสั่งงานผ่านเทอร์มินัล
บทความนี้จะอธิบายโดยละเอียดถึงวิธีค้นหาและใช้งานบัญชี root รหัสผ่าน และรายละเอียดการเชื่อมต่อ (เช่น โฮสต์ พอร์ต และเส้นทาง Socket) สำหรับฐานข้อมูล MySQL, MariaDB, PostgreSQL และ Redis ที่ติดตั้งมาพร้อมกับ ServBay
ข้อกำหนดเบื้องต้น
กรุณาตรวจสอบตามรายการนี้ก่อนเริ่มต้น
- ได้ติดตั้งและเปิดใช้งาน ServBay แล้วเรียบร้อย
- ได้ติดตั้งและเริ่มต้นซอฟต์แวร์ฐานข้อมูลที่ต้องการ (เช่น MySQL, MariaDB, PostgreSQL, Redis) ใน ServBay แล้ว
การค้นหาข้อมูลการเชื่อมต่อฐานข้อมูลในหน้าจอควบคุมของ ServBay
ServBay มีอินเทอร์เฟซแบบกราฟิกช่วยอำนวยความสะดวกในการจัดการและตรวจสอบข้อมูลเชื่อมต่อฐานข้อมูล โดยเฉพาะสำหรับฐานข้อมูลที่ต้องมีการยืนยันตัวตนผู้ใช้ เช่น MySQL, MariaDB, PostgreSQL
ทำตามขั้นตอนต่อไปนี้เพื่อดูบัญชี root รหัสผ่าน และข้อมูลการเชื่อมต่อฐานข้อมูลดังกล่าว
- เปิดแผงควบคุมของ ServBay คุณสามารถเปิดไอคอน ServBay ได้จากโฟลเดอร์ Applications ใน macOS
- ในแถบเมนูด้านซ้าย เลือก
ฐานข้อมูล
- ในรายการฐานข้อมูล เลือกประเภทฐานข้อมูลที่ต้องการดูข้อมูลการเชื่อมต่อ เช่น
MySQL
- หากติดตั้ง MySQL หลายเวอร์ชัน ให้เลือกเวอร์ชันที่ใช้งานอยู่ เช่น
MySQL 8.4
- ในหน้ารายละเอียดเวอร์ชันทางด้านขวา คุณจะเห็น ชื่อผู้ใช้ Root และ รหัสผ่าน
- คลิกไอคอน
รูปตา
ข้างช่องรหัสผ่าน เพื่อแสดงรหัสผ่าน root แบบตัวอักษรปกติ
ในหน้านี้ยังสามารถดูข้อมูลการเชื่อมต่อที่ตั้งโฮสต์และพอร์ตของฐานข้อมูลเวอร์ชันนั้นได้อีกด้วย
หมายเหตุ: ถึงแม้บางเอกสารเวอร์ชันเก่าหรือขั้นตอนติดตั้งอาจกล่าวถึงรหัสผ่านค่าเริ่มต้น แต่ รหัสผ่านที่แสดงในหน้าจอควบคุมของ ServBay คือรหัสผ่านที่ใช้งานอยู่จริงในขณะนั้นเสมอ โปรดยืนยันข้อมูลจากหน้าจอควบคุมเป็นหลัก
สำหรับ PostgreSQL ผู้ใช้ระดับสูงสุด (คล้าย root) โดยปกติคือชื่อผู้ใช้ระบบของคุณขณะติดตั้ง ServBay ซึ่งจะแสดงในแผงควบคุมพร้อมรหัสผ่านที่ใช้งานอยู่
กรณี Redis โดยทั่วไปจะไม่มีการตั้งรหัสผ่าน แต่หากตั้งค่าไว้ สามารถดูข้อมูลการเชื่อมต่อและรหัสผ่านได้จากหน้าจอปรับแต่งของ Redis ใน ServBay
รายละเอียดการเชื่อมต่อฐานข้อมูลค่าเริ่มต้น
ด้านล่างคือข้อมูลการเชื่อมต่อฐานข้อมูลพื้นฐานที่พบได้บ่อยใน ServBay
ข้อมูลการเชื่อมต่อ MySQL (ค่าเริ่มต้น)
- ชื่อผู้ใช้: รับจากแผงควบคุม ServBay ปกติมักเป็น
root
- รหัสผ่าน: รับจากแผงควบคุม ServBay
- โฮสต์:
localhost
หรือ127.0.0.1
(สำหรับเชื่อมต่อผ่าน TCP/IP) - พอร์ต:
3306
(ค่าปกติ) - Socket:
/Applications/ServBay/tmp/mysql-<version>.sock
(โดย<version>
คือหมายเลขเวอร์ชันของ MySQL ที่ติดตั้ง เช่น8.4
และ ServBay อาจมี symlink ชี้ไปยังเวอร์ชันที่ใช้งานอยู่ เช่น/Applications/ServBay/tmp/mysql.sock
)
ข้อมูลการเชื่อมต่อ MariaDB (ค่าเริ่มต้น)
- ชื่อผู้ใช้: รับจากแผงควบคุม ServBay ปกติมักเป็น
root
- รหัสผ่าน: รับจากแผงควบคุม ServBay
- โฮสต์:
localhost
หรือ127.0.0.1
(สำหรับเชื่อมต่อผ่าน TCP/IP) - พอร์ต:
3306
(ค่าปกติ เหมือน MySQL) - Socket:
/Applications/ServBay/tmp/mariadb-<version>.sock
(<version>
คือเวอร์ชันของ MariaDB ที่ติดตั้ง และ ServBay อาจมี symlink ชี้ไปยัง/Applications/ServBay/tmp/mysql.sock
เพื่อความเข้ากันได้)
ข้อมูลการเชื่อมต่อ PostgreSQL (ค่าเริ่มต้น)
- ชื่อผู้ใช้: รับจากแผงควบคุม ServBay โดยปกติจะตรงกับชื่อผู้ใช้ระบบของคุณ
- รหัสผ่าน: รับจากแผงควบคุม ServBay
- โฮสต์:
localhost
หรือ127.0.0.1
(สำหรับเชื่อมต่อผ่าน TCP/IP) - พอร์ต:
5432
(ค่าปกติ) - Socket:
/Applications/ServBay/tmp/.s.PGSQL.5432
(ไฟล์ Socket สำหรับพอร์ต 5432)
ข้อมูลการเชื่อมต่อ Redis (ค่าเริ่มต้น)
- โฮสต์:
127.0.0.1
(TCP/IP) - พอร์ต:
6379
(ค่าปกติ) - รหัสผ่าน: โดยปกติไม่มีรหัสผ่าน หากตั้งค่าไว้จำเป็นต้องใช้รหัสผ่านนี้ในการเชื่อมต่อ
ข้อมูลการเชื่อมต่อ MongoDB
MongoDB โดยทั่วไปจะไม่ใช้ "root" ทั่วโลกและรหัสผ่านตั้งแต่เริ่มต้น หลังการติดตั้งมักยังไม่เปิดการยืนยันตัวตน หากคุณต้องการความปลอดภัยสูงขึ้น ให้เข้าไปสร้างผู้ใช้และกำหนดบทบาท เช่น root
ด้วย MongoDB Shell หรือไคลเอนต์ ซอฟต์แวร์ MongoDB ที่มากับ ServBay มีข้อมูลเชื่อมต่อเริ่มต้นดังนี้
- โฮสต์:
127.0.0.1
- พอร์ต:
27017
(ค่าปกติ) - ยืนยันตัวตน: โดยปกติจะยังไม่เปิดใช้งาน หากต้องการให้ปลอดภัย ให้สร้างผู้ใช้ตามเอกสาร MongoDB
การเชื่อมต่อฐานข้อมูลแบบ Socket
สำหรับแอปพลิเคชันหรือไคลเอนต์ที่รันอยู่บนเครื่องเดียวกันกับ ServBay (Local) การเชื่อมต่อแบบ Socket จะมีประสิทธิภาพและปลอดภัยกว่าการเชื่อมต่อผ่าน TCP/IP เพราะไม่ต้องผ่านเครือข่ายแต่จะอาศัยเส้นทางไฟล์บนเครื่อง
การเชื่อมต่อด้วย Socket (MySQL/MariaDB)
- เส้นทางไฟล์ Socket ที่ใช้บ่อย:
/Applications/ServBay/tmp/mysql.sock
: symlink ที่ ServBay อาจเตรียมไว้ให้ ชี้ไปยัง Socket ของ MySQL/MariaDB เวอร์ชันปัจจุบัน/Applications/ServBay/tmp/mysql-<version>.sock
(MySQL) หรือ/Applications/ServBay/tmp/mariadb-<version>.sock
(MariaDB): ชี้ไปยังเวอร์ชันเฉพาะ แนะนำใช้เส้นทางนี้เพื่อความชัดเจน
ตัวอย่างการเชื่อมต่อ (ด้วย mysql
CLI):
bash
# ใช้ symlink (ถ้ามีและถูกต้อง)
mysql -u root -p -S /Applications/ServBay/tmp/mysql.sock
# ใช้ไฟล์ socket เฉพาะเวอร์ชัน (แนะนำ ให้นำ <version> ไปแทนจริง เช่น 8.4)
mysql -u root -p -S /Applications/ServBay/tmp/mysql-8.4.sock
1
2
3
4
5
2
3
4
5
เมื่อรันคำสั่ง ระบบจะขอให้กรอกรหัสผ่าน root
การเชื่อมต่อแบบ Socket (PostgreSQL)
PostgreSQL มีวิธีจัดการ Socket ต่างออกไปโดย psql
จะให้ระบุ โฟลเดอร์ ที่เก็บไฟล์ socket ผ่านพารามิเตอร์ -h
(ไม่ใช่ไฟล์ socket โดยตรง) ไฟล์ socket จะชื่อ .s.PGSQL.<port>
- เส้นทางไฟล์ Socket:
/Applications/ServBay/tmp/.s.PGSQL.5432
(สำหรับพอร์ต 5432) โฟลเดอร์คือ/Applications/ServBay/tmp
ตัวอย่างการเชื่อมต่อ (ด้วย psql
):
bash
# แทนที่ your_system_username ด้วยชื่อผู้ใช้ของคุณ
psql -U your_system_username -h /Applications/ServBay/tmp -d your_database
1
2
2
เมื่อรันคำสั่ง ระบบจะขอรหัสผ่านสำหรับผู้ใช้นั้น-d your_database
คือชื่อฐานข้อมูลที่ต้องการ เชื่อมต่อ ถ้าไม่กำหนด psql
อาจเชื่อมต่อฐานข้อมูลชื่อเดียวกับผู้ใช้หรือฐานข้อมูลดีฟอลต์ (เช่น postgres
)
การเชื่อมต่อ Redis แบบ Socket
ขณะนี้ Redis ที่มากับ ServBay รองรับเฉพาะ TCP/IP ยังไม่รองรับการเชื่อมต่อแบบ Socket
ตัวอย่างคำสั่งเชื่อมต่อฐานข้อมูล
ตัวอย่างด้านล่างเป็นคำสั่งสำหรับเชื่อมต่อไปยังฐานข้อมูลใน ServBay ผ่านเทอร์มินัล (CLI) แทนที่ชื่อผู้ใช้ รหัสผ่าน (ระบบจะขอกรอกเอง) และชื่อฐานข้อมูลด้วยของคุณเอง
การเชื่อมต่อ MySQL
เชื่อมต่อผ่าน TCP/IP:
bash# เชื่อมต่อ localhost พอร์ต 3306 เป็น root mysql -u root -p -h localhost -P 3306
1
2เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน root
เชื่อมต่อผ่าน Socket:
bash# ใช้ symlink ของ ServBay mysql -u root -p -S /Applications/ServBay/tmp/mysql.sock # หรือ socket เฉพาะเวอร์ชัน (แนะนำ) # แทน <version> ด้วยเวอร์ชันเช่น 8.4 mysql -u root -p -S /Applications/ServBay/tmp/mysql-8.4.sock
1
2
3
4
5
6เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน root
การเชื่อมต่อ MariaDB
คำสั่ง MariaDB แทบไม่ต่างจาก MySQL เพราะ MariaDB ออกแบบมาให้ใช้งานร่วมกันได้
เชื่อมต่อผ่าน TCP/IP:
bash# เชื่อมต่อ localhost พอร์ต 3306 เป็น root mysql -u root -p -h localhost -P 3306
1
2เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน root
เชื่อมต่อผ่าน Socket:
bash# ใช้ symlink ที่อาจชี้ไป MariaDB mysql -u root -p -S /Applications/ServBay/tmp/mysql.sock # หรือ socket เฉพาะเวอร์ชันของ MariaDB (แนะนำ) # แทน <version> ด้วยเวอร์ชันที่ใช้งาน mysql -u root -p -S /Applications/ServBay/tmp/mariadb-<version>.sock
1
2
3
4
5
6เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน root
การเชื่อมต่อ PostgreSQL
เชื่อมต่อผ่าน TCP/IP:
bash# เปลี่ยน your_system_username กับ ฐานข้อมูลที่ต้องการ psql -U your_system_username -h localhost -d your_database -p 5432
1
2เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน
เชื่อมต่อผ่าน Socket:
bash# เปลี่ยน your_system_username กับชื่อ database # -h ตามด้วยโฟลเดอร์ของไฟล์ socket คือ /Applications/ServBay/tmp psql -U your_system_username -h /Applications/ServBay/tmp -d your_database
1
2
3เมื่อรันคำสั่ง กด Enter เพื่อกรอกรหัสผ่าน
การเชื่อมต่อ Redis
Redis ส่วนใหญ่เชื่อมต่อผ่าน TCP/IP
เชื่อมต่อผ่าน TCP/IP:
bash# เชื่อมต่อ localhost พอร์ต 6379 redis-cli -h 127.0.0.1 -p 6379 # หากตั้งรหัสผ่าน redis เพิ่ม -a # redis-cli -h 127.0.0.1 -p 6379 -a your_redis_password
1
2
3
4
5เชื่อมต่อแบบ Socket: ขณะนี้ยังไม่รองรับการเชื่อมต่อ Redis ด้วย Socket ใน ServBay
กรณีการนำไปใช้
การรับข้อมูลเชื่อมต่อฐานข้อมูลเป็นพื้นฐานของการพัฒนาเว็บและการบริหารจัดการฐานข้อมูล โดยมีกรณีใช้ที่สำคัญดังนี้
- เครื่องมือบริหารจัดการฐานข้อมูล: ใช้ไคลเอนต์กราฟิก เช่น TablePlus, DBeaver, phpMyAdmin, pgAdmin เชื่อมต่อมายัง ServBay เพื่อดู แก้ไข นำเข้า ส่งออกข้อมูล
- การตั้งค่าแอปพลิเคชัน: กำหนดค่าการเชื่อมต่อฐานข้อมูลใน config หรือ environment variable ของแอปพลิเคชันเว็บที่เขียนด้วย PHP, Node.js, Python, Go, Java ฯลฯ
- การตั้งค่า ORM: กำหนดค่าตัวเชื่อม ORM เช่น Laravel Eloquent, Django ORM, SQLAlchemy, TypeORM ให้เชื่อมต่อฐานข้อมูล
- การใช้งานผ่านเทอร์มินัล: ใช้เครื่องมือ CLI ของฐานข้อมูลเพื่อรัน SQL จัดการผู้ใช้ สำรองและกู้คืนข้อมูล
ข้อควรระวัง
- ด้านความปลอดภัย: รหัสผ่านเริ่มต้นถูกตั้งขึ้นเพื่อความสะดวกในการพัฒนา แม้ ServBay จะเน้นใช้งานภายในเครื่อง แต่ขอแนะนำให้เปลี่ยนรหัสผ่าน root เมื่อจำเป็นต้องเชื่อมต่อจากเครือข่าย หรือเพื่อความปลอดภัย
- การเปลี่ยนรหัสผ่าน: ServBay มีเมนูแก้ไขรหัสผ่าน root สำหรับ MySQL, MariaDB, PostgreSQL หลังเปลี่ยนรหัสผ่านต้องอัปเดตการตั้งค่าการเชื่อมต่อในแอปพลิเคชันและไคลเอนต์อื่นๆ
- การสำรองข้อมูลสำคัญ: บันทึกรหัสผ่านและข้อมูลเชื่อมต่อฐานข้อมูลที่คุณเปลี่ยนไว้ พร้อมเก็บรักษาให้ปลอดภัย
คำถามที่พบบ่อย (FAQ)
ถาม: ลืมรหัสผ่าน root ของฐานข้อมูลต้องทำอย่างไร?
ตอบ: สามารถดูรหัสผ่าน root ที่ใช้งานอยู่ได้ในหน้า
ฐานข้อมูล
ของแผงควบคุม ServBay (คลิกที่ไอคอนตาเพื่อแสดงรหัสผ่าน) หากไม่สามารถดูได้ (เช่น ฐานข้อมูลไม่ออนไลน์) ServBay มีฟังก์ชันรีเซ็ตรหัสผ่าน root ของ MySQL, MariaDB, PostgreSQL ซึ่งอยู่ในส่วนการตั้งค่าของแต่ละเวอร์ชันถาม: สามารถเปลี่ยนรหัสผ่าน root ได้หรือไม่?
ตอบ: ทำได้ และควรเปลี่ยนเพื่อความปลอดภัย โดยเปลี่ยนได้ในแผงควบคุมของ ServBay ที่หน้าการตั้งค่าแต่ละเวอร์ชันฐานข้อมูล หลังเปลี่ยนรหัสผ่าน ให้ปรับแต่งการเชื่อมต่อในแอปพลิเคชันหรือไคลเอนต์ให้ใช้รหัสใหม่ทุกครั้ง
ถาม: เหตุใด PostgreSQL ไม่มีชื่อผู้ใช้ 'root'?
ตอบ: PostgreSQL มีระบบสิทธิ์ต่างจาก MySQL/MariaDB โดยผู้ใช้ระดับสูงสุด (superuser) จะสร้างขึ้นตั้งแต่สร้างคลัสเตอร์ฐานข้อมูล ในค่าเริ่มต้นของ ServBay จะใช้ชื่อผู้ใช้ระบบของคุณเอง สามารถใช้บัญชีนี้เชื่อมต่อหลัก แล้วสร้างผู้ใช้ใหม่และกำหนดสิทธิ์เพิ่มเติมได้
ถาม: ทำไมเชื่อมต่อแบบ Socket แล้วไม่สำเร็จ?
ตอบ: ตรวจสอบก่อนว่าบริการฐานข้อมูลกำลังรันอยู่ สำหรับ MySQL/MariaDB ดูว่าเส้นทาง Socket ที่กรอกถูกต้องหรือไม่ (แนะนำใช้แบบมีเวอร์ชันกำกับ) สำหรับ PostgreSQL ให้แน่ใจว่าในคำสั่ง
psql
ใช้-h
ตามด้วยโฟลเดอร์ที่เก็บไฟล์ socket (/Applications/ServBay/tmp
) ไม่ใช่ไฟล์ socket โดยตรง
สรุป
การรู้และรับข้อมูลเชื่อมต่อฐานข้อมูล (MySQL, MariaDB, PostgreSQL, Redis) ที่มาพร้อม ServBay เป็นพื้นฐานสำคัญสำหรับงานพัฒนาเว็บและบริหารจัดการฐานข้อมูล โดยคุณสามารถดูชื่อผู้ใช้ root รหัสผ่าน และข้อมูลการเชื่อมต่อผ่านแผงควบคุมของ ServBay ได้ง่ายๆ Redis ไม่มีรหัสผ่านโดยค่าเริ่มต้น เชื่อมต่อด้วย TCP/IP เป็นหลัก ในบทความมีตัวอย่างวิธีเชื่อมต่อทั้งแบบ TCP/IP และ Socket พร้อมกรณีใช้งาน คำแนะนำความปลอดภัย และ FAQ หวังว่าจะช่วยให้นักพัฒนาทำงานกับ ServBay ได้อย่างมีประสิทธิภาพมากขึ้น