แสดงบทความที่มีป้ายกำกับ MSSQL แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ MSSQL แสดงบทความทั้งหมด

06 มกราคม 2552

MSSQL การซ่อม Database เสียหายบางส่วน

ลักษณะอาการ
ฐานข้อมูลใช้ได้ปกติแต่ บางครั้ง Select แล้วจะ Error หรือ Save ข้อมูล แล้วขึ้น Error
อาจเกิดจาก Index หรือบางส่วนของข้อมูลเสียหาย อาจแก้ไขได้ดังนี้

วิธีการแก้ไข
1. ให้หยุดใช้งาน เครื่องอื่นๆ ทุกเครื่องก่อน
2. เข้าไปที่ Server (เครื่องที่ เป็นตัวเก็บฐานข้อมูล)
3. เข้า Enterprise Manager คลิกขวาที่ ฐานข้อมูลที่มีปัญหาแล้ว เลือก Properties
เลือกไปที่ Options แล้ว เลือกที่ Restrict accress แล้วเปลี่ยนเป็น Single User
4. ปิด Enterprise Manager
5. เข้า Query Analyzer เลือก ฐานข้อมูล ที่มีปัญหา แล้วใช้คำสั่ง
dbcc checkdb ('ชื่อฐานข้อมูลที่มีปัญหา',repair_allow_data_Loss)
Run จนกว่าจะไม่มี error
6. เข้า Enterprise Manager คลิกขวาที่ ฐานข้อมูลที่มีปัญหาแล้ว เลือก Properties
เลือกไปที่ Options แล้ว เปลี่ยน จาก Single User เป็น Member Of db_Owner แล้วเอา ติ๊กที่
Restrict accress ออก

04 มกราคม 2552

MSSQL ฐานข้อมูลขึ้น Suspect (FIX MSSQL Database Suspect)

ลักษณะอาการ
ฐานข้อมูลไม่สามารถ Access หรือ Open ไม่ได้

วิธีแก้ไข
1. เข้า Query Analyzer ใช้คำสั่ง
use master
go
sp_configure 'allow update', 1
reconfigure with override
go
2. ใช้คำสั่ง
update sysdatabases
set status = 32768
where name = 'ชื่อฐานข้อมูลที่มีปัญหา'

3. Stop SQL Server
4. Rename File .LDF ของ ฐานข้อมูลที่มีปัญหา เป็นชื่ออื่นก่อน
5. Start SQL Server ใหม่
6. เข้า Query Analyzer แล้วใช้
DBCC REBUILD_LOG('ชื่อฐานข้อมูลที่มีปัญหา', 'PATH+ชื่อFile.LDF)
7. ใช้คำสั่ง
use master
go
sp_configure 'allow update', 0
reconfigure with override
go
8. เข้า Enterprise Manager
ไปดูที่ ฐานข้อมูลที่มีปัญหา จะไม่เป็น Suspect แล้วแต่จะมี (DBO Use Only)
ให้ คลิกขวาที่ฐานข้อมูลที่มีปัญหา แล้วเลือก Properties เข้าไปที่ Options
จะเห็นว่า Restrict access ติ๊กอยู่ แล้ว ให้เอา ติ๊กออก