mysql的问题2
mysql的问题2
我果然对于linux下的开发还很菜啊,继续记录学习mysql中出现的问题。由于昨天根据网上教程把mysql的root(localhost)密码改了不能登陆了,又根据网上的教程把User=‘’的用户也删掉了,最后当我开始明白mysql关于用户和权限的一些东西的时候,我mysqld_safe --user=mysql --skip-grant-tables --skip-networking &之后进入mysql查看系统的用户,发现已经没有主机名为localhost的用户了。。。
虽然其他主机名的root用户密码已经都被设置成了“*23AE809DDACAF96AF0FD78ED04B6A265E05AA257”就是加密了的“123”,但是我尝试使用这些用户身份登录发现也没有真正的root权限。自己插入一条主机名为localhost的root用户,发现权限也有问题。。。
干脆删掉mysql再重装好了。复习一下删除过程:
删除软件包:rpm -e mysql-server //这个命令是有顺序的,一定要先删不依赖于别的软件包的软件包
删除软件包:rpm -e mysql******* //不然系统会提示无法删除,我印象中依次删了4个软件包
删除软件包:rpm -e l********
删除软件包:rpm -e mysql*******
妹子家里网速很好,于是直接 yum install mysql 下载速度600kb~~~~
噢,还有yum install mysql-devel 和 yum install mysql-server 几十秒全都装好了
启动mysql:service mysqld start……啊嘞,出现了:Redirecting to /bin/systemctl start mysqld.service
Job failed. See system journal and 'systemctl status' for details. 好吧去看看日志:/var/log/mysqld.log 日志说:mysqld_safe A mysqld process already exists。。。。
我真是不懂这是什么东东,只好ps -A|grep mysql 然后再 kill -9 进程号。
再mysql -u root,嗯,终于又登陆到mysql了,不过还得设置个密码呢。
刚刚发现之前学习的网上的update user set password = '123456' where user ="root" //这样写是错的,密码其实不是123456
应该为update user set password = password ('123456') where user = "root";
restart一下mysql服务,用 root 和密码 123 登陆成功, 再:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
来赋予所有用户远程连接权限,终于成功了(*^__^*)