【问题标题】:Changing User's Password In SQL Server 2012在 SQL Server 2012 中更改用户密码
【发布时间】:2021-02-10 15:52:31
【问题描述】:

我安装了 Microsoft SQL Server 2012。我打开 Microsoft SQL Server 管理并使用 Windows 身份验证登录。我不知道“sa”的默认密码。所以,我需要改变它。 我按照这个问题的答案中的步骤操作:Unable to change the password of "sa" in SQL Server 2008 但密码没有改变!

为了更好地理解,请按顺序查看这些屏幕截图:
1.我选择登录。之后,我选择“sa”。然后,选择“属性”。


2. 如您所见,密码长度为 15 个字符。


3.我把它改成“1234”。 (密码的长度逻辑上将等于 4 个字符)然后选择“确定”


  1. 我尝试使用 SQL Server 身份验证登录 但是我无法登录系统。

你对这个奇怪的问题有什么想法吗?

一些不成功的尝试

  • 我尝试过其他复杂字符的密码,例如“@#FGHbnm1234567890”
  • 我用这个链接Options to Change SQL Server to Mixed Mode Authentication改变了认证模式
  • 我已经重新安装了 SQL 服务器。
  • 我创建了一个新用户。但是新用户的密码是不可更改的,比如“sa”

更新
我首先说密码的长度不正确。但我注意到密码的长度不是安全方面的实际长度。我修改了第 4 步,为我的索赔提供了更好的理由

更新 2
我打开日志: 看来我的认证方式不对:

用户“sa”登录失败。原因:尝试使用 SQL 登录 身份验证失败。服务器配置为 Windows 身份验证 只要。 [客户:]

但我之前更改了身份验证模式:

SQL Server和windows认证方式

更新 3
终于,我的问题解决了! 我的问题的原因是错误地更改了身份验证模式。 Larnu的答案是一个很好的解决方案。另外,我建议使用此链接进行分步指南:How To Enable SQL Server Authentication

【问题讨论】:

  • 为什么说密码没变?如果您输入了新密码,点击“确定”,并且没有错误,则密码更改。
  • 用户界面总是显示15个点,它不知道现有密码是什么。为什么不尝试使用更改后的密码登录,这应该可以。
  • 那些图片什么也没告诉我们。请改为检查 SQL Server 的日志,然后找到连接失败日志并将该错误发布到您的问题中。
  • 您确定您正在运行混合模式身份验证(而不仅仅是 Windows)。请张贴截图确认。当您安装 SQL Server 时,它会要求您输入 sa 的密码。如果不是,则您仅在 Windows 中进行身份验证(这通常是个好主意)
  • ... @AlirezaMazochi 读取错误。 “服务器配置为仅用于 Windows 身份验证。”这是你的问题。

标签: sql sql-server sql-server-2012 change-password


【解决方案1】:

这里真正的问题是您的服务器只配置了 Windows 身份验证。如果实例处于仅 Windows 身份验证模式,您无法使用 SQL 身份验证连接到实例,因为(很明显)SQL 身份验证不是 Windows 身份验证。

你需要change the authentication mode的服务器:

启用sa登录

您可以使用 SSMS 或 T-SQL 启用 sa 登录。

使用 SSMS

  1. 在对象资源管理器中,展开安全,展开登录,右键单击 sa,然后单击属性。
  2. 在“常规”页面上,您可能需要为 sa 登录创建并确认密码。
  3. 在状态页面的登录部分,单击启用,然后单击确定。

使用 Transact-SQL

以下示例启用 sa 登录并设置新密码。在运行之前替换为强密码。

ALTER LOGIN sa ENABLE ;  
GO  
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>' ;  
GO  

更改身份验证模式 (T-SQL)

以下示例将服务器身份验证从混合模式 (Windows + SQL) 更改为仅 Windows。

注意

以下示例使用扩展存储过程来修改服务器注册表。如果您不正确地修改注册表,可能会出现严重问题。这些问题可能需要您重新安装操作系统。 Microsoft 不能> 保证可以解决这些问题。修改注册表需要您自担风险。

USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', 
     N'Software\Microsoft\MSSQLServer\MSSQLServer',
     N'LoginMode', REG_DWORD, 1
GO

对于混合身份验证,最终参数是2,而不是1

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-26
相关资源
最近更新 更多