CentOS上,安装好MySQL后,创建root用户密码

如果你创建了一个用户并设置了密码。但你发现你使用设置的账号密码都等了不了,例如 mysql -u root -p123456,或者mysql -u root -p都登录不了,但是使用mysql -u root就直接能登陆进去,并且里面没有mysql数据库。那么可能“登错了”账户。这时你的mysql数据库的user表中有一个账户名字为“”的用户。

解决:先关闭mysql服务,再删除掉mysql数据库user表中账户为“空”的用户,如下:

(如果你“当前使用的数据库,名字不是“空” ”,只想要修改(创建) root的密码,跳过图片的步骤)

CentOS上,安装好MySQL后,创建root用户密码_第1张图片

(我是直接在linux的普通用户,直接输mysql,回车就直接登陆进来了,其它登陆方式都没用!) 

 以防万一,先用先前“登错”的登陆方式,登陆mysql,然后修改一个新的root的密码:

mysql> update user set password=password('你要修改的新密码') where user='root';
mysql> flush privileges;
mysql> exit;

开始 : 

[root@localhost ~]# service mysql stop //关闭mysql服务
[root@localhost ~]# mysqld_safe --skip-grant-tables  //忽略权限登录

新开一个会话窗口进入mysql:  mysql -uroot
mysql> use mysql;
mysql> select * from user where user=''; //如果有数据输出,那么你的问题基本就可以确定了
mysql> delete from user where user='';  //删除“”用户
mysql> flush privileges;     //重载权限表
mysql> exit; 
[root@localhost ~]# service mysql restart //然后重启mysql服务

接下来,就可以正常用密码 登陆root用户了

[root@localhost ~]#  mysql -u root -p

Enter password:    输入密码(不会回显)CentOS上,安装好MySQL后,创建root用户密码_第2张图片

 

 

 

 

 

你可能感兴趣的:(mysql,centos)