在练习mysql语句的时候,使用delete将数据库中的所有用户删除了,其中也包括root用户。并进行了flush privileges;这时候发现重新登入mysql已经不能正常登陆。对此我们要重新设置root账号和root密码。具体操作步骤如下:

删除用户操作:  

mysql> delete frommysql.user;  删除所有用户
mysql> flushprivileges;

首先断掉与数据库相关联的所有链接,防止咋数据库重启的时候数据的丢失。

[root@node1 ~]# service mysqld stop

修改数据库配置文件

[root@node1 ~]# vim /etc/my.cnf

在配置文件中的[mysql]下的内容

[mysql]

下一行中添加“skip-grant-tables

wKioL1fnJ9rTsEHnAAAo_-skRVE661.png-wh_50

保存并退出,重启mysql数据库

[root@node1mysql]# mysql

mysql> insertinto mysql.user (host, user, password
,
sll_cipher,x509_issuer,
x509_subje
c
) values ('localhost', 'root',password('123456'),’’,’’);


退出数据库,再将mysql.cnf配置文件进行更改,删除刚才新添加的行即可。重新启动数据库即可。

[root@node1 ~]# service mysqld restart

即可完成对mysqlroot用户的添加!

第二种方式不修改mysql的配置文件;

service mysqld stop        //停止mysql数据库服务
mysqld_safe--skip-grant-tables --skip-networking


另外终端

Mysql
mysql> insertinto mysql.user (host, user, password,sll_cipher,x509_issuer,x509_subjec) values ('localhost', 'root',password('123456'),’’,’’);


即可完成对数据库root用户的添加!