随笔分类 - presto&clickhouse
摘要:注:本文严禁任何形式的转载,原文使用word编写,为了大家阅读方便,提供pdf版下载。 MySQL与MariaDB主要特性比较详细版v1.0(不含HA).pdf 链接:https://pan.baidu.com/s/1qAcrxg8eRumRi3FTJtXZxw 提取码:giei MySQL与Mar
阅读全文
摘要:SELECT ORDINAL_POSITION AS Colorder, Column_Name AS ColumnName, data_type AS TypeName, COLUMN_COMMENT AS DeText, ( CASE WHEN data_type = 'float' OR data_ty...
阅读全文
摘要:我们都知道oracle存储过程支持为参数设置默认值,这样即使存储过程升级,原来的调用也可以不受影响。但是mysql不支持,mariadb也没有支持(截止10.4也是如此)。但是这一限制会导致升级麻烦重重。虽然如此,我们可以通过mysql 5.7/mariadb 10.2引入的json类型来变通实现。
阅读全文
摘要:ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes 这个长度指的是定义长度,而非实际长度。
阅读全文
摘要:To apply ORDER BY or LIMIT to an individual SELECT, place the clause inside the parentheses that enclose the SELECT,as follows
阅读全文
摘要:几个月前,我们有个产品的开发反馈了个问题,说有个组织结构的查询很慢,几千行的复杂关联需要1秒钟,表示太慢了,原语句如下: 够复杂的,看了下执行计划,确实有个子句没有物化导致i/o访问次数下不来,于是对该子查询使用with重写如下: 因为mariadb的with子句会强制物化为临时表,改写后,0.2秒
阅读全文
摘要:查询1-n的递归 mysql> WITH RECURSIVE cte (n) AS( SELECT 1 /* seed query */UNION ALLSELECT n + 1 FROM cte WHERE n < 5 /* recursive query */)SELECT * FROM cte
阅读全文
摘要:官方文档https://mariadb.com/kb/en/library/mariadb-columnstore/ 推荐使用最新1.2.x最新版本。 先决条件 安装1.0的jemalloc,可下载rpm包如jemalloc-3.6.0-1.el7.x86_64.rpm。 安装(单机) 推荐下载li
阅读全文
摘要:本文描述spring boot基于Atomikos+DruidXADameSource分布式事务配置(100%纯动态),也就是增加、减少数据源只需要修改application.properties文件,无需动态增加或减少Bean。 有时候我们一个应用会有N份部署,每个需要访问多个数据源,A环境可能只
阅读全文
摘要:很多开发人员之所以编写出低效的应用,有一大原因是并不理解怎样编写高效的SQL。以订单查询为例,我们经常需要查询某个用户的订单以及订单明细,并且以树形方式展现如下: 对于这种性质的功能,很多开发人员的做法是先查询主表,然后根据主表去循环子表,如下所示: 这种做法就是典型的过程性编程思维,它不仅在更改查
阅读全文
摘要:10.10.6 大数据量插入优化 在很多涉及支付和金融相关的系统中,夜间会进行批处理,在批处理的一开始或最后一般需要将数据回库,因为应用和数据库通常部署在不同的服务器,而且应用所在的服务器一般也不会去安装oracle客户端,同时为了应用管理和开发模式统一,很多会利用mybatis的foreach c
阅读全文
摘要:mariadb 在10.2.4引入闪回特性,支持DML(INSERT, DELETE, UPDATE)操作的闪回,不支持DDL语句,使用闪回,必须设置binlog_row_image=FULL。 其原理和oracle有undo不一样,将INSERT重写为DELETE, DELETE重写为INSERT
阅读全文
摘要:当表中有虚拟列,使用mysqldump导出后,执行source导入的时候,会出现下列错误: 对于mariadb 10.2,该错误忽略即可,不影响导入。对于mysql 5.7,截止5.7.9该错误没有解决,参考官方bug列表https://bugs.mysql.com/bug.php?id=79148
阅读全文
摘要:最近,我们有些功能需要使用到基于多个字段的分区,需要同时支持oracle/mysql,但是开发人员又希望尽可能少的改动业务代码,也不愿意使用多列分区,在oracle 11g之前,不支持多列分区(12.2支持,主要是怕客户环境不支持),但是支持基于虚拟列的分区,mariadb支持多列分区,看官方文档,
阅读全文
摘要:过去两年半一直推荐使用percona server,今天开始,因为一些mysql迟迟不不愿意支持的特性,打算换回mariadb 10.2了,具体哪些不说了,总之非常关键,mariadb都支持一两年了,oracle公司因为oracle的原因,对mysql还是不愿意支持。 mariadb 10.1之后的
阅读全文
摘要:最近发现,我们有些环境的tomcat应用启动非常缓慢,大部分在3-5分钟,有个测试环境更加阶段,要十几分钟才能启动完成。经过仔细分析,是一个查询INFORMATION_SCHEMA库中数据字典信息的查询异常缓慢,该语句如下: 以前从来都没遇到这种问题,也很少关心mysql数据字典查询的性能问题,因为
阅读全文
摘要:从另外一台服务器拷贝了个mysql实例过来,给root@'%'授权的时候提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),以前5.6->5.7的时候,确实执行下mysql_upg
阅读全文
摘要:接上一篇mysql 5.7多源复制(用于生产库多主库合并到一个查询从库)。 这一篇详细介绍otter/canal环境搭建以及当同步出现异常时如何排查。本文主要参考https://blog.csdn.net/wudufeng/article/details/78688240搭建,出现异常时,主要参考了
阅读全文
摘要:建议使用percona server linux generic版,从https://www.percona.com/downloads/Percona-Server-LATEST/下载,现在不在推荐使用mariadb是因为考虑到mariadb的越来越不兼容mysql原生。 对于操作系统,仅推荐rh
阅读全文
摘要:最近工作中我遇到了一个 bug,我试着通过 Rails 在以“utf8”编码的 MariaDB 中保存一个 UTF-8 字符串,然后出现了一个离奇的错误: Incorrect string value: ‘\xF0\x9F\x98\x83 <…’ for column ‘summary’ at ro
阅读全文