我需要将一些数据库从一台服务器迁移到另一台服务器,以停用第一台服务器。此服务器共享网络共享和数据库。在迁移之前,为了确保数据完整性,我需要避免用户连接到数据库以及网络资源。我如何才能踢掉所有用户的连接(并保持断开连接),但管理员的连接除外?
如果这很重要,那么两个服务器现在都是 DC。
答案1
- 您可以使用防火墙阻止新用户连接(不要忘记为管理员留下例外)。
- 然后您可以使用
logoff
或tskill
命令关闭 RDP 会话 - 然后你可以使用以下命令关闭打开的 SMB 会话
net session \\<computer> /delete
答案2
对于数据库,您可以发出以下命令,前提是连接到数据库的帐户没有 db_owner 权限:
ALTER DATABASE <dbname> SET OFFLINE WITH ROLLBACK IMMEDIATE;
go
ALTER DATABASE <dbname> SET ONLINE
go
ALTER DATABASE <dbname> SET RESTRICTED_USER
GO
要注销通过 RDP 连接的任何用户,您可以使用以下方式查询已连接的用户:
quser
...并使用列出的 ID 注销所有已连接的用户:
logoff <ID>
然后,你可以使用以下命令断开任何打开的 smb 会话:
net sessions \\<computer> /delete
然后,我将访问共享权限并在创建设置屏幕截图后删除所有权限。这将阻止新的连接。