不知道怎么回事,进行了一次授权语句的执行,希望任何一台机子都能远程连接mysql ,并且给mysql的root用户设置了密码,可是在重新启动linux的时候,用root用户的新密码去不能进行登录,而用root,不加任何密码就能进行登录,连接到mysql后,查看里面的数据库,才发现,原自带的mysql库和我新建的数据库都不见了,不能做任何的操作。后来经过多方查询,才知道是权限的问题,解决办法如下:
(一)killall mysqld 停止mysql
(二)mysqld_safe --skip-grant-tables
(三)另起一个sell
(四)/etc/init.d/mysqld start 启动mysql服务
(五)mysql 连接mysql
(六)这样就可以看到mysql库和新建的那些库
(七)use mysql
(八)update user set password=PASSWORD('mysqladmin') where user='root';
执行以上几条语句基本上就可以了
最后还得刷新:flush privileges
授权语句:GRANT ALL PRIVILEGES ON . TO 'root' @'localhost' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;
添加root用户:insert into user (host,user,password)values ('localhost','root',password('newpassword'));
授权:grant all privileges on . to root @"localhost";