数据库密码忘记了怎么办?

数据库密码忘记了怎么办?,第1张

情况一:只是忘记了密码

sp_password Null,'123,'sa'

把sa的密码设为“123”

执行成功后有“Command(s) completed successfully.” OK!

情况二:忘记了密码,而且从sysadmin中删除了builtin\Administrators帐号,现在没其他人是sysadmin了

A:

SQL Server 2005/2008提供了针对该情况的更好的灾难恢复方法,无需侵入master数据库,不会对master数据库中的对象和数据(例如登陆帐号,证书等)造成损坏。Windows管理员组的成员现在当SQL Server以单用户模式启动(另外一个名称为维护模式)的情况下对SQL Server有了访问权限。

通过使用单用户模式,SQL Server 2005/2008避免了Windows管理员以sysadmin的身份在不被发现的情况下滥用权限。Windows管理员帐号能进行部分维护任务,例如安装补丁等。

要将SQL Server以单用户模式启动,您可以在命令行模式下增加“-m”参数。您也可以使用SQL Server配置管理员工具。它提供了对文件访问和其他权限的合适控制。要是用配置管理工具来恢复您的系统,您可以根据如下步骤:

1. 从菜单->SQL Server 2005->配置,打开配置管理工具(SQL Server Configuration Manager)

2. 停止您想要恢复的SQL Server实例

3. 找到“高级”标签,“启动参数”选项文本框中增加“–m”

4. 点击“是”按钮,重新启动SQL Server实例

请注意:请确保在“”和“-m”之间没有空格。注册参数解析器对类似的输入错误非常敏感。您可以在SQL Server的ERRORLOG文件内看到显示“SQL Server started in single-user mode.”

5. 在SQL Server实例以单用户模式启动后,Windows管理员帐号就能使用sqlcmd工具在Windows验证模式下连接SQL Server。您可以使用T-SQL命令诸如“sp_addsrvrolemember”来在sysadmin服务器角色中添加现有登录帐号或新创建一个登录帐号。范例语句如下:

EXEC sp_addsrvrolemember 'CONTOSO\Buck', 'sysadmin'

GO

6. 只要sysadmin访问权限被恢复,在配置管理中从启动参数中移除“-m”参数,重新启动SQL Server实例

重要的安全提示:

a. 该过程应该只能被用于当没有其他方法使用特权帐号(例如sysadmin或等同角色)来访问系统的灾难恢复。

b. 该过程允许Windows管理员在SQL Server中有越权行为。它包含了可以被监测和检测出的明确的侵入行为,包含:

1. 在单用户模式下停止SQL Server并重启

2. 使用Windows帐号连接SQL Server。

1、首先检查mysql服务是否启动,若已启动则先将其停止服务,可在开始菜单的运行,使用命令:

开始->菜单->cmd->net stop mysql

打开第一个cmd1窗口,切换到mysql的bin目录。

切换方法:首先找到mysql目录,我的目录是C:\Program Files (x86)\MySQL\MySQL Server 6.0\bin

然后运行命令:cd C:\Program Files (x86)\MySQL\MySQL Server 6.0\bin切换成功

然后运行命令:

mysqld --defaults-file="C:\Program Files (x86)\MySQL\MySQL Server 6.0\my.ini" --console --skip-grant-tables

注释:

该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。 此时已经开启了mysql服务了!相当于自己建立了一个mysql服务线程。

这个窗口保留 不关闭。

2、打开第二个cmd2窗口,同样切换到mysql的bin目录,连接mysql:

输入命令:

mysql -u root -p

出现:

Enter password:

在这里直接回车,不用输入密码。

然后就就会出现登录成功的信息,

使用命令:

show databases

使用命令切换到mysql数据库:

use mysql

使用命令更改root密码:

update user set password=password("123456") where user="root"

提示:123456可以 更改为其它密码,看自己喜好。

刷新权限:

flush privileges

然后退出

quit

可以关掉之前的cmd1 窗口了。

然后启动mysql服务

net start mysql

重新登录,输入

mysql -u root -p

出现输入密码提示,输入新的密码即可登录:

Enter password: ******

显示登录信息: 成功

问题解决


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10826294.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存