สำหรับท่านที่เพิ่งเริ่มต้นใช้งาน SQL Server 2014 อาจพบปัญหาในการ Restore Database เช่นกรณีของผมตั้งใจว่าจะ Restore Database ชื่อ dbECNTEST จาก File Backup มาจาก dbECNNST
แต่ในขั้นตอนการ Restore สำหรับ SQL 2014 จะต่างไปจาก SQL 2008R2 ตรงที่โปรแกรมจะ Default ชื่อ Database ปลายทาง จาก Database ที่เรา Backup มา ถ้าไม่เปลี่ยนชื่อ database ให้ถูกต้องก็จะเจอปัญหา database ถูก Lock และใช้งาน ECONS ไม่ได้
ถ้าดูจาก database Explorer ก็จะเห็นว่า มี (Single User) อยู่ ไม่ต้องตกใจครับ วิธีการแก้ไขให้ Run Script นี้
ALTER DATABASE {dbECNNST} SET MULTI_USER WITH ROLLBACK IMMEDIATE
GO
ในกรณีนี้จะใช้ไม่ได้ถ้าหามี User Connection ค้างอยู่ ให้ Run Script นี้ก่อน
declare @execSql varchar(1000), @databaseName varchar(100)
— Set the database name for which to kill the connections
set @databaseName = ‘dbECNTEST’
set @execSql = ”
select @execSql = @execSql + ‘kill ‘ + convert(char(10), spid) + ‘ ‘
from master.dbo.sysprocesses
where db_name(dbid) = @databaseName
and
DBID <> 0
and
spid <> @@spid
exec(@execSql)
GO
ฐานข้อมูลจะกลับมาใช้งานได้ตามปรกติครับ
ใส่ความเห็น