Ubuntu 18.04
安装并确保mysqld我们正在运行。
进入数据库并设置root用户:
sudo mysql -u root
SELECT User,Host FROM mysql.user;
DROP USER 'root'@'localhost';
CREATE USER 'root'@'%' IDENTIFIED BY 'obamathelongleggedmacdaddy';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
编辑mysqld权限并重新启动:
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# edit the line to be this:
bind-address=0.0.0.0
sudo systemctl stop mysql
sudo systemctl start mysql
从另一台机器进行测试。mysqld机器上的Obvs端口(3306)必须允许来自测试机器的连接。
mysql -u root -p -h 123.456.789.666
MySql的所有其他“安全性”根本没有帮助安全性,它只是使问题变得复杂和模糊不清,实际上,与过去使用一个非常长的密码的日子相比,现在更容易搞砸它。
localhost
即可%
授予对公共网络的根访问权限。别忘了flush privileges;