เมื่อ SQL Server ไม่ยอม Start ทั้งบน Windows มักเกิดจากฐานข้อมูลระบบเสียหาย ไฟล์หาย หรือ service ค้าง บทความนี้สรุปวิธีตรวจสอบที่ถูกต้อง พร้อมวิธีแก้ไขจากประสบการณ์ของทีมซัพพอร์ต VPS HiSpeed ที่พบในสถานการณ์จริงบ่อยที่สุด
สาเหตุที่ SQL Server ไม่ยอม Start
- master database เสีย ทำให้ Start ไม่ได้แน่นอน
- ไฟล์ model / msdb / tempdb หายหรือเสีย
- TempDB เต็มจน SQL Start ไม่ขึ้น
- Permission ของโฟลเดอร์เปลี่ยน เช่น หลังย้ายไฟล์
- Disk เต็ม
- Service ค้างหรือ Dependency ขาด
- Error จากระบบปฏิบัติการ (Windows/Linux)
ขั้นตอนตรวจสอบเบื้องต้นบน Windows
การตรวจสอบนี้เป็น ขั้นตอนแรกของการแก้ไข ห้ามข้ามขั้นเด็ดขาด
1. เปิด Event Viewer จากนั้นไปที่ Windows Logs และ System
2. มองหาข้อความ Error สีแดงของ SQL Server (MSSQLSERVER) และ SQLSERVERAGENT
ถ้าพบข้อความ “components missing” แปลว่า ไฟล์ระบบของ SQL Server ขาดหรือเสียหาย
แต่ Event Viewer จะไม่บอกว่า ไฟล์ไหนหรือเสียระดับไหน ต้องเข้าไปดูที่ SQL Error Log ดูได้ที่ขั้นตอนถัดไป
วิธีตรวจสอบ SQL Error Log
- เปิด SQL Server Configuration Manager
- เลือก SQL Server Services
- ดับเบิลคลิก service เลือก Startup Parameters หาพารามิเตอร์ -e (เจ้าตัวนี้ คือ path ของไฟล์ ERRORLOG)
- ตัวอย่าง path: C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Log\
- เปิดไฟล์ เช่น
ERRORLOG
เลื่อนไปท้าย log จะพบสาเหตุของปัญหา
เมื่อเจอปัญหาแล้วทำอย่างไร
ปัญหาหลักๆ ที่ต้องการให้โฟกัส 3 ข้อดังนี้
1. ดูว่ามีฐานข้อมูลระบบตัวไหนเสีย ด้วยการมองหาคำเหล่านี้ใน Error Log
mastermodelmsdbtempdb
ตัวอย่างข้อความที่พบบ่อย
Cannot open database 'master'
Error 3414: Database recovery failed
หมายความว่า
หากเป็น
masterหรือmodelนั้น SQL จะ Start ไม่ได้แน่นอนนี่คือปัญหาระดับระบบ ไม่ใช่แค่ Service ค้าง
2. ดูว่าระบบบอกว่าไฟล์หายหรือเปิดไม่ได้ ให้มองหาข้อความลักษณะนี้
Unable to open the physical file
The system cannot find the file specified
Access is denied
ความหมายคือ
ไฟล์ฐานข้อมูลอาจถูกลบ
Path เปลี่ยน
Permission ของโฟลเดอร์ผิด
หรือ Disk มีปัญหา
3. ดูว่ามีคำว่า corruption หรือ checksum หรือไม่
ตัวอย่างเช่น
SQL Server detected a logical consistency-based I/O error: incorrect checksum
ความหมายคือ
ไฟล์ฐานข้อมูลเสียหายจริง
มักเกิดจากเครื่องดับ ไฟตก หรือ Disk มีปัญหา
ดู Error Log แล้วแก้ยังไง
Error Log นั้นไม่ได้มีไว้ดูเฉย ๆ
แต่มีไว้เลือกวิธีแก้ให้ถูกต้อง VPS HiSpeed สรุปให้เป็นตารางเข้าใจง่าย
| สิ่งที่พบใน Error Log | แนวทางแก้ |
|---|---|
| master / model เสีย | Rebuild system databases หรือ Restore จาก backup |
| ไฟล์หาย / Path ผิด | แก้ Path / Permission หรือ Restore ไฟล์ |
| Permission denied | แก้สิทธิ์โฟลเดอร์ MSSQL |
| TempDB error | ลบไฟล์ TempDB แล้ว Start ใหม่ |
| Disk error | ตรวจสอบพื้นที่ / ขยาย Disk |
เคล็ดลับจากทีม VPS HiSpeed
สิ่งที่ไม่ควรทำเด็ดขาดคือ
ห้ามลบไฟล์ในโฟลเดอร์ MSSQL แบบสุ่ม
ห้าม Reinstall SQL โดยไม่ Backup
ห้ามเดาแก้โดยไม่อ่าน Error Log
เพราะอาจทำให้ข้อมูลหายถาวร
สรุป
ปัญหา SQL Server ไม่สามารถ Start ได้บน Windows VPS ส่วนใหญ่มักมีสาเหตุจากไฟล์ระบบหรือฐานข้อมูลหลักเสียหาย โดยเฉพาะ master, model หรือ tempdb การตรวจสอบ Event Viewer และ SQL Error Log อย่างถูกวิธีจะช่วยให้ทราบสาเหตุที่แท้จริงได้รวดเร็วและแม่นยำ ก่อนดำเนินการแก้ไขใด ๆ ควรสำรองข้อมูลโฟลเดอร์ MSSQL ทุกครั้งเพื่อป้องกันความเสียหายเพิ่มเติม หากไม่มั่นใจในการแก้ไขด้วยตนเอง การติดต่อทีมซัพพอร์ตที่มีประสบการณ์จะช่วยลดความเสี่ยงและทำให้ระบบกลับมาใช้งานได้อย่างปลอดภัยมากขึ้น
หากมีข้อสงสัยเพิ่มเติม ทีมงานของเรายินดีช่วยเหลือเสมอ ติดต่อได้ที่ Facebook และ Line@
นิกร รักยิ่งงาม
นิกรเป็นผู้เชี่ยวชาญด้าน IT Support มากกว่า 12 ปี รับผิดชอบการช่วยเหลือลูกค้าด้านเทคนิคเกี่ยวกับ Windows Server, Linux Server, Forex VPS, Web Server, เว็บไซต์ CMS รวมถึงการตั้งค่า Domain และ DNS โดยเน้นการแก้ปัญหาแบบเข้าใจง่าย ทำให้ระบบกลับมาใช้งานได้เสถียรและปลอดภัย
นิกร รักยิ่งงาม
นิกรเป็นผู้เชี่ยวชาญด้าน IT Support มากกว่า 12 ปี รับผิดชอบการช่วยเหลือลูกค้าด้านเทคนิคเกี่ยวกับ Windows Server, Linux Server, Forex VPS, Web Server, เว็บไซต์ CMS รวมถึงการตั้งค่า Domain และ DNS โดยเน้นการแก้ปัญหาแบบเข้าใจง่าย ทำให้ระบบกลับมาใช้งานได้เสถียรและปลอดภัย


