mysql忘记帐号密码 解决办法

首先关闭mysql

使用命令行启动mysql(一般要找到mysql.ini文件)

在windows上mysql.ini文件可以通过查看当前mysql进程参数查看到,具体方法点此

在启动mysql命令行最后加上:  --skip-grant-tables 参数

其他的一些方法:

1. 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。 
killall -TERM mysqld 
你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。 
2. 使用`--skip-grant-tables‘ 参数来启动 mysqld。 (LINUX下/usr/bin/safe_mysqld --skip-grant-tables , windows下c:\mysql\bin\mysqld --skip-grant-tables)

3. 然后无密码登录到mysqld server , 
>use mysql 
>update user set password=password("new_pass") where user="root"; 
>flush privileges; 
。你也可以这样做:`mysqladmin -h hostname -u user password ‘new password‘‘。

4. 载入权限表: `mysqladmin -h hostname flush-privileges‘ ,或者使用 SQL 命令`FLUSH PRIVILEGES‘。 
5.killall -TERM mysqld 
6.用新密码登陆

亲测,绝对有用,我就是不知道mysql的管理密码,就是用这个方法把原来的密码修改成我自己要的密码
修正一下:我在Windows下的实际操作如下 
1.关闭正在运行的MySQL。 
2.打开DOS窗口,转到mysql\bin目录。 
3.输入mysqld-nt --skip-grant-tables回车。如果没有出现提示信息,那就对了。 
4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。 
5.输入mysql回车,如果成功,将出现MySQL提示符 > 
6. 连接权限数据库>use mysql; (>是本来就有的提示符,别忘了最后的分号) 
6.改密码:> update user set password=password("123456") where user="root"; (别忘了最后的分号) 
7.刷新权限(必须的步骤)>flush privileges; 
8.退出 > \q 
9.注销系统,再进入,开MySQL,使用用户名root和刚才设置的新密码123456登陆。

据说可以用直接修改user表文件的方法: 
关闭MySQL,Windows下打开Mysql\data\mysql,有三个文件user.frm,user.MYD,user.MYI找个知道密码的MySQL,替换相应的这三个文件,如果user表结构没改过,一般也没人去改,替换user.MYD就可以了。 
也可以直接编辑user.MYD,找个十六进制编辑器,UltraEdit就有这个功能。关闭MySQL,打开user.MYD。将用户名root后面的八个字符改为565491d704013245,新密码就是123456。或者将它们对应的十六进制数字,(左边那里,一个字符对应两个数字),改为 00 02 02 02 02 02 02 02,这就是空密码,在编辑器右边看到的都是星号*,看起来很象小数点。重开MySQL,输入root和你的新密码。 
今天有点事要进mssql,因为是很久以前装的,所以忘记了sa的密码,虽然用windows身份验证就可以进,但是如果用php连接mssql时就不行了,于是google了一下,找到了解决方法. 

用windows身份验证机制进去,然后 
输入下列命令,执行: 
exec sp_password null,‘newpass‘,‘sa‘

示例 
A.无原密码的情况下更改登录密码 
下面的示例将登录 Victoria 的密码更改为 123 
EXEC sp_password NULL,‘123‘,‘sa‘

B.更改密码 
下面的示例将登录 Victoria 的密码由 123 改为 456 
EXEC sp_password ‘123‘,‘456‘

另外我发现了一个问题,那就是windows和SQL Server身份验证机制有些不同 
windows身份验证

服务器地址 登陆结果 
127.0.0.1 ok 
localhost wrong 
. ok

SQL Server身份验证

服务器地址 登陆结果 
127.0.0.1 ok 
localhost wrong 
. wrong

另外记录一下忘记mysql 密码的取回方法 
如果 MySQL 正在运行, 
首先杀之: killall -TERM mysqld(如果是windows,直接调出进程管理器,结束之) 
以安全模式启动 MySQ: 
/usr/bin/safe_mysqld --skip-grant-tables & 
(windows 下 mysql安装所以盘/mysql/bin/safe_mysqld --skip-grant-tables ) 
就可以不需要密码就进入 MySQL 了. 
然后就是 
>use mysql 
>update user set password=password("new_pass") where user="root"; 
>flush privileges; 
重新杀 MySQL,用正常方法启动 MySQL

时间: 2024-11-05 09:32:14

mysql忘记帐号密码 解决办法的相关文章

Windows平台下忘记Oracle登陆密码解决办法

平时我们会忘记很多的密码,比如今天我就忘记了Oracle的登陆密码. 下面分享一下解决办法. 同时按Win+R,输入:cmd 然后输入:sqlplus /nolog 输入:connect /as sysdba          --连接到sysdaba用户:假如这里出现ORA-01031,可以参考:http://chensenlin.blog.51cto.com/10559465/1759490: 最后输入:alter user sys identified by 新密码:  --注意有个":&

CentOS忘记普通用户密码解决办法

普通用户忘记密码 1.使用root用户登录系统,找到/etc/shadow文件. 2.找到用户名开头的那一行,例如我的用户名为pds,,以冒号为分割符,红色部分是密码加密部分 pds:$1$CivopRgF$ajWQ54W1XJbifFjm05Jk/1:15353:0:99999:7::: 3.pds是我的用户名,用终端执行passwd pds命令,输入新的用户密码即可.

CentOS忘记用户名或者密码解决办法

方法一:如果用户名和密码都忘记了,可以用以下这个方法找回:(和第二种大步骤差不多,需注意3,4步) 1. 在出现grub画面时,用上下键选中你平时启动linux的那一项,然后按e键 2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键 3. 修改你现在见到的命令行,加入single,结果如下: kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ r

OpenERP7.0 忘记admin管理员密码解决办法

操作环境:linux Ubuntu12.10  OpenERP7.0 以下操作,请注意大小写 切换用户 [email protected]:~# su - postgres 查看数据库 [email protected]:~$ psql -l 使用Demo数据库 [email protected]:~$ psql Demo 如果没有安装加密模块,如 auth_crypt Demo=# SELECT password from res_users where login = 'admin'; 查询

十五、mac 中登陆mysql忘记密码解决办法

mac 中登陆mysql忘记密码解决办法 1.打开终端,输入命令:cd /usr/local/mysql/bin 2.mysql -uroot -p,用这条命令登陆时报错信息: 报错:Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 3.打开终端输入:sudo mysqld_safe --skip-grant-tables 输出 Password:

Redhat_Linux忘记root密码解决办法

在出现系统选择界面时,使用UP或者down键,进入到选择界面. 在Red Hat Linux的选项上按"e"键,然后会出现三个选项,在"kernel/boot/vmlinuz-2.4.18-14 ro root=LABEL=/"上按"e"键进行编辑在"ro"或者"root"前加上"single",然后回车返回. 我的做法如下: "kernel/boot/vmlinuz-2.4.

Linux系统root用户忘记密码解决办法

一.centos6 root用户忘记密码解决办法 1.grub未加密(知道grub密码)root密码找回办法: (1)重启系统,在系统等待时间按任意键进入如图一所示界面 图一 (2)在图一所示界面中按"e"键进入如图二所示界面 图二 (3)在图二所示的界面中选择第二项,并按"e"进入图三所示界面 图三 (4)在图三所示的界面中quite后面加参数single或者数字1,按回车回到图二所示的界面,选择第二项,按"b"进入系统,此时,进入系统不需要密

linux里忘记root密码解决办法

1:打开虚拟机,点‘启动’按钮, 2:出现上面这个界面时,键盘输入’i’,出现grub界面: 3:键盘输入e,出现如下界面: 4:选择第二行(kernel……) 5:键盘输入e,出现如下界面: 6:在rhgb quiet后加上空格和数字1或者空格和single后回车. 这里以加空格和数字1为例: 然后,系统自动回到了上一层编辑界面,然后直接按b键,以简单模式重启. 重启过程在此省略. 重启完毕后,就到了下面的界面了,就可以开始修改密码了. 直接输入passwd 回车即可修改密码,在默认情况下这里

登陆页面实现保存帐号密码功能

通过Cookie实现"记住我"的功能 1.登陆页面如下: 每个字段对应的属性name如下表: 用户帐号 name 登陆密码 password 验证码 checkNum 记住我 rememberMe 2.Action中的处理如下: 在用户第一次登陆后,进行Cookie进行处理 登陆处理: /**登陆*/ public String login() throws Exception{ //处理验证码:判断验证码输入的是否正确 boolean flag=VerificationCodeUti