方法一:SQL Server 2005 SP2或更高版本(触发器)

SQL Server 2005升级到SP2或者更高的版本的时候,还可以通过新增的触发器来实现控制。

执行下面的T-SQL后,将使除IP地址为192.168.1.1之外的客户端连接失败。

USE master;
GO

CREATE TRIGGER tr_LoginCheck
ON ALL SERVER
FOR LOGON
AS
BEGIN
    DECLARE @clientHost NVARCHAR(15);

    SET @clientHost = EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]', 'nvarchar(15)');

    IF @clientHost NOT IN ('192.168.1.1', '192.168.1.2', '192.168.1.3')
        ROLLBACK TRAN;
END;
GO

在ssms中查看

无法登录的处理方法

使用DAC登陆执行删除触发器语句

1、进入CMD 执行  sqlcmd -A -S localhost    //服务器名  当前示例是本机

2、执行删除触发器语句  DROP TRIGGER tr_LoginCheck ON ALL SERVER

3、输入GO 

4、 OK  (有可能结果提示执行失败,但是实际已经删除触发器了  可以试试)

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部