在用MySQL客户端对数据库进行操作时,如果一段时间没有操作,再次操作时,常常会报如下错误: ERROR 2013 (HY000): Lost connection to MySQL server during query ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... 这个报错信息就意味着当前的连接已经断开,需要重新建立连接. 那么,连接建立后,连接的时长是如何确定的呢?…
在学MySQL的连接时,为了便于记忆,就将左连接 记做 最后结果的总记录数 和 进行左连接的左表的记录数相同,简单的说就是下面这个公式 count(table A left join table B) == count(table A)  毫无疑问,很多时候是这样的,但是,这个结论是错误的,因为一旦table B中有重复的数据时,最后的结果就可能比count(A)的数量多 举个例子:这里有两个表,结构如下 mysql> desc dep; +--------+---------+------+-…
MySQL 8 连接时出现 1251 和 2059 错误 原因是MySQL 8 改了密码加密算法.1 原来是:mysql_native_password MySQL8 改成了 caching_sha2_password https://juejin.im/entry/5adb5deff265da0b9d77cb3b↩…
show global variables like 'wait_timeout'; 设置成10小时; set global wait_timeout=36000;…
其实关于这个问题可能用到的人不会很多,不过我在这里还是说说. 正常很多人写socket通信时,都会直接通过new socket(IP,PORT)直接去链接服务器.其实这种做法也没有错误,但是若当服务器IP不存在会服务器没有响应时,程序会卡在这句代码老长一段时间,才会跳出并报异常.这对于这种问题,通过设置连接超时时间可以进行解决:    socket = new Socket();   SocketAddress socAddress = new InetSocketAddress(this.ne…
一.背景 有一张相片表,一张相片所属标签表,一张相片可以归属于多个标签,表结构如下: 现在需要通过一次查询,得到每一张照片对应的标签名称,标签名称之间以固定的分隔符连接,结果如下图: 二.查询语句 原生 Mysql 语句 SELECT think_img.id, think_img.NAME, think_img.label_id, GROUP_CONCAT( think_img_label.NAME SEPARATOR " - " ) AS labelName, think_img.…
这次重新修改老程序时出现了上面的错误,排查过后最终找到问题所在:root帐户默认不开放远程访问权限,所以需要修改一下相关权限. 打开MySQL目录下的my.ini文件(win10默认安装在C:\ProgramData\MySQL\MySQL Server 5.7\my.ini),在文件的最后添加一行“skip-grant-tables”,保存并关闭文件. 重启mysql服务,通过服务管理器 然后问题解决…
在centos6.5中使用MySQL Workbench 6.3.8链接数据库崩溃,如果是在终端使用命令“mysql-workbench”打开的话会有如下错误提示: /usr/libexec/mysql-workbench/mysql-workbench-bin: symbol lookup error: /usr/lib64/mysql-workbench/libwbscintilla.so: undefined symbol: gdk_window_create_similar_surfac…
线程池 简介 1.mysql每连接每线程,mysql都分配一个单独的线程,该线程处理客户端发来的所有命令 2.每个线程会占用一定的系统资源,线程数越多消耗的系统资源也越多 3.线程的创建和销毁有一定的开销 4.当线程数过多时,如果大部分线程都处于活跃状态,会导致频繁的上下文切换,从而造成系统巨大的开销 5.线程的本质就是线程共用,多个连接之间共享线程 何时使用 1.在有大量短查询的业务场景下 2.大量长查询的业务场景下不适合使用线程池,由于长查询占据了线程池的线程,导致线程池出现效率低下的情况…
问题 mysql5数据库连接超时问题:待机一晚上后,第二天早上第一次登录总是失败. 查看日志发现如下错误: "com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure Last packet sent to the server was 0 ms ago." 问题原因 是由mysql5数据库的配置引起的.mysql5将其连接的等待时间(wait_timeout)缺省为8小时.…