修复ubuntu 安装mysql后必须使用sudo问题


修改root用户

 

查看用户的权限,是否是mysql_native_password,如果不是,则将auth_sock改为mysql_native_password

update user set plugin = 'mysql_native_password' where user = 'root';

 

或者执行下面语句,这样就不需要执行Step2的内容啦!

​ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

 

然后

 flush privilege;

 

退出mysql。

Step2 修改或者设置root用户密码

退出后使用 mysql -u root -p 发现登录不了Mysql,  报的错为:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

然后修改root密码(密码可与之前的一样):

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

 

然后,quit;退出。

 

如果 root还是无法远程访问,则进行下面操作: 

 

netstat -ntpl 查看3306监听在127.0.0.1 的话 改成监听IP为你的IP 或者为0.0.0.0

vi /etc/mysql/mysql.conf.d/mysqld.cnf

找到 bind-address = 127.0.0.1 去掉#注释改成

bind-address = 0.0.0.0

mysql远程连接 Host * is not allowed to connect to this MySQL server

执行use mysql;
执行update user set host = '%' where user = 'root';这一句执行完可能会报错,不用管它。
执行FLUSH PRIVILEGES;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM