当前位置: 首页 > mysql > 所有文章
  • Mysql中关于0值判断的坑及解决

    2022年08月31日

    最近遇到一个Mysql返回多值的问题,最后发现是mysql过滤条件中0值判断的问题。 简练问题如下 有个INT字段a,默认值为0,程序传入的判断条件是 a = 'abacd'。 传入的是一个字符串,结果a=0的所有数据都返回了。 原因 mysql会在逻辑判断时,如果是整型判断,但是传入的是字符串,如果字符串不是数字,则字符串会被转换为0 ...

    阅读全文
  • MySQL中设置NULL和空白字符串的问题及解决

    2022年08月30日

    今天在修改一个bug,发现了很多问题。记录其中一个比较有意识的bug。数据库使用的是MySQL,先不谈问题,我就是觉得同一个字段,有人存了设置为空白字符串,有人设置了NULL。 空值是不占用空间的,MySQL中的NULL其实是占用空间的。 还有啊,有时候你虽然插入了NULL,但在数据库中还是有值的,例如时间字段timestamp,虽 ...

    阅读全文
  • MySQL在grant时报错ERROR 1064 (42000)的原因及解决方法

    2022年08月29日

    网上查到的grant方式大多会报错,主要原因是MySQL版本8.0后不能再使用原来的方式 查询MySQL版本 SELECT version(); 在8.0版本下 grant all privileges on test.* to test@'%' identified by '123456'; 报错 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQ ...

    阅读全文
  • mysql主从基于docker和django实现读写分离

    2022年08月26日

    这篇文章主要介绍了mysql主从基于docker和django实现读写分离,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下! 1.主从搭建 从同步的流程或原理: 1)master会将变动记录到二进制日志里面;2)master有一个I/O线程将二进制日志发送到slave;3) slave有一个I/O线程把master发送的二进 ...

    阅读全文
  • Mysql锁内部实现机制之C源码解析

    2022年08月23日

    虽然现在关系型数据库越来越相似,但其背后的实现机制可能大相径庭。实际使用方面,因为SQL语法规范的存在使得我们熟悉多种关系型数据库并非难事,但是有多少种数据库可能就有多少种锁的实现方法。 Microsoft Sql Server2005之前只提供页锁,直到2005版本才开始支持乐观并发、悲观并发,乐观模式下允许实现行级别锁,在 ...

    阅读全文
  • Oracle与MySQL的区别及优缺点

    2022年08月22日

    这篇文章主要介绍了Oracle与MySQL的区别及优缺点,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参加一下! MySQL MySQL的特点 1、性能卓越,服务稳定,很少出现异常宕机;2、开放源代码无版本制约,自主性及使用成本低;3、历史悠久,社区和用户非常活跃,遇到问题及时寻求帮助;4、软件体积 ...

    阅读全文
  • MySQL中的流式查询及游标查询方式

    2022年08月18日

    这篇文章主要介绍了MySQL中的流式查询及游标查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教! 一、业务场景 现在业务系统需要从 MySQL 数据库里读取 500w 数据行进行处理 迁移数据导出数据批量处理数据 二、罗列一下三种处理方式 常规查询:一次性读取 500w 数据到 JVM 内 ...

    阅读全文
  • mysql严格模式Strict Mode详细说明

    2022年08月17日

    使用mysql严格模式可以使数据更加安全严格,缺点是减少了对空数据入库的兼容性,下面这篇文章主要给大家介绍了关于mysql严格模式Strict Mode详细说明的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下! 1.开启与关闭Strict Mode方法 找到mysql安装目录下的my.cnf(windows系统则是my.ini)文件 在sql_mode ...

    阅读全文
  • MySQL函数与存储过程字符串长度限制的解决

    2022年08月16日

    MySQL函数或者存储过程中使用group_concat()函数导致数据字符过长而报错 CREATE DEFINER=`root`@`%` PROCEDURE `get_pipe_child`(IN `in_pipe2Num` varchar(25),IN `in_sectionNum` varchar(5)) BEGIN  declare ids varchar(1000) default '';   declare tempids varchar(1000);     -- 先根据标段号查询出数据 ...

    阅读全文
  • MySQL常用慢查询分析工具详解

    2022年08月15日

    在日常的业务开发中MySQL 出现慢查询是很常见的 大部分情况下会分为两种情况: 1、业务增长太快2、要么就是SQL 写的太xx了 所以对慢查询 SQL 进行分析和优化很重要其中 mysqldumpslow 是 MySQL 服务自带的一款很好的分析调优工具 1、调优工具mysqldumpslow 1.1调优工具常用设置 1、什么是MySQL 慢查询日志 MySQL提供的 ...

    阅读全文
  • MySQL分库分表后路由策略设计详情

    2022年08月09日

    分库分表后设计到的第一个问题就是,如何选择路由key,应该如何对key进行路由。路由key应该在每个表中都存在而且唯一。路由策略应尽量保证数据能均匀进行分布。 如果是对大数据量进行归档类的业务可以选择时间作为路由key。比如按数据的创建时间作为路由key,每个月或者每个季度创建一个表。按时间作为分库分表后的路由 ...

    阅读全文
  • 如何给MySQL添加自定义语法的方法示例

    2022年08月08日

    本文主要介绍了如何给MySQL添加自定义语法的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧! 1 背景 MySQL语法解析器用的bison(即yacc)来实现的,而词法解析是自己来实现的,涉及到的token都在文件lex.h里面,然后通过Lex_input_ ...

    阅读全文
  • MySQL数据库查询之多表查询总结

    2022年08月05日

    最近遇到了多表查询的需求,也称为关联查询,指两个或更多个表一起完成查询操作,下面这篇文章主要给大家介绍了关于MySQL数据库查询之多表查询的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下! 1、实现目标 Golang 使用excelize 导出表格到浏览器下载或者保存到本地。后续导入的话也会写到这里 2、使用 ...

    阅读全文
  • 总结12个MySQL慢查询的原因分析

    2022年08月03日

    这篇文章主要介绍了总结12个MySQL慢查询的原因分析,慢查询,都是因为没有加索引。如果没有加索引的话,会导致全表扫描的,更多相关内容需要的朋友可以参考一下! 1. SQL 没加索引 很多时候,我们的慢查询,都是因为没有加索引。如果没有加索引的话,会导致全表扫描的。因此,应考虑在 where 的条件列,建立索引,尽量 ...

    阅读全文
  • MySQL中关于超键和主键及候选键的区别

    2022年08月01日

    关于超键和主键及候选键的区别 最近在看MySQL的书时遇到了一个问题: 既然已经有了主键这个概念,主键已经能够满足需求了,那为什么还要有候选键这种东西?候选键的作用是什么呢?给了它一个候选键的定义但是它真的并没有什么乱用。 抱着刨根问底拦不住的心态我去网上搜了搜,看了看大神们的解释,看得我还是有些懵懂, ...

    阅读全文
  • MySQL索引失效场景及解决方案

    2022年07月23日

    在对SQL语句进行索引查询时会遇到索引失效的时候,对于该语句的可行性以及性能效率方面有至关重要的影响,本篇剖析索引为何失效,有哪些情况会导致索引失效以及对于索引失效时的优化解决方案,其中着重介绍最左前缀匹配原则、MySQL逻辑架构和优化器、索引失效场景以及为何会失效。 二、最左前缀匹配原则 之前有写了一篇 ...

    阅读全文
  • jdbc中自带MySQL连接池实践示例

    2022年07月22日

    在上期文章自定义 MySQL 连接池中,我提到了没找到一个特别合适的 MySQL 连接池实现,所以自己写了一个基于通用池化框架commons-pool2的 MySQL 连接池,并且模仿了 Go 语言的gorm框架设计思路,把借和还的操作不暴露给用户,只处理用户发来的 SQL 语句的思路,封装了一个com.funtester.db.mysql.MysqlPool。 可惜打脸的 ...

    阅读全文
  • mybatis-plus @DS实现动态切换数据源原理

    2022年07月09日

    本文主要介绍了mybatis-plus @DS实现动态切换数据源原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧! 1、mybatis-plus @DS实现动态切换数据源原理 首先mybatis-plus使用com.baomidou.dynamic.datasource.AbstractRoutingDataSource继承 ...

    阅读全文
  • MongoDB数据库索引用法详解

    2022年07月09日

    索引是什么,索引就好比一本书的目录,当我们想找某一章节的时候,通过书籍的目录可以很快的找到,所以适当的加入索引可以提高我们查询的数据的速度。 准备工作,向MongoDB中插入20000条记录,没条记录都有number和name > for(var i = 0 ; i<200000 ;i++){ ... db.books.insert({number:i,name:"book"+i}) ... ...

    阅读全文
  • MySQL提升大量数据查询效率的优化神器

    2022年07月07日

    在应用的的开发过程中,由于初期数据量小,开发人员写 SQL 语句时更重视功能上的实现,但是当应用系统正式上线后,随着生产数据量的急剧增长,很多 SQL 语句开始逐渐显露出性能问题,对生产的影响也越来越大,此时这些有问题的 SQL 语句就成为整个系统性能的瓶颈,因此我们必须要对它们进行优化. 为什么这么说呢?因为 ...

    阅读全文