问题1:安装连接报错(1130host is not allowed to connect to this MySql server):
报错原因:此时的MySQL配置不支持远程连接 。
解决:修改配置,使之支持远程连接。
2、登陆服务器,进入数据库
mysql -u root -p 密码
查看数据库用户
show databases;
3、切换用户,查看配置
use mysql;
select host from user where user='root';
看到如图所示的配置:localhost
4、修改配置
执行如下命令
update user set host = '%' where user ='root';
解释:将localhost设置为通配符%。
localhost设置了“%”后便可以允许远程访问。
5、使配置生效
localhost修改完成后执行以下命令使配置立即生效。
flush privileges;
然后在查看配置
select host from user where user='root';
已成功修改,这个时候就可以连接了。
问题2:连接报错(Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually.):
错误界面
翻译过来就是:服务器返回无效时区。进入“高级”选项卡,手动设置“serverTimezone”属性。
解决方案
我的问题出在两块,第一,设置mysql的时区。第二,mysql驱动的版本。详细步骤如下:
第一,设置mysql时区。
1,我们先来检查下mysql时区。
配置完环境变量,就可以在命令窗口直接执行下面的命令啦!
进入命令窗口(Win + R),连接数据库 mysql -hlocalhost -uroot -p,回车,输入密码,回车,如图
2,继续输入 show variables like'%time_zone'; (注意不要漏掉后面的分号),回车,如图:
显示 SYSTEM 就是没有设置时区啦。
3,现在我们来设置时区。
输入set global time_zone = '+8:00'; 注意不要漏掉后面的分号),回车,如图:
这便是设置成功啦!
这时你重新连接下数据库,也许能连接成功!如果没有,就继续往下走!
第二,同步mysql驱动。
我本机安装的mysql版本是5.7的,那么IDEA要连接mysql也应该匹配下驱动版本。把Driver改成MySQL for 5.1就可以了
在点击Test Connection测试下,成功!