默认情况下 MySQL 是不允许远程连接的,所以在 Java 项目或者 MySQLWorkbench 等数据库连接工具连接服务器上的 MySQL 服务的时候会报 "Host 'x.x.x.x' is not allowed to connect to this MySQL server"。可以通过下面的设置解决。详细可以参考 https://blog.csdn.net/u011886447/article/details/78462787。
服务器mysql -u root -p 进入mysql命令行,执行下侧语句,允许mysql的远程访问:
mysql命令执行如果提示:-bash: mysql: command not found,那么看这里(https://blog.csdn.net/torpidcat/article/details/97642246)
-- 允许所有远程连接到root权限下的所有数据库
grant all privileges on *.* to root@"%" identified by '数据库密码';
-- 刷新(必要执行的语句)
flush privileges;
-- 如果不想开放全部数据库或者需要设置指定ip访问指定库: https://blog.csdn.net/torpidcat/article/details/97274141
--------------------------------------------------------------------------------
提示:
在执行第一条命令的时候,可能会报:
'ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.' 需要让我们重置密码。原因是因为之前设置的密码过于简单,不符合 MySQL 的安全要求。只要重新设置一个复杂点的密码就可以了:
SET PASSWORD = PASSWORD('xxx'); //xxx 是重置的新的复杂的密码
--------------------------------------------------------------------------------