mysql修改root密码


第一种情况 有root密码 可以登录MySQL
mysql -u root -p
Enter password: ****
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 91
Server version: 10.1.13-MariaDB mariadb.org binary distribution
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

用SET PASSWORD命令

 set password for 用户名@localhost = password('新密码');
例 MariaDB> set password for root@localhost = password('root');



用UPDATE 编辑user表

MariaDB> use mysql;
MariaDB> update user set password=password('root') where user='root' and host='localhost';
MariaDB> flush privileges;



用mysqladmin

格式 mysqladmin -u用户名 -p旧密码 password 新密码
例子 mysqladmin -uroot -p123456 password  rootnewpassword



第二种情况 忘记root密码 以windows为例

直接修改 权限数据库表mysql

关闭正在运行的MySQL服务 管理员的权限 net stop mysql
打开DOS窗口 到mysql/bin目录
输入 mysqld --skip-grant-tables 回车 --skip-grant-tables  意思是启动MySQL服务 跳过权限表认证
再开一个DOS窗口 因为刚才的 DOS窗口  不能动了 转到mysql/bin目录
输入 mysql 回车 成功将出现MySQL提示符 >
连接 权限数据库  use mysql;  
改密码 update user set password=password("root") where user="root";
刷新权限 flush privileges; 
退出 quit
注销 msyql 系统 再进入
使用用户名 root 和 新密码 root 登录