Wednesday, September 18, 2013

SQL Server database tukar status DB daripada status 'single-user mode'.



Credit: http://remidian.com/
Pada suatu ketika bila tetiba database berada dalam status 'Single-User Mode'.
Langkah pertama adalah perlunya untuk execute sp_dboption

1> exec sp_dboption 'testdb01', 'single user', 'FALSE';
2> go
Msg 5064, Level 16, State 1, Server REMIDIAN01, Line 1
Changes to the state or options of database 'testdb01' cannot be made at this
time
. The database is in single-user mode, and a user is currently connected to
it
.
Msg 5069, Level 16, State 1, Server REMIDIAN01, Line 1
ALTER DATABASE statement failed
.
sp_dboption command failed
.
Selepas tu, guna TSQL untuk tahu semua sessions yang connect dengan database tersebut. TSQL script- untuk retrieve sessions per database.
select d.name, d.dbid, spid, login_time, nt_domain, nt_username, loginame
from sysprocesses p inner join sysdatabases d on p.dbid = d.dbid
where d.name = 'testdb01'
go

Matikan sessions menggunakan 'kill’ command.
1> kill 51
2> go
1>
Sekarang single-user mode telah dimatikan. Check guna script dibawah.
1> exec sp_dboption 'testdb01', 'single user', 'FALSE'
2> go
1>
Share: