SQL sa密码找回办法地址
sqlserver获取sa密码方法
获取 SQL Server 的 sa(System Administrator)账户密码是一项敏感的任务,通常不推荐在生产环境中进行。
在正规的环境中,访问数据库的权限应该受到严格的控制,而获取 sa 账户密码可能违反了安全政策。
在合法授权的情况下,如果你是 SQL Server 管理员或者有足够的权限,可以通过以下几种方法来重置 sa 账户密码:方法一:使用 SQL Server Management Studio (SSMS)1.打开 SQL Server Management Studio。
2.连接到 SQL Server 数据库引擎。
3.在 "Object Explorer" 中右键点击服务器,选择 "Properties"。
4.在 "Security" 选项卡中,找到 "SQL Server and Windows Authentication mode"选项,确保启用。
5.保存设置并重启 SQL Server 服务。
6.使用 Windows 身份验证连接到 SQL Server。
7.在 "Security" > "Logins" 中找到 sa 账户,右键点击选择 "Properties"。
8.在 "General" 选项卡中,更改密码并保存。
方法二:使用 T-SQL 命令如果你能够以 Windows 身份验证模式(Integrated Security)连接到 SQL Server,你可以使用以下 T-SQL 命令来更改 sa 密码:方法三:使用 SQL Server Configuration Manager1.打开 SQL Server Configuration Manager。
2.在左侧导航中选择 "SQL Server Services"。
sqlserver获取sa密码方法
sqlserver获取sa密码方法在SQL Server中,SA账户是系统管理员账户,具有最高权限。
如果忘记了SA账户的密码,可以通过以下方法来获取:1. 使用Windows身份验证登录:如果系统管理员账户的身份验证模式设置为Windows身份验证,那么可以使用Windows管理员账户登录到SQL Server,然后通过以下步骤重置SA密码:- 打开SQL Server Management Studio(SSMS)。
- 在连接对话框中选择服务器名称和身份验证,选择"Windows身份验证"。
- 单击“连接”按钮,登录到SQL Server。
- 在SSMS中,展开“安全性”文件夹,然后选择“登录”文件夹。
- 右键单击“sa”账户,选择“属性”选项。
- 在“通用”选项卡中,输入新密码,并确认密码。
- 单击“确定”按钮保存更改。
2. 使用SQL Server身份验证登录:如果系统管理员账户的身份验证模式设置为SQL Server身份验证,那么可以通过以下步骤来重置SA密码:- 打开SQL Server Configuration Manager。
- 在左侧面板中,选择“SQL Server Services”。
- 在右侧面板中,找到正在运行的SQL Server实例,右键单击它,然后选择“停止”选项。
- 等待服务停止后,再次右键单击实例,选择“属性”。
- 在属性对话框的“高级”选项卡中,找到“启动参数”,其中包含“-m”选项。
- 删除“-m”选项,并单击“确定”按钮保存更改。
- 关闭属性对话框,右键单击实例,选择“启动”选项,重新启动SQL Server服务。
- 打开SQL Server Management Studio(SSMS)。
- 在连接对话框中选择服务器名称和身份验证,并选择"SQL Server身份验证"。
- 输入一个具有管理员权限的用户名和密码,并单击“连接”按钮。
sqlserver数据库sa密码丢失问题处理
www . ufsoft . com
• 修改服务器属性 参数操作如下:
打开企业管理器, 查看sqlserver注册 的【属性】页签; 选择【服务器设 置】页签,勾取 {允许对系统目录 直接进行修改}选 项,确定后退出 即可。
www . ufsoft . com
重装SqlServer时的数据补救措施
• 如果SqlServer不允许windows身份验证模式,企业管理器 和查询分析器都无法成功打开时,则建议尝试重新安装 SqlServer数据库。 • 重新安装之前需做好SqlServer数据备份,备份方法如下:
对用友产品数据,如果【系统管理】模块能成功进入,可从系统 管理中对所有帐套数据进行帐套输出备份操作。
www . ufsoft . com
www . ufsoft . com
SqlServer数据库SA密码丢失问题处理
问题来源:用户 U8• 问题描述:
数据库安装的是MicroSoft SqlServer2000(个人版、企业 版等) 由于客观意外因素,将sqlserver数据库系统管理员sa密码 遗忘。
如果系统管理无法进入,则可进行物理数据文件的备份操作,包 括ufsystem、ufdata_***_****数据库。重新安装SqlServer数据库后 恢复粘贴先前备份的数据库文件即可。
www . ufsoft . com
数据库文件恢复粘贴操作步骤
• 下面以数据库Ufdata_001_2003为例(操作过程中用实际的数据库名称 替换下列脚本中的ufdata_001_2003) , • 帐套001存放路径为D:\U8soft\Zt001\2003, • 其中数据文件包括Ufdata.mdf、 Ufdata.ldf • (注:对001帐套数据文件应新建目录予以备份) • 1、重新安装SQL后,首先在系统管理模块中建立001帐套,帐套路径 同上,此时该001帐套为空帐套; • 2、--分离Pubs数据库,并将 skipchecks 设为 true,执行脚本如下(从查 询分析器中执行如下sql脚本即可): • {EXEC sp_detach_db 'ufdata_001_2003', 'true‘}
清除数据库sa密码
SQLServer2000 的sa密码忘记之后的解决方法今天,发现我维护的服务器的SQL2000 出错了。
前一段时间把服务器的密码告诉了另一个同事,他在上面装了个他做的系统,也不知道被他怎么搞的一下。
现在竟然启动企业管理器也连接不上。
原来的sa密码也不是我设置的。
他说也没有动过SQL2000,真的是麻烦。
以下是我找到的解决方法,但是对于我的机器好象还不太行。
"无法连接到服务器,用户xxx登陆失败"该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接.解决方法如下所示:1.在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server2.展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡3.在"身份验证"下,选择"SQL Server和 Windows ".4.重新启动SQL Server服务.在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那就通过修改注册表来解决此问题:1.点击"开始""运行",输入regedit,回车进入注册表编辑器2.依次展开注册表项,浏览到以下注册表键:[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/MSSQLServer]3.在屏幕右方找到名称"LoginMode",双击编辑双字节值4.将原值从1改为2,点击"确定"5.关闭注册表编辑器6.重新启动SQL Server服务.此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server.这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN/Administrators<机器名>/Administrator 被删除.要恢复这两个帐户,可以使用以下的方法:1.打开企业管理器,展开服务器组,然后展开服务器2.展开"安全性",右击"登录",然后单击"新建登录"3.在"名称"框中,输入 BUILTIN/Administrators4.在"服务器角色"选项卡中,选择"System Administrators"5.点击"确定"退出6.使用同样方法添加 <机器名>/Administrator 登录.说明:以下注册表键:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/MSSQLServer/LoginMode的值决定了SQL Server将采取何种身份验证模式.1.表示使用"Windows 身份验证"模式2.表示使用混合模式(Windows 身份验证和 SQL Server 身份验证).我在处理这个问题是这样做的:1. 重新注册SQL服务器,输入服务器名为: LOCALHOST ,这个时候系统可以重新连接到SQL数据库2.打开LOCALHOST下面的安全性->登录,修改sa的密码3. 编辑默认的Local服务连接的属性,修改为正确的sa的密码。
Sql server 2008忘记sa登录密码重置
1、首先确保已经在计算机的“服务”中打开了“SQL Server”和“SQL Server Browser”这两个基本服务,如下图所示
然后打开"SQL Server Management Studio",打开如下图所示的“连接到服务器”对话框
2、选择身份验证方式为“Windows身份验证”,在“运行”里输入sqlcmd,在命令提示符窗口输入EXEC sp_addsrvrolemember 'DESKTOP-K7NNNE7/wanda',
'sysadmin',然后回车。
(注:'DESKTOP-K7NNNE7/wanda'就是你的计算机名/管理员用户名)
3、如果"Windows身份验证”无法登录,请确保已经启用SQL Server远程连接(此步骤可在计算机的“开始”——“程序”中找到Microsoft SQL Server 2008 R2子菜单下的“Reporting Services配置管理器”打开并启用你的计算机名的报表服务器),
如下图所示。
-
4、然后连接,连接以后在左侧找到“安全性”——“登录名”——“sa”,双击打开就可以在里面重置“Sql Serveer验证”的密码了。
sql2008忘记sa的默认密码
情况一:只是忘记了密码方法一:sp_password null,'123,'sa'把sa的密码设为“123”执行成功后有“Command(s)completed successfully.”OK!方法二:第一步:打开SQL2008用管理员登录先,然后在服务名处右击选属性>安全性>右边的登录方式选项改为身份验证确定!第二步:选择安全性(展开)>登录名>双击sa>密码改成你需要的密码确定!然后关掉SQL2008或者断开连接第三步:点开始>程序>选择SQL2008>配置工具>打开configuration manager>展开SQL Server2005网络配置注意:选中MSSQLSERVER如果没有选中SQMEXPRESS>TCP/IP选项>先启用然后右键单击>属性>Ip地址选项卡>把已禁用的选项全部改成已启用>然后把SQL2008的服务重新启动一下!情况二:忘记了密码,而且从sysadmin中删除了builtin\Administrators帐号,现在没其他人是sysadmin了A:SQL Server2005/2008提供了针对该情况的更好的灾难恢复方法,无需侵入master数据库,不会对master数据库中的对象和数据(例如登陆帐号,证书等)造成损坏。
Windows管理员组的成员现在当SQL Server以单用户模式启动(另外一个名称为维护模式)的情况下对SQL Server有了访问权限。
通过使用单用户模式,SQL Server2005/2008避免了Windows管理员以sysadmin的身份在不被发现的情况下滥用权限。
Windows管理员帐号能进行部分维护任务,例如安装补丁等。
要将SQL Server以单用户模式启动,您可以在命令行模式下增加“-m”参数。
您也可以使用SQL Server配置管理员工具。
SQL2000修改sa密码时提示【错误2812:未能找到储存过程’sp_passwoed’】的解决方法
SQL2000修改sa密码时提示【错误2812:未能找到储存过程’sp_passwoed’】的解决方法1.我们在用SQL2000数据库经常会遇见忘记sa密码,需要修改sa密码,但是有时候修改sa密码时会提示错误2812:未能找到储存过程’sp_passwoed’2.遇到这种情况的解决方法是:打开开始菜单,找到SQL Server的程序组,选择运行程序组中的“查询分析器”,打开.3.打开“查询分析器”后会有一个登录窗口,因为sa密码不能修改,所以在连接使用的地方选择第一项“windows身份验证”。
如果操作系统中有多个SQLServer实例,请在上面SQL Server(S)项中,选择指定示例名。
最后点确定,进入查询分析器.4.在打开的窗口中把以下执行语句内容,全部复制到打开的查询分析新窗体中. create procedure sp_password@old sysname = NULL, -- the old (current) password@new sysname, -- the new password@loginame sysname = NULL -- user to change password onas-- SETUP RUNTIME OPTIONS / DECLARE VARIABLES --set nocount ondeclare @self intselect @self = CASE WHEN @loginame is null THEN 1 ELSE 2 END-- RESOLVE LOGIN NAMEif @loginame is nullselect @loginame = suser_sname()-- CHECK PERMISSIONS (SecurityAdmin per Richard Waymire) --IF (not is_srvrolemember('securityadmin') = 1)AND not @self = 1begindbcc auditevent (107, @self, 0, @loginame, NULL, NULL, NULL)raiserror(15210,-1,-1)return (1)endELSEbegindbcc auditevent (107, @self, 1, @loginame, NULL, NULL, NULL)end-- DISALLOW USER TRANSACTION --set implicit_transactions offIF (@@trancount > 0)beginraiserror(15002,-1,-1,'sp_password')return (1)end-- RESOLVE LOGIN NAME (disallows nt names)if not exists (select * from master.dbo.syslogins whereloginname = @loginame and isntname = 0)beginraiserror(15007,-1,-1,@loginame)return (1)end-- IF non-SYSADMIN ATTEMPTING CHANGE TO SYSADMIN, REQUIRE PASSWORD (218078) --if (@self <> 1 AND is_srvrolemember('sysadmin') = 0 AND exists (SELECT * FROM master.dbo.syslogins WHERE loginname = @loginame and isntname = 0AND sysadmin = 1) )SELECT @self = 1-- CHECK OLD PASSWORD IF NEEDED --if (@self = 1 or @old is not null)if not exists (select * from master.dbo.sysxloginswhere srvid IS NULL andname = @loginame and( (@old is null and password is null) or(pwdcompare(@old, password, (CASE WHEN xstatus&2048 = 2048 THEN 1 ELSE 0 END)) = 1) ) )beginraiserror(15211,-1,-1)return (1)end-- CHANGE THE PASSWORD --update master.dbo.sysxloginsset password = convert(varbinary(256), pwdencrypt(@new)), xdate2 = getdate(), xstatus = xstatus & (~2048)where name = @loginame and srvid IS NULL-- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE --exec('use master grant all to null')-- FINALIZATION: RETURN SUCCESS/FAILURE --if @@error <> 0return (1)raiserror(15478,-1,-1)return (0) -- sp_password5.复制完成后,点执行按钮(即下图绿色三角按钮),或者键盘上按F5执行.6.运行后,下方出现提示消息:命令已成功完成。
SQL Server数据库sa用户密码相关问题解决方法
SQL Server数据库sa用户密码相关问题解决方法SQL Server 是一个关系数据库管理系统。
它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。
在Windows NT 推出后,Microsoft 与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。
Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。
SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。
目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server, Access 等都采用了SQL语言标准。
虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。
1、请教如何查找sqlserver的sa密码?查询分析器,连接时,身份验证使用"使用windows身份验证"然后,执行:EXEC sp_password NULL, 'NewPassword', 'Sa'企业管理器-->实例名-->安全性-->登录-->双击右边的SA-->更改密码问:丢失SA密码如何找回?答:用户操作失误造成密码丢失。
有两种方法:如果数据不多,可重装TNSDB数据库。
如果只想找回密码,可将安装盘中的tnsdb.txt文件中的“insert intotns_secu_user(c_user_name,c_user_pwd,c_user_code,i_user_t ype,c_expiry_date,c_user_lock,c_user_disa,c_who_crea,c_when_c rea,c_who_modi,c_when_modi)values('sa','c12e01f2a13ff5587e1e9e4aedb8242d','',1,'','1 ','1','','','','')%”行。
SQL2000的sa密码找回方法
SQL2000的sa密码找回方法1.试试注销你的操作系统,用administrator登陆查询分析器--连接使用"windows身份验证"--如果这里能成功,你就执行下面的语句来修改sa的密码sp_password null,'新密码','sa'2.不行就rebuilt你的master??????<BR>以window用户的方式进去,在企业管理器中把sa的密码改回来,这个方法好象可以。
试试看<BR>我不想改密码,有没办法把原来的密码找回来?<BR>不会<BR>原来的密码是找不回来的. 因为SQL对于密码的加密算法是不可逆的. 所以你还是用windows身份验证进去改sa密码吧.<BR>以下来自微软网站问:我把我自己关在SQL Server 外面了,不能作为“sysadmin”登录。
有什么办法解决吗?我需要重新安装SQL Server吗?答:您不必重新安装SQL Server。
要想重新访问SQL Server,您需要修改SQL Server 2000 和SQL Server 7.0决定SQL Server身份验证模式的注册表键值。
在SQL Server 7.0中,该键为:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \MSSQLServer\MSSQLServer\LoginMode 在SQL Server 2000中,该键为:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MicrosoftSQLServer\\MSSQLServer\LoginMode “LoginMode”的值为0表示只进行Windows 的身份验证,为1表示验证模式为混合模式。
在您把自己关在外面之后,您可以把“LoginMode”改为1,重新启动SQL Server,然后以sa(system administrator)身份登录,输入您知道的sa密码即可。
sql的SA密码找回
sql的SA密码找回sql的SA密码找回1、请教如何查找sqlserver的sa密码?查询分析器,连接时,身份验证使用"使用windows身份验证"然后,执行:EXEC sp_password NULL, 'NewPassword', 'Sa'企业管理器-->实例名-->安全性-->登录-->双击右边的SA-->更改密码问:丢失SA密码如何找回?答:用户操作失误造成密码丢失。
有两种方法:如果数据不多,可重装TNSDB数据库。
如果只想找回密码,可将安装盘中的tnsdb.txt文件中的“insert intotns_secu_user(c_user_name,c_user_pwd,c_user_code,i_user_t ype,c_expiry_date,c_user_lock,c_user_disa,c_who_crea,c_when_cr ea,c_who_modi,c_when_modi)values('sa','c12e01f2a13ff5587e1e9e4aedb8242d','',1,'','1','1','','',' ','')%”行。
其中‘sa’后的‘c12e01f2a13ff5587e1e9e4aedb8242d’字串为sa的密码。
用他来替换tnsdb库中tns_secu_user表中的sa密码。
字段为c_user_pwd.2、sql server2000忘记sa密码的解决方法以“windows身份验证”方式登录SQL查询分析器,然后执行EXEC sp_password NULL,'hello','sa'就可以将sa的密码改为hello了。
SAV报告服务器帐户被锁及密码忘记进行重置的方法
SAV报告服务器密码问题处理symantec报告服务器有限制,如果连续登录错误超过3次,账号将被锁定。
如果账号锁定了,请按如下办法解锁:一.解锁办法情况1:对只具有单个默认实例的MSDE、MSSQL 2000/2005(如果SQL server安装时没有自定义实例名称,就应该属于这种情况。
),在dos窗口执行下面几个命令解锁帐号即可(注意,前两行后面有分号):C:\>osql -E1> use Reporting;2> update adminuser set Locked='' where user_name='admin';3> goexit(这里假定报告服务器登录用户名是admin.)情况2:对具有自定义实例名或多个实例的MSSQL 2000/2005 , 需要用-S 参数指定服务器名和实例名(-S server_name\instance_name )。
可以用下面的命令来查看实例名列表:C:\>osql -L假定服务器名是savserver,实例名是“SA VDB”,在命令行窗口中执行以下命令,并替换这两个参数:osql -E -S SERVER_NAME\INSTANCE_NAME即:osql -E -S savserver\SA VDB 注:即有此命令先找到当前报告服务器实例在osql 提示符后输入如下命令行(注意:前两行后面有分号):use Reporting;update adminuser set Locked='' where user_name='<username>';goexit用你被锁定的用户帐号名来替换<username>.(你们的报告服务器用户名应该是admin.)二.忘记密码后复位密码的方法如果你忘记了密码,解锁后还是不能登录报告服务器页面,请用如下方法之一复位密码。
SQLServer2008忘记sa密码
SQLServer2008忘记sa密码使⽤⼯具:
SQL Server 2008简版
1.进⼊SQL Server Management Studio
开始->所有程序->Microsoft SQL Server 2008 R2->SQL Server Management Studio->双击
2.登录
此⽅法只适⽤安装SQL Server时选择验证⽅式为SQL Server和Windows⽅式混合验证
⾝份验证选择->Windows ⾝份验证
3.确认⾝份验证
右键->属性
4.⾝份验证更改确认
若⾝份验证为Windows⾝份验证模式,则更改为混合验证模式
安全性->SQL Server和Windows⾝份验证模式->确定
5.重新设置sa密码
安全性->登录名->sa->常规->密码->确认密码->确定
注意:sa⼝令清除⼯具1.0
sa⼝令清除⼯具仅适合SQL Server 2000和 SQL Server 2005
使⽤sa⼝令清除⼯具1.0后,SQL Server 2008按上述过程更改密码时间提⽰报错
使⽤sa⼝令清除⼯具1.0将⽆法重置SQL Server 2008 sa密码。
SqlServer的sa账号被锁定
SqlServer的sa账号被锁定sql server的sa账号⽼是被锁(登录已锁定)问题:最近sa登录⽼是被锁定,去查看数据库->安全性->sa账号右键属性,在状态选项卡中找到sql server ⾝份验证,发现“登录已锁定”被勾选了;把这个勾选去掉,然后提⽰必须修改密码。
“登录已锁定”的勾选去掉并修改密码后⼜能使⽤⼗多分钟,如此反复。
原因分析及解决办法:1、如果短时间内不停连接,就会被SQL SERVER误认为是这是攻击,会⾃动将此账号锁定。
SqlServer⾃动锁定sa的解决代码。
要⽤windows⾝份验证登录,在查询分析器⾥输⼊(⽅法⼀:重置sa的密码):1 2 3 4 5ALTER LOGIN ⽤户名 ENABLE ;GOALTER LOGIN ⽤户名 WITH PASSWORD= 'password'unlock, check_policy = off, check_expiration = off;GO或者⽤windows⾝份验证登录后,数据库->安全性->sa账号右键属性:在状态选项卡中找到sql server ⾝份验证,显⽰“登录已锁定”;把这个勾选去掉,然后提⽰必须修改密码。
2、这样就将密码置空,然后再重启登录。
(⽅法⼆:SqlServer⾃动锁定sa账号保留原sa密码)SqlServer⾃动锁定sa账号保留原sa密码:⽤Windows⾝份登录SQLServer的SSMS后,【安全性】——【登录名】——【sa】在【sa】上点右键--属性:在打开的【登录名属性-sa】对话框中,在“常规”选项卡中,取消勾选“强制实施密码策略(F)”,确定。
重启SqlServer服务器后,原来的密码就可以正常使⽤了。
以后再也不会出现⾃动锁定sa密码的问题了。
Sybase数据库sa密码丢失后应当如何找回
在Sybase数据库中找回丢失的sa密码
1、在Sybase⽬录的install⼦⽬录的启动server⽂件
RUN_server(这⾥的server表⽰你的服务器名称,如这⾥我的是RUN_FENGLB)名,编辑该⽂件,
在其中的“\data\master.dat -sFENGLB”后加⼊参数 -psa,保存该⽂件。
2、如果服务器已经启动,先停⽌之。
3、启动⼀个DOS窗⼝,转到上⾯的install⽬录,将DOS窗⼝的属性的屏幕缓冲区⼤⼩设置为9999,将执⾏第1步批处理⽂件以启动server,在启动之后,将DOS窗⼝中的内容全部复制到记本事中,查找字符串“New SSO password for sa:”,后⾯的就是sa的新⼝令,需要记录⼀下。
4、切换到SQL Advangtage以sa账号登录,⼝令为刚刚得到的密码。
5、进⼊server以后,⽤命令sp_password修改sa⼝令:sp_password '原密码','新密码','⽤户名'
新密码的位数⼀定要⼤于6位,否则不能够更改成功。
6、回到第1步,去掉增加的选项-psa,保存退出。
sql不记得用户名跟密码怎么办
sql不记得⽤户名跟密码怎么办⽤windows管理员账户登录SQL server 2005后在对象资源管理器,安全性,登录名中双击登录名可以修改密码然后再通过SQL server⾝份验证登录即可-------------------------------------------------------------上⾯是2014-05-26遇到的问题,今天打开数据库⼜莫名其妙出现新的问题,我明明什么都没改啊,郁闷①⾸先是数据库的实例名,之前登录直接就是localhost做服务器名就可以登录了,今天还要加个实例名才能通过windows⾝份验证登录(localhost\SQLEXPRESS),真是奇怪。
②通过windows⾝份验证登录进去之后就去改sa⽤户的密码,就是⽂章最上⾯的操作,点击【确定】保存修改的时候,⼜报错了:TITLE: Microsoft SQL Server Management Studio------------------------------更改登录 'sa' 失败。
(Microsoft.SqlServer.Smo)------------------------------其他信息:执⾏⼀个 Transact-SQL 语句或批处理时发⽣的异常。
(Microsoft.SqlServer.ConnectionInfo)------------------------------不能为主体 sa 中设置凭据。
(Microsoft SQL Server、错误: 15535)------------------------------解决办法:对话框选项卡【映射到凭据】复选框未选中,把【映射到凭据】勾选上点击【确定】③之后⽤sql⾝份验证⽅式再去登录,⼜出现这个问题:已成功与服务器建⽴连接,但是在登录过程中发⽣错误的解决⽅案 (provider: 共享内存提供程序, error: 0 -管道的另⼀端上⽆任何进程。
忘记SQLServer SA密码的解决方法
A.无原密码的情况下更改登录密码
下面的示例将登录Victoria的密码更改为ok。
EXEC sp_password NULL, 'ok', 'Victoria'
B.更改密码
下面的示例将登录Victoria的密码由ok改为coffee。
EXEC sp_password 'ok', 'coffee'
输入下列命令,执行:
exec sp_password null,'新密码','sa'
好了,现在密码已经改变了,到企业管理器看看^_^
下面是我在SQL Server的帮助看到的关于存储过程sp_password的说明:
sp_password
添加或更改Microsoft? SQL Server?登录的密码。
返回代码值
0(成功)或1(失败)
注释
SQL Server密码可包含1到128个字符,其中可包括任何字母、符号和数字。
新密码以加密的形式更新和存储,因此,任何用户(甚至系统管理员)都不能查看密码。当sysadmin或securityadmin固定服务器角色的成员使用带全部三个参数的sp_password重新设置他们自己的密码时,审核记录反映的却是他们正在更改别人的密码。
忘记SQLServer SA密码的解决方法
我的台式机和本本分别安装了MS SQL Server,方便做测试用,结果时间长了,台式机SQL Server的密码忘记了……
难道……没有办法了吗?然是进不去了,但是我们还有查询分析器
验证的时候,选择按照Windows身份验证,就直接进去了……汗!
语法
sp_password [ [ @old = ] 'old_password' , ]
SQL身份验证模式和Sa密码
一、修改msde身份验证模式和系统管理员Sa的登录密码要从Windows账户身份验证模式切换到SQL的身份验证模式,请按以下步骤操作:1. 先停止MSSQLSERVER 以及所有其他相关服务(如SQLSERVERAgent)。
2. 打开注册表编辑器。
3. 找到以下两个子项之一(取决于MSDE 是作为默认MSDE 实例安装的还是作为命名实例安装的):HKEY_LOCAL_MACHINE\\Software\\Microsoft\\MSSqlserver\\MSSqlServer- 或者-HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Microsoft SQL Server\\<Instance Name>\\MSSQLServer\\4. 在右窗格中,双击LoginMode 子项。
5. 在DWORD 编辑器对话框中,将此子项的值设置为2。
确保选择了Hex 选项,然后单击确定。
(默认情况下,Windows LoginMode 注册表子项的值设置为1。
如果启用SQL 的身份验证模式,则此值为2。
)6. 重新启动MSSQLSERVER 和SQLSERVERAgent 服务以使更改生效。
至此,SQL验证模式切换完毕。
7.在运行菜单执行CMD 命令先进入命令行模式8.进入MSDE安装目录C:\\Program Files\\Microsoft SQL Server\\80\\Tools\\Binn目录9.执行命令osql -U sa -Q "sp_password NULL, \'password\', \'sa\'"(其中password 改为你要设置的密码,输入时注意单引号和双引号的格式)10、之后会提示输入默认口令,直接按回车即可。
密码修改成功。
修改了口令后不影响使用。
如果要改密码步骤同上。
此方法也可使用与命令行修改SQL2000企业版和专业版的sa口令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
今天看到这篇文章没有了SA密码,无法Windows集成身份登录,DBA怎么办?,有思路了
假设我们遇到很糟糕的情况
sa被禁用,服务器身份验证为Windows身份验证模式,Windows登录用户被删,没有其他sysadmin角色的登录用户
步骤一:
停掉SQLSERVER:在命令行 net stop mssqlserver
步骤二:
转到SQLSERVER的安装目录
然后加上/m /f 参数
步骤三:以为单用户模式启动SQLSERVER
步骤四:打开SSMS
这时候一定不要马上进行连接,需要点击取消,然后在左上角的点击新建查询,这个步骤跟DAC(专用管理员连接)的步骤是一样的
你会发现用Windows登录用户这时候可以登录
步骤五:执行下面的SQL脚本
1 --打开xp_cmdshell功
能 2 EXEC [sys].[sp_configure] @configname = 'xp_cmdshell', --varchar(35) 3 @configvalue = 1 -- int 4 RECONFIGURE WITH override 5 6 7 --修改注册表,修改身份验证为混合验证方式8 USE [master] 9 GO10 EXEC xp_instance_regwrite N'HKEY_LOC AL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'Login Mode', REG_DWORD, 211 GO12 13 --创建登录名14 CREATE LOGIN [计算机名\Administrator] FROM WINDOWS;15 GO16 17 --赋予登录名的权限为
sysadmin18 USE master19 GO20 EXEC [sys].[sp_addsrvrolemember] @ loginame = '计算机名
\Administrator', -- sysname21 @rolename = sysadmin -- sysname22 23 --关闭xp_cmdshell功能
24 EXEC [sys].[sp_configure] @configname = 'xp_cmdshell', -- v archar(35)25 @configvalue = 0 -- int26 RECONFIGURE WIT H override
这时候身份验证方式已经改为混合验证方式
步骤六:关掉SQLSERVER,再重新启动
打开SQLSERVER配置管理器,启动SQLSERVER
步骤七:登录SQLSERVER
回到SSMS,可以看到这时候恢复正常了
总结
感谢i6first大侠,之前一直以为无法子了,想不到他想到了用单用户模式启动的方法来进入SQLSERVER。
没有了SA密码,无法Windows集成身份登录,DBA怎么办?
一同事反馈SQL无法正常登录了,以前都是通过windows集成身份验证登录进去的(sa密码早忘记了),今天就改了服务器的机器名,现在无论如何都登录不进去。
SQL登录时如果采用windows集成身份验证,登录框将会以“机器名\当前系统用户名”的格式显示登录名,而且登录名和密码都是灰色的,不允许用户输入。
了解到同事刚刚修改了服务器的机器名,因此在SQL的登陆框中显示“新机器名\当前系统用户名”。
要知道windows集成身份验证能登录的原因是在SQL的登录名中已经包括了该用户名,原来的用户名在SQL安装的时候已经记录到了SQL 中,如果机器名变更了,“新机器名\当前系统用户名”肯定无法正常登录。
网上看到有人说可以采用OSQL–S instancename –E(在命令行窗口中输入)登录进去后再去修改sa的密码,一番尝试后发现是扯谈,因为采用这种方式的前提是需要windows集成身份能够登录。
后来在微软的官网上看到一篇文档,原来只要在SQL的启动参数中加一个“-m”的选项(记得在-m前加分号),然后需要重启SQL服务,再次用SQL Management Studio的windows集成身份验证登陆就可以了。
-m表示单用户登录。
细心的读者可能会质疑了:只是加了-m,但最后还是采用的windows集成身份验证,理论说跟之前使用SQLOS –S instancename –E有什么区别呢?
这个问得非常专业。
当时我也没有搞明白,觉得有点不可思议,但结果就是这样,肯定有其道理。
后来在微软的官网上找到了这段话。
Start the instance of sql server in single-user mode by using either the -m or -f options. Any member of the computer's local Administrators group can then connect to the instance of SQL Server as a member of the sysadmin fixed server role.
大概的意思是说当在SQL的启动参数中添加了-m或者-f参数时,计算机本地管理员组的任何一个用户都可以sysadmin的身份登录到SQL中。
相信读者看到这个地方就明白了。
这里其实并没有去检验登录的用户是否在SQL在存在,只是检查该用户是否为本地计算机的管理组中的用户。
好了,相信后面就不用过多累赘了,只是提醒下读者:修改了sa密码后记得把原来添加在SQL启动参数的-m删除掉,然后在重启SQL服务。