首先关闭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

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

  1. MySQL/MariaDB数据库忘掉密码解决办法--技术流ken

    前言 有些时候我们常常会忘掉一些服务的密码,比如系统密码,我们可以进入救援模式进行修改密码,可参考我之前的博客<Centos7破解密码的两种方法--技术流ken>.但有些时候我们也会忘掉数 ...

  2. Gitlab忘记root用户密码解决办法

    一.Gitlab忘记root用户密码,重置用户密码和查看用户ID号方法  1.Gitlab查看用户id号的方法1)方法1:通过api接口查询接口查询地址:http://gitlab的url/api/v ...

  3. 忘记Windows7登陆密码解决办法

    忘记 Windows7 的登陆密码,解决这个问题的思路就是替换 system32 下的 Magnify.exe . 可以从 WindowsPE 启动,到 C:\windows\system32 下. ...

  4. mysql基础之忘掉密码解决办法及恢复root最高权限办法

    如果忘记了mysql的root用户的密码,可以使用如下的方法,重置root密码. 方法一: 1.停止当前mysql进程 systemctl stop mariadb 2.mysql进程停止后,使用如下 ...

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

    普通用户忘记密码 1.使用root用户登录系统,找到/etc/shadow文件. 2.找到用户名开头的那一行,例如我的用户名为pds,,以冒号为分割符,红色部分是密码加密部分 pds:$1$Civop ...

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

    方法一:如果用户名和密码都忘记了,可以用以下这个方法找回:(和第二种大步骤差不多,需注意3,4步) 1. 在出现grub画面时,用上下键选中你平时启动linux的那一项,然后按e键 2. 再次用上下键 ...

  7. 关于Mysql修改帐号密码的多种方法

    方法一: 登录Mysql进行修改(mysql的小黑框) 命令: set password for 用户名(一般为root) @localhost=password('新密码'); 方法二: 登录MyS ...

  8. ubuntu 忘记用户名及密码解决办法

    1.重启系统 2.长按Shift键,直到出现菜单.选择recovery mode,即恢复模式 3.选择root  4.# 后面敲入 cat /etc/shadow 查看用户名 5.# passwd & ...

  9. 在使用SQLServer时忘记sa账号密码解决办法

    先以windows 身份验证方式登录SQLServer数据库,如下图所示: 打开查询分析器,运行如下代码: sp_password Null,'新密码','sa' 即可把原来的密码修改成新密码 例如: ...

随机推荐

  1. MongoDB源码编译

    MongoDB源码编译 本人编译的版本编译的版本为mongodb2.6分支,目前MongoDB3.0已经发布,编译步骤和2.6的差不多,不过3.0版本要求编译器支持c++11标准,所以如果是在Linu ...

  2. Linux 下如何使用看门狗

      Linux内核有集成WD的选项.将其使能后,系统里就会有watchdog的设备驱动:/dev/watchdog.这样,在应用程序里只需打开这个设备使用即可:#include <fcntl.h ...

  3. Qt文件信息获取之QFileInfo

    在Qt中为文件的操作和信息获取提供了许多方便的类,常用的有QDir,QFile,QFileInfo以及QFileDialog,在本文中主要介绍用于获取关于文件信息的QFileInfo类. QFileI ...

  4. JS进制转换,浮点数相加,数字判断

    document.write("整数转换函数:parseInt(数据,底数)<br>"); document.write("10101=>" ...

  5. juery mobile select下来菜单选项提交form问题

    注意: data-native-menu="false"  虽然具有渲染作用,但是无法进行js提交. <script type="text/javascript&q ...

  6. phpwind9.0 顶部和底部版权信息永久性修改

    过了pw头部和底部版权修改方法,但是每次升级程序后版权又变成了默认的了,还得重新修改,其实有个方法可以永久性修改,底部和顶部随着主题走. pw9全局主题位于/themes/site/目录下,  前面文 ...

  7. hdu 1827

    强连通分量——tarjin算法: 这题的思路就是找出多少个出度为0的连通分量,结果就是这些连通分量的元素的最小值相加: 一道很简单的题,改了我好久,= =!~ 贴代码: #include<cst ...

  8. Codeforces Round #198 (Div. 2) —— C

    C题很容易看懂题目,不过两个循环肯定会TLE,所以得用点小聪明: 首先排好序,因为是全排列,乱序和顺序的结果是一样的: 然后呢···· 如果是数列 1 2 3 4 5 元素1 被 2 3 4 5每个减 ...

  9. 李洪强漫谈iOS开发[C语言-034]-程序的结构

  10. spring初始化

    * Created by litao on 15/12/29. */@Component("initTagDataProcessor")public class InitTagDa ...