`
zhangrong108
  • 浏览: 205299 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

解决sqlserver (数据库)sa 被锁定问题

阅读更多

使用window用户登录进去,新建一个查询框,执行这条语句

 

alter login sa with password = '123'
 unlock, check_policy = off, check_expiration = off
   一切搞定。。

 

 

可以进行查询:

CREATE Table #Who(spid int,
    ecid int,
    status nvarchar(50),
    loginname nvarchar(50),
    hostname nvarchar(50),
    blk int,
    dbname nvarchar(50),
    cmd nvarchar(50),
    request_ID int);

CREATE Table #Lock(spid int,
    dpid int,
    objid int,
    indld int,
    [Type] nvarchar(20),
    Resource nvarchar(50),
    Mode nvarchar(10),
    Status nvarchar(10)
);

INSERT INTO #Who
    EXEC sp_who active  --看哪个引起的阻塞,blk 
INSERT INTO #Lock
    EXEC sp_lock  --看锁住了那个资源id,objid 

DECLARE @DBName nvarchar(20);
SET @DBName='NameOfDataBase'

SELECT #Who.* FROM #Who WHERE dbname=@DBName
SELECT #Lock.* FROM #Lock
    JOIN #Who
        ON #Who.spid=#Lock.spid
            AND dbname=@DBName;

--最后发送到SQL Server的语句
DECLARE crsr Cursor FOR
    SELECT blk FROM #Who WHERE dbname=@DBName AND blk<>0;
DECLARE @blk int;
open crsr;
FETCH NEXT FROM crsr INTO @blk;
WHILE (@@FETCH_STATUS = 0)
BEGIN;
    dbcc inputbuffer(@blk);
    FETCH NEXT FROM crsr INTO @blk;
END;
close crsr;
DEALLOCATE crsr;

--锁定的资源
SELECT #Who.spid,hostname,objid,[type],mode,object_name(objid) as objName FROM #Lock
    JOIN #Who
        ON #Who.spid=#Lock.spid
            AND dbname=@DBName
    WHERE objid<>0;

DROP Table #Who;
DROP Table #Lock;



 

1
0
分享到:
评论

相关推荐

    提高SQL Server数据库安全性的几点思考.pdf

    在文章《提高SQL Server数据库安全性的几点思考》中,作者王桃群就如何提高SQL Server数据库的安全性提出了几个实用的建议。 首先,文章指出了SQL Server数据库的安全隐患主要来源于其默认的网络配置。为了减少安全...

    图书馆SQL Server数据库安全配置.pdf

    1. SQL Server数据库及其安全性问题 SQL Server是一款关系型数据库管理系统,广泛应用于企业数据存储和处理。由于它通常需要与操作系统交互,因此其安全性问题需要特别关注。如果数据库系统遭受攻击,整个系统的...

    C++连接SQL SERVER2008数据库

    _bstr_t strConnect = "Driver={sqlserver};server=127.0.0.1,1433;uid=sa;pwd=pp471006459;database=PBMS;"; sqlSp-&gt;Open(strConnect, "", "", adModeUnknown); ``` 此段代码定义了连接字符串,并使用`sqlSp-&gt;Open`...

    C++连接SQL数据库分步骤进行

    为了确保C++能够成功连接到SQL数据库,首先要配置SQLSERVER服务器。这包括: 1. 将服务器设置为SQL登录模式,这意味着你需要使用SQL账户(如sa)进行身份验证。 2. 在系统安全性设置中,启用sa用户的登录功能,并为...

    关于 SQL Server 登录问题(错误 233和18456)的解决方法

    ### 关于 SQL Server 登录问题(错误 233 和 18456)的解决方法 #### 错误 233 的解决方法 **背景:** 当您尝试使用特定的身份验证方式(例如 sa 账户)登录到 SQL Server 实例时,可能会遇到错误 233。这个错误...

    asp访问sqlserver数据库.ppt

    ASP访问SQL Server数据库是Web开发中的常见操作,它利用ActiveX Data Objects (ADO)与数据库进行交互。在ASP中,ADO包含三个核心对象:Connection、Recordset和Command,它们分别用于建立数据库连接、处理数据记录集...

    asp访问sqlserver数据库PPT学习教案.pptx

    综上所述,ASP通过ADO对象访问SQL Server数据库涉及建立数据库连接、创建Recordset对象、设置游标类型和锁定策略、执行SQL命令以及处理和关闭数据连接。掌握这些知识点对于开发基于ASP的数据库驱动网站至关重要。

    针对数据库出现的一些问题总结

    在使用SQL Server数据库时,初学者常常会遇到各种登录问题,这些问题可能涉及到账户锁定、密码策略以及网络连接等。以下是一些常见问题的详细解析及解决办法。 首先,我们来看“sa 登录失败,错误18456”的问题。这...

    SQL_SERVER_2005_登陆18456错误的解决方法

    SQL Server 2005 登陆 18456 错误的解决方法是指在使用 Microsoft SQL Server 2005 时遇到的登录错误问题的解决方法。本文将对三个常见的问题进行讨论,并提供相应的解决方法。 问题一:忘记了登录 Microsoft SQL ...

    C#更新SQLServer中TimeStamp字段(时间戳)的方法

    在`Form1`构造函数中,创建了一个`SqlConnection`对象,并设置了连接字符串,用于连接到SQL Server数据库。这里假设数据库名为"Test",服务器IP为"192.168.18.205",用户名为"sa",密码为"kicpassword"。 2. 读取...

    SQL05数据库无法连接服务

    - 错误18452表明`sa`用户无法与SQL Server建立信任连接,这通常意味着SQL Server的身份验证模式可能存在问题,或者`sa`用户的权限被限制。 - 当尝试登录`KITCHEN\SQLEXPRESS`实例时出现此错误,可能是因为该实例的...

    SQL Server 2016 配置 SA 登录教程

    SQL Server 2016是Microsoft推出的一款关系型数据库管理系统,广泛应用于数据存储、数据分析以及企业级应用。在使用SQL Server时,SA登录是管理员权限的默认账户,它具有系统级别的权限,能够执行所有数据库操作。这...

    SQL SERVER去密码脚本

    在SQL Server数据库管理系统中,有时用户可能会遇到一个棘手的问题:在安装时明明没有设置SA(系统管理员)账户的密码,但在尝试登录时却被要求输入密码。这种情况可能是由于多种原因引起的,例如默认的安全配置或者...

    SQL2005 解除用户锁定的方法

    对于SQL Server 2005环境中的用户锁定问题,通过合理的T-SQL命令操作可以轻松解决。管理员应该熟悉这些命令,并根据实际情况灵活运用,以确保系统的稳定运行和数据的安全。此外,还应定期对密码策略进行审查和调整,...

    SQL Server误区30日谈

    《SQL Server误区30日谈》是一本针对SQL Server数据库管理与优化的专业读物,旨在揭示在使用过程中常被误解或忽视的问题。SQL Server作为一款广泛应用于企业的数据库管理系统,其性能、安全性和稳定性对企业的数据...

    asp连接SQL数据库.pdf

    在ASP中连接SQL数据库,主要是为了实现网页与数据库之间的交互,比如读取、更新、插入和删除数据。以下是对几种常见ASP连接SQL数据库方法的详细说明: 1. **通过ADODB.Connection对象连接** 在ASP中,我们首先需要...

    SQL2008的sa账户被禁用其他账户无法连接的快速解决方法

    总的来说,解决SQL2008中`sa`账户被禁用且其他账户无法连接的问题,关键在于理解如何利用单用户模式和具备管理员权限的Windows账户来恢复对SQL Server的管理访问。通过遵循上述步骤,可以有效地恢复系统功能,而无需...

    weblogic10配置sqlServer2000数据源

    - JDBC URL:通常格式为jdbc:jtds:sqlserver://your_server_address:port/database_name,如果是Microsoft JDBC Driver,则格式为jdbc:sqlserver://your_server_address:port;databaseName=database_name。 - ...

    SQL Server 2000认证与权限机制及其安全策略初探.pdf

    本文详细探讨了SQL Server 2000数据库管理系统中的认证与权限机制,以及与之相关的安全策略。SQL Server 2000是微软公司推出的基于客户机/服务器结构的关系数据库管理系统。该系统支持XML,集成了Internet功能,并...

Global site tag (gtag.js) - Google Analytics