ในกรณีที่ตอน Install ไม่ได้เลือก Collation ของ Server ให้เป็นไปตามต้องการ
(โดยปกติแล้ว Server จะ Default เป็น SQL_Latin bla bla bla)
1 หา setup.exe ใน Path ที่ Install SQL Server เช่น
C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\SQLServer2008R2\
หรือจาก Media Path ที่มี setup.exe อยู่ เช่น
D:\SQL2008R2
2 run command window. เพื่อจะใช้คำสั่งผ่าน Command line.
3 จัดการรัน command ตามนี้
setup.exe /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLCOLLATION=Thai_CI_AI /SQLSYSADMINACCOUNTS="WIN2008BI\SQLadmin" /SAPWD="myP@ss"
ข้อควรระวังตรงนี้คือ User ที่จะใช้ในการรันจะเป็น Window user ไม่ใช่ sa ของ SQL Server น่ะ
จากตัวอย่างคือ "WIN2008BI" = Server Name , SQLadmin = Account , และ SAPWD = "myP@ss" คือ Password ในการ Login เข้า Window
---------------------------
ERROR LOG กรณีใส่ parameter ผิด
Log file สามารถเข้าไปดูได้ที่
C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log
Summary.txt คือไฟล์สรุป Log สามารถดูที่บรรทัดสุดท้ายว่ามี Exception หรือไม่ ถ้ามีแสดงว่าการ Setup ไม่ผ่าน อาจจะมีข้อผิดพลาดจากเรื่อง User / Password หรืออื่นๆ ให้อ่านในส่วน Exception นี้
ตัวอย่าง
Exception summary:
The following is an exception stack listing the exceptions in outermost to innermost order
Inner exceptions are being indented
Exception type: Microsoft.SqlServer.Chainer.Infrastructure.InputSettingValidationException
Message:
The Windows account ”W28BI401\sos” does not exist and cannot be provisioned as a SQL Server system administrator.
Data:
SQL.Setup.FailureCategory = InputSettingValidationFailure
DisableWatson = true
Stack:
at Microsoft.SqlServer.Chainer.Infrastructure.InputSettingService.LogAllValidationErrorsAndThrowFirstOne(ValidationState vs)
at Microsoft.SqlServer.Configuration.SetupExtension.ValidateFeatureSettingsAction.ExecuteAction(String actionId)
at Microsoft.SqlServer.Chainer.Infrastructure.Action.Execute(String actionId, TextWriter errorStream)
at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionHelper(TextWriter statusStream, ISequencedAction actionToRun)
Inner exception type: Microsoft.SqlServer.Configuration.SqlEngine.ValidationException
Message:
The Windows account ”win2008BI\SQLadmin” does not exist and cannot be provisioned as a SQL Server system administrator.
ข้อควรระวังเกี่ยวกับ Account Name , IT CASE SENSITIVE ตัวเล็กตัวใหญ่มีผลครับ - -"
เช่น WIN2008BI แตกต่างจาก win2008BIถ้า server name จริงเป็นตัวใหญ่หมดก็ต้องใช้ตัวใหญ่ทั้งหมดใน parameter ไม่งั้นมันก็บอกว่าไม่มี Account นั้น ฮ่าๆ
ขอให้เปลี่ยน Collation สำเร็จนะครับ :)