以小博大外小内大,Db数据库SQL优化之小数据驱动大数据by Liu Yue/2022-11-23 标签: Db sql 以小 优化 博大 外小内 数据 数据库 驱动 SQL优化中,有一条放之四海而皆准的既定方针,那就是:永远以小数据驱动大数据。其本质其实就是以小的数据样本作为驱动查询能够优化查询效率,在SQL中,涉及到不同表数据的连接、转移、或者合并,这些操作必须得有个数据集作为“带头”大哥,即驱动数据,而这个驱动数据最好是数据量最小的那一个。 内大外小 在讨论数据库之前,日常开发中,我们经常会遇到数据样本数量不一致,但是需要进行检索的情况,比如某人在地铁的某节车厢里捡到N台Ip......了解更多
霜皮剥落紫龙鳞,下里巴人再谈数据库SQL优化,索引(一级/二级/聚簇/非聚簇)原理by Liu Yue/2022-02-14 标签: sql 一级 下里巴人 二级 优化 再谈 剥落 原理 数据库 索引 紫龙 聚簇 霜皮 非聚 举凡后端面试,面试官不言数据库则已,言则必称SQL优化,说起SQL优化,网络上各种“指南”和“圣经”难以枚举,不一而足,仿佛SQL优化已然是妇孺皆知的理论常识,然后根据多数无知(Pluralistic ignorance)理论,人们印象里觉得多数人会怎么想怎么做,但这种印象往往是不准确的。那SQL优化到底应该怎么做?本次让我们褪去SQL华丽的躯壳,以最浅显,最粗俗,最下里巴人的方式讲解一下SQL优化的前因后果,前世今生。 SQL优化背景&nb......了解更多
心动不如行动,基于Docker安装关系型数据库PostgrelSQL替代Mysqlby Liu Yue/2020-08-12 标签: Docker mysql PostgrelSQL 不如 关系 基于 安装 心动 数据库 替代 行动 最近“全栈数据库”的概念甚嚣尘上,主角就是PostgrelSQL,它最近这几年的技术发展不可谓不猛,覆盖OLTP、OLAP、NoSQL、搜索、图像等应用场景,实实在在的全栈性发展。帮助公司解决了数据孤岛、数据平台多、同步一致性、延迟,软硬件成本增加等业务痛点,在互联网、金融、物联网、传统企业等领域得到了广泛的应用。PostgreSQL的应用场景丰富,不亚于商用数据库Oracle,常被业界称为“开源界的Oracle”。 至于Mysql大家都很熟......了解更多
简短截说阐述redis中事务(Redis Transactions)的使用by Liu Yue/2020-01-12 标签: 使用 redis 截说 简短 阐述 事务 我们知道,在关系型数据库中,比如mysql,如果要使用事务,首先向数据库服务器发送 BEGIN ,然后执行各个相互一致的写操作和读操作,最后,用户可以选择发送 COMMIT 来确认之前所做的修改,或者发送 ROLLBACK 来放弃那些修改。 同样, Redis 中也有简单的方法处理一连串相互一致的读操作和写操作。首先是以 MULTI 命令开始事务,后续跟着一连串命令,最后以 EXEC 结束......了解更多
关于mysql联合索引的最左前缀原则以及b+treeby Liu Yue/2019-06-10 标签: 关于 mysql 以及 tree 前缀 索引 原则 联合 软件版本mysql5.7 根据官网的文档 https://dev.mysql.com/doc/refman/5.7/en/multiple-column-indexes.html 查询条件要符合最左原则才能使用到索引 首先说说联合索引的好处: ......了解更多
在阿里云Centos7.6上面配置Mysql主从数据库(master/slave),实现读写分离by Liu Yue/2019-05-29 标签: mysql 实现 配置 阿里 Centos7.6 上面 master slave 主从 读写 数据库 分离 在之前的一篇文章中,阐述了如何在高并发高负载的场景下使用nginx做后台服务的负载均衡:在阿里云Centos上配置nginx+uwsgi+负载均衡配置,但是不要以为这样做了就是一劳永逸的,到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器负载,如此多的数据库连接操作,数据库必然会崩溃,数据库如果宕机的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:redi......了解更多
关于mac系统中进入mysql遇到 Access denied for user 'root'@'localhost' (using password: YES)解决方案by Liu Yue/2019-02-15 标签: 遇到 解决方案 关于 mysql Mac 系统 Access denied user root localhost using password YES 进入 Access denied for user 'root'@'localhost' (using password: YES) usering password:YES 其实不用怀疑,密码输入正确,既然不是密码的问题那就是mysql服务出问题了,具体解决流程如下: 1) Stop mysql (Kill mysql process or run following command) 停止mysql服务 &n......了解更多
一个sql查询排序小技巧by Liu Yue/2017-07-24 标签: 一个 sql 排序 查询 技巧 如果你想做分段统计比如SELECT CASE WHEN (num = 0) THEN '0' WHEN (age > 0 AND age <= 10) THEN '10'WHEN (age > 100 AND age <=200) THEN '100' ELSE '>200' END as num 这样的情况,如果用别名排序的话,数据库字符串排序会变成乱序,导致难以浏览,所......了解更多
Mysql 对于出现保留关键字的情况要使用双撇号by Liu Yue/2016-10-15 标签: mysql 使用 双撇号 关键字 保留 对于 情况 出现 今天在操作数据库往表中插入数据时,表中有个key字段,怎么添加都不行,总是报错。 key是mysql关键字insert into tb_config (key,val) values ('vm.0.8','192.168.137.188:9080');一直报错。修改为key二端加撇号(`)insert into tb_config (`key`,val) values ('vm.0.8','192.168.137.188:9080');......了解更多
关于mysql表引擎的问题by Liu Yue/2016-09-10 标签: 关于 问题 mysql 引擎如果是查询比较多尽量用 MyISAM 速度要快一点想要读写分离的话,还是做主从表比较靠谱一点,因为innodb同时读写的话也会锁表......了解更多
mysql终端查看中文乱码问题by Liu Yue/2015-02-20 标签: 问题 乱码 mysql 中文 终端 查看 p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Courier; color: #000000} 在终端里要先执行 set names utf8;记录一下......了解更多