DBA
wzy0623
25年的数据库、数据仓库、大数据相关工作。《Hadoop构建数据仓库实践》、《HAWQ数据仓库与数据挖掘实战》、《SQL机器学习库——MADlib技术解析》、《MySQL高可用实践》、《Kettle构建Hadoop ETL》、《Greenplum构建实时数据仓库实践》作者。
展开
-
INSERT...ONDUPLICATEKEYUPDATE产生deathlock死锁原理讲解及解决办法
INSERT...ONDUPLICATEKEYUPDATE产生deathlock死锁原理讲解及解决办法转载 2024-02-01 16:16:26 · 734 阅读 · 0 评论 -
MySQL 命令行多实例连接界面脚本
MySQL 命令行多实例连接界面脚本原创 2023-10-10 06:49:51 · 162 阅读 · 0 评论 -
MySQL 自定义 split 存储过程
MySQL 自定义 split 存储过程原创 2023-08-20 09:20:19 · 923 阅读 · 0 评论 -
MySQL线上维护三脚本
1. 获取process和lock的现场信息(get_processlist.sh)#!/bin/bashsource /home/mysql/.bashrcDT=`date '+%Y%m%d_%H%M%S'`mysql -uroot -p123456 -S /data/3306/mysqldata/mysql.sock -e "select t1.* from information_schema.processlist t1,(select count(1) c from informat原创 2021-05-21 17:53:04 · 1184 阅读 · 3 评论 -
新书上架,毛遂自荐!
all in one:全面介绍复制、中间件、集群、存储四类各种MySQL高可用技术。 step by step:各种方案安装配置部署的详细步骤。 troubleshooting and test:问题复现、解决与性能对比测试。原创 2020-07-20 14:49:38 · 972 阅读 · 1 评论 -
DBeaver连接hive、impala、phoenix、HAWQ、redis
目录一、DBeaver简介二、下载与安装三、连接hive四、连接impala五、连接phoenix六、连接HAWQ七、连接redis 伴随着技术的不断发展与进步,我们会接触和使用越来越多的数据源。从经久不衰的MySQL、Oracle、SQLserver、DB2等关系数据库,到方兴未艾的MongoDB、Redis、Cassandra等NoSQL产品,再到屡见不鲜的各种大数据组件,如Hive、Impala、HBase、Phoenix、Spark,以及林林总总的时序数...原创 2020-06-15 11:38:17 · 8470 阅读 · 2 评论 -
《数据库索引设计优化》读书笔记(一)
第3章 SQL处理过程练习3.1 为SQL3.7中所示的查询设计尽可能好的索引:-- SQL 3.7SELECT LNAME, FNAME, CNOFROM CUSTWHERE SEX = 'M' AND HEIGHT > 190ORDER BY LNAME, FNAME ;分析:本书第4章提出了一个三星索引的概念。如果与原创 2016-02-01 14:56:14 · 4452 阅读 · 0 评论 -
《数据库索引设计优化》读书笔记(二)
第4章 为SELECT语句创建理想的索引练习4.1 为SQL4.5中的查询语句设计候选索引A和选索引B。-- SQL 4.5SELECT A, B, D, E FROM ORDERITEM WHERE B BETWEEN :B1 AND :B2 -- (FF = 1...10%) AND C = 1 -- (FF = 2%) AN原创 2016-02-01 15:09:23 · 2367 阅读 · 5 评论 -
《数据库索引设计优化》读书笔记(三)
《数据库索引设计优化》读书笔记(三)第6章 影响索引设计过程的因素练习6.1 图6.5中的SELECT查询在当前索引条件下需要花费1分钟。请用两种方案设计可能的最佳索引:(1)不增加额外的第三个索引,(2)增加第三个索引。图6.5分析:如图6.5所示,TABLE上字段A有主键聚簇索引,字段C有非聚簇索引。查询谓词中有字段C的范围条件,并且结果集按C排序。因为谓词中只有字原创 2016-02-02 10:41:55 · 2384 阅读 · 1 评论 -
《数据库索引设计优化》读书笔记(四)
第7章 被动式索引设计练习7.1 你将如何归类图7.12中的尖刺:有优化空间的问题制造者,无优化空间的问题制造者,还是受害者?分析:如图7.2所示,我们首先要区分的是问题的制造者及受害者。长服务时间为问题制造者,长排队时间为受害者。如果一个事务独占了资源(也许是因为使用了不合适的索引),那么就会对其他事务造成明显的负面影响,进而导致这些事务也与独占资源的事务一同原创 2016-02-02 15:12:35 · 1270 阅读 · 0 评论 -
《数据库索引设计优化》读书笔记(五)
第8章 为表连接设计索引练习8.1 评估图8.25中所示连接的响应时间,过滤因子使用给定的值。分析:A为父表,B为子表,两个表做主外键关联查询,只有主键和外键上有索引,并且A表的主键索引和B表的外键索引为聚簇索引。以A作为外层表做嵌套循环连接计算响应时间:第1步:通过聚簇索引AK访问A表索引 AK TR = 1 TS = 10000000LTR 1原创 2016-02-03 16:45:07 · 2267 阅读 · 0 评论 -
《数据库索引设计优化》读书笔记(六)
第10章 多索引访问练习10.1 假设多索引访问一节中所描述的拥有位图索引的CIA表包含200000000行数据。请评估(a)位图索引和(b)半宽B树索引所需的磁盘空间。假设一个字节占8位。请将磁盘空间的差异转化为每月需要支付的美元金额。书中关于拥有位图索引的CIA表的描述如下: 位图索引的比较优势在于能够很容易地使用多个位图索引来满足单个查询。考虑一个有原创 2016-02-03 18:19:37 · 1432 阅读 · 0 评论 -
《数据库索引设计优化》读书笔记(七)
第13章 数据库索引选项练习13.1 调查你当前使用的DBMS版本关于索引的限制和高级选项。.索引行压缩与异常情况MySQL支持Oracle支持MySQL使用NULL值实现索引行压缩。但不推荐在实际中使用NULL来代替一个特定的值,因为从长远来看,这可能会导致应用系统错误。create table t1 (a int);insert into t1 values原创 2016-02-04 16:27:17 · 1156 阅读 · 0 评论 -
《数据库索引设计优化》读书笔记(八)
第14章 优化器不是完美的练习14.1 重写SQL 14.8中的游标,使得新游标的访问路径满足:MC=1仅需访问索引无排序-- SQL 14.8DECLARE CURSOR141 CURSOR FORSELECT LNAME, FNAME, CNO FROM CUST WHERE (LNAME = :LNAMEPREV AND CNO > :CNOPREV)原创 2016-02-05 09:57:24 · 1148 阅读 · 0 评论 -
数据库第一类第二类丢失更新
第一类丢失更新(回滚丢失,Lost update)A事务撤销时,把已经提交的B事务的更新数据覆盖了。这种错误可能造成很严重的问题,通过下面的账户取款转账就可以看出来:A事务在撤销时,“不小心”将B事务已经转入账户的金额给抹去了。SQL92没有定义这种现象,标准定义的所有隔离级别都不允许第一类丢失更新发生。第二类丢失更新(覆盖丢失/两次更新问题,Se...转载 2019-01-05 19:50:47 · 1953 阅读 · 3 评论