热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

IntelliJIDEA配置MySQL出现的连接问题

前言由于本学期开始数据库和Java的学习,我便开始下载IntelliJIDEA。之所以会选择这款编辑器,一是因为它的功能强大,二就是它可以与多种数据库接,直接可以在IntelliJ

前言
由于本学期开始数据库和Java的学习,我便开始下载IntelliJ IDEA。之所以会选择这款编辑器,一是因为它的功能强大,二就是它可以与多种数据库接,直接可以在IntelliJ IDEA上面编写SQL指令。在我看来是很方便的。
经过
当我按照网上的方法一步步下载,安装,破解IntelliJ IDEA和MySQL。虽然中间有一些问题,但最终还是把IntelliJ IDEA和MySQL安装好了。但是却在
IntelliJ IDEA连接MySQL之后出现了问题。
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
上网查的结果大都是说时区设置错误;
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
于是在MySQL中改动时区设置,结果还是显示连接不上。一个人从早上改到晚上,结果还是不行。 一切没有办法的时候,我找到我的班主任。班主任很耐心帮我解决了这个问题。
结果
问题有两个:

  • 连接的数据库,事先并没有建立。


IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
而这个问题连接检测并不会直接提示出来,显示问题是时区配置问题。一直使我误以为是时区设置错误。出现这个问题的原因是:我不熟悉IntelliJ IDEA的操作,错误的以为Database后面填的是自己要建立数据库名,实际上却是IntelliJ IDEA要连接的数据库名。

  • 时区没有设置(serverTimezone为空)


当我改为一个已经建立的数据库时,依然出现和开始相同的问题。
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
于是又在MySQL中改动时区设置,结果还是显示连接不上。
解决办法:
在Advanced下的serverTimezone设置成Asia/Shanghai
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
最终连接成功
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
?
在我以为这事终于可以放下的时候,班主任老师告诉我解决问题不能局限于表面,连接正常只是表面上这个问题解决了。但是为什么这样就能连号,换成别的时区会有什么影响。于是让我做了一个测试。
1.将idea数据库连接serverTimezone项还原为初始状态(空),测试数据库连接
2.确认MySQL使用的时区
3.如果不能确认,手动将MySQL?time_zone设置为北京时间(+08:00),测试数据库连接
4.将MySQL?time_zone设置为UTC(+00:00),测试数据库连接
以上测试可得到何种结论?
5.将idea数据库连接serverTimezone项设置为UTC,测试数据库连接
6.将MySQL time_zone设置为北京时间(+08:00),测试数据库连接
7.将idea数据库连接serverTimezone项设置为Asia/Shanghai,测试数据库连接
8.将idea数据库连接serverTimezone项设置为任意时区(http://www.360doc.com/content/19/0806/11/39194723_853278521.shtml),测试数据库连接
以上测试可得到何种结论?
9.将idea数据库连接serverTimezone项设置为UTC,将MySQL time_zone设置为北京时间(+08:00),完成数据库写入(带插入时间)
查询数据,有何现象?
这一系列的测试做下,我还是有点懵。尤其是在MySQL中的操作,我常常怀疑自己做的到底对不对。
班主任老师又给我耐心的讲了这个测试。
得到的结果是:

  • serverTimezone项若为空,连接就会失败。原因就是


MySQL规定serverTimezone项不能为空。
https://www.cnblogs.com/zhuitian/p/12436300.html

  • serverTimezone项只要不为空,无论是否与MySQL时区相匹配,连接都可以成功。

  • 但是不使用Asia/Shanghai时间和不把MySQL中的时区(+8:00)会使得数据库返回的时间与当前时间相差8小时。


将idea数据库连接serverTimezone项设置为UTC,将MySQL time_zone设置为北京时间(+08:00),完成数据库写入
?

1 CREATE TABLE class_member(
2 id INT(2) AUTO_INCREMENT PRIMARY KEY,
3 name VARCHAR(20) NOT NULL UNIQUE,
4 age TINYINT(2) NOT NULL,
5 CreateTime datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
6 modify_time timestamp
7 DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
8 );
9 INSERT INTO class_member(id, name, age)
10 VALUES ('101','刘丽','13'),
11 ('102','王一','14'),
12 ('103','王二','15'),
13 ('104','王三','16'),
14 ('105','刘二','14'),
15 ('106','李东','15');
16 SELECT *
17 FROM class_member;
18 update class_member set age = 16 where name = '王一';
19 SELECT *
20 FROM class_member;
21
22 SELECT *
23 FROM class_member;
24 SELECT *
25 FROM class_member;
26 update class_member set age = 16 where name = '王二';
27 INSERT INTO class_member(id,name,age)VALUES ('107','张小明','17');
28 show variables like '%time_zone%';
29 set time_zOne= '+8:00';
30 SELECT *
31 FROM class_member;
32 update class_member set age = 17 where name = '王一';

 

?
IntelliJ IDEA配置MySQL出现的连接问题 - 文章图片
前面是北京时间,后面是UTC。
至此这个问题终于告一段落。
?
补充:
1、当字段定义为timestamp,表示该字段在插入和更新时都不会自动设置为当前时间。他会显示为NULL,并且修改数据后返回的时间依然是NULL。
?2、当字段定义为timestamp DEFAULT CURRENT_TIMESTAMP,表示该字段仅在插入且未指定值时被赋予当前时间,再更新时且未指定值时不做修改。因此这个可以用来显示表的创建时间。就是首次创建的时间。
?3、当字段定义为timestamp ON UPDATE CURRENT_TIMESTAMP,表示该字段在插入且未指定值时被赋值为"0000-00-00 00:00:00",在更新且未指定值时更新为当前时间。
?4、当字段定义为timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,表示该字段在插入或更新时未指定值,则被赋值为当前时间。这个时间才可以捉到修改数据及时得到修改时间。
执行一次数据修改。发现果然如此,DEFAULT CURRENT_TIMESTAMP定义的时间未变,ON UPDATE CURRENT_TIMESTAMP定义的时间发生改变。
?
文档:关于在IntelliJ IDEA配置MySQL出现的连...
链接:http://note.youdao.com/noteshareid=0155a791ecb9e6a44d2ea615770bbbb7&sub=CBF383EFF1CA4AA69DA54D2A2B7431AE
2020/03/14 01:04

推荐阅读
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • Monkey《大话移动——Android与iOS应用测试指南》的预购信息发布啦!
    Monkey《大话移动——Android与iOS应用测试指南》的预购信息已经发布,可以在京东和当当网进行预购。感谢几位大牛给出的书评,并呼吁大家的支持。明天京东的链接也将发布。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 本文介绍了基于c语言的mcs51单片机定时器计数器的应用教程,包括定时器的设置和计数方法,以及中断函数的使用。同时介绍了定时器应用的举例,包括定时器中断函数的编写和频率值的计算方法。主函数中设置了T0模式和T1计数的初值,并开启了T0和T1的中断,最后启动了CPU中断。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
author-avatar
90--00_203_206
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有