方法一:(知道myql的root的密码)
在mysql系统外,使用mysqladmin
1 mysqladmin -u root -p password "test123"
2 Enter password: 【输入原来的密码】
方法二: (知道myql的root的密码)
通过登录mysql系统
mysql -uroot -p
2 Enter password: 【输入原来的密码】
3 mysql>use mysql;
4 mysql> update user set password=passworD("test") where user='root';
5 mysql> exit;
注意:如果Mysql的版本是5.7及以上的话update语句更换如下:
mysql> update user set authentication_string=passworD("test") where user='root';
方法三:(不知道myql的root的密码)
首先拿到操作系统的root权限,然后kill掉Mysql服务或者手动stop掉,这里我推荐使用手动stop;
service mysql stop
&,表示在后台运行,不再后台运行的话,就再打开一个终端吧。
接着登陆MySQL修改密码
1 mysql
2 mysql> use mysql;
3 mysql> UPDATE user SET password=password("test123") WHERE user='root';
4 mysql> exit;
注意:如果Mysql的版本是5.7及以上的话update语句如下:(这个最关键是我自己遇到的)
mysql> update user set authentication_string=passworD("test") where user='root';
方法四:(不知道myql的root的密码)
第一步就是跳过MySQL的密码认证过程
#vim /etc/my.cnf(注:windows下修改的是my.ini)
1.在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程
保存文档并退出
2.接下来我们需要重启MySQL
重启之后输入mysql即可进入mysql
3.敲入 mysql -u root -p
命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中
mysql> update user set password=password("你的新密码") where user="root";
mysql> flush privileges;
mysql> quit
注意:如果在执行该步骤的时候出现ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
错误。则执行下 flush privileges
命令,再执行该命令即可。
4.最后,编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。