首先登录服务器:Linux
1.修改配置文件
vi /etc/my.cnf
在[mysqld]的段中加上一句
skip-grant-tables
2.保存重启 mysql
service mysqld restart
3.修改root密码
[root@jason bin]# mysql
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update mysql.user set authentication_string=password('jason_zhang') where user='root';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 1
mysql> flush privileges;
mysql> quit
或者
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'jason_zhang';
4.删除配置文件中的 skip-grant-tables
步骤1 中,在配置文件中新增的部分,删除;
5.保存重启 mysql
service mysqld restart
6.登录 mysql,设置登录权限
mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.15 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your root password' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
参考: http://blog.51cto.com/liuqh/2061241