----MySQL
文章平均质量分 88
syrdbt
这个作者很懒,什么都没留下…
展开
-
SpringBoot 整合 ShardingSphere JDBC、MySQL分表实例
1. 概述ShardingSphere 分为ShardingSphere-JDBC、ShardingSphere-Proxy、ShardingSphere-Sidecar(TODO)。ShardingSphere 官方手册:传送门 ;这里使用的是 ShardingSphere-JDBC ,ShardingSphere-JDBC为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。 它使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,原创 2021-05-06 23:19:46 · 695 阅读 · 4 评论 -
MySQL 表自连接,两次自连接查询
有一个分类表,可以有三个等级的分类,一级分类下会有二级分类,二级分类会有三级分类,表结构如下所示。模拟数据如下所示,:现在有个一次性需求需要将所有的分类查询出来保存到excel,格式如下:一级分类id一级分类名称二级分类id二级分类名称三级分类id三级分类名称查询SQL 如下所示:select c1.id as 一级分类id, c1.name as 一级分类名称, temp.c2id as 二级分类id, temp.c2name as 二级分类名称,原创 2020-10-11 22:59:56 · 1434 阅读 · 0 评论 -
MySQL事务隔离级别和MVCC
原文地址:https://juejin.im/post/5c9b1b7df265da60e21c0b57事前准备为了故事的顺利发展,我们需要创建一个表:CREATE TABLE t ( id INT PRIMARY KEY, c VARCHAR(100)) Engine=InnoDB CHARSET=utf8;然后向这个表里插入一条数据:INSERT INTO t...转载 2020-02-26 17:34:48 · 341 阅读 · 1 评论 -
减少回表的一次SQL查询优化
原文地址:https://www.jianshu.com/p/0768ebc4e28d读后感:减少了回表的次数,从而减少磁盘I/O,降低了查询时间,很有意思。有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调...转载 2020-02-04 22:09:42 · 1389 阅读 · 5 评论 -
MySQL InnoDB 一棵B+树可以存放多少行数据
原文地址:https://www.cnblogs.com/leefreeman/p/8315844.html#43520241. 一个问题?InnoDB一棵B+树可以存放多少行数据?这个问题的简单回答是:约2千万。为什么是这么多呢?因为这是可以算出来的,要搞清楚这个问题,我们先从InnoDB索引数据结构、数据组织方式说起。我们都知道计算机在存储数据的时候,有最小存储单元,这就好比我们今天...转载 2020-02-04 20:54:07 · 433 阅读 · 1 评论 -
MySQL 之 Sql性能优化梳理
原文地址: https://juejin.im/post/59b11ba151882538cb1ecbd0文章目录前言1.0 基本概念简述1.1 逻辑架构1.2 锁1.3 事务1.4 存储引擎2.0 创建时优化2.1 Schema和数据类型优化2.2 索引3.0 查询时优化3.1 查询质量的三个重要指标3.2 查询优化点后记2017.09.08前言本文主要针对的是关系型数据数据库MySq...转载 2019-10-12 23:49:03 · 193 阅读 · 0 评论 -
幂等问题 8种方案解决重复提交
原文地址:https://juejin.im/post/5d31928c51882564c966a71c1.什么是幂等幂等:F(F(x)) = F(x) , 即多次运算结果一致;在我们编程中常见幂等1)select查询天然幂等 2)delete删除也是幂等,删除同一个多次效果一样 3)update直接更新某个值的,幂等 4)update更新累加操作的,非幂等 5)insert...转载 2019-10-07 22:34:13 · 363 阅读 · 0 评论 -
MAC下载MySQL5.7:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
1. 错误描述错误截图如下所示:2. 错误原因和解决方法没有启动server输入以下命令启动 server ,注意我的mysql下载后在/usr/local 目录下。sudo /usr/local/mysql/support-files/mysql.server 再次登陆输入密码即可,如下图所示。3. 扩展MySQL 服务启动、关闭、重启命令:启动MySQL服务:sudo ...原创 2019-08-14 22:58:40 · 827 阅读 · 0 评论 -
SpringBoot2 配置多数据源、实现数据库水平切分
1.水平切分首先我们来了解一下水平切分:水平切分即将同一个表中的数据进行分片,然后保存到多个的数据库中。例如:一个用户表,我们可以将用户分片保存的不同的数据库中,可以根据用户的ID(userID),userID%3==0的用户放到一个库中,userID%3==1放到一个库中,userID%3==2放到一个库中,如下图所示。2.工程概述本工程的...原创 2019-06-30 21:44:29 · 2717 阅读 · 0 评论 -
MySQL的四种事务隔离级别(Windows10+MySQL5.6.36+InnoDB)
原文地址:https://www.cnblogs.com/huanongying/p/7021555.html本文在原文的基础上补充了查看MySQL8.0查看默认事务隔离级别,8.0版本和5.6版本默认事务隔离级别一样,都是可重复读 (repeatable-read)。MySQL8.0查询默认事务隔离级别:select @@transaction_isolation;一、事务的...转载 2020-04-16 01:10:01 · 591 阅读 · 0 评论 -
MySQL 创建两列(多列)属性的主码
1.SQL语句创建多列属性的主码PRIMARY KEY (`studnetID`,`classID`)声明studentID属性和classID属性共同组成主键,SQL语句语句如下所示,数据库引擎用的是InnoDB。-- ------------------------------ Table structure for classstudents-- --------------...原创 2019-04-21 16:12:35 · 11513 阅读 · 0 评论 -
MySQL 的等值连接、交叉连接、左外连接 、右外连接、全外连接实例
1.测试数据测试数据如下所示,数据库脚本(含数据)在文章最后的附录中给出。测试工具:MySQL8.0 ,NavicatPremium。首先是一个班级表:class,class表中的数据如下所示。学生表: student,student表中的数据如下所示。2.等值连接class表和student表进行基于classID属性的等值连接,SQL语句如下...原创 2019-04-09 21:48:51 · 3042 阅读 · 0 评论 -
数据库的向上扩展和横向扩展(即水平扩展:读写分离、垂直切分、水平切分)
1.概述扩展,也称为伸缩性,指的系统不断增加其承载能力的能力。数据库的扩展可以简单分为两类:向上扩展和横向扩展(水平扩展)。向上扩展是提高硬件,横向扩展是通过副本(读写分离)、垂直切分和水平切分的方式,把不同的数据放在不同的节点(物理部署的MySQL实例)中。2.向上扩展向上扩展,买更好的服务器,这种方式比较简单,一般情况下向上扩展就可以解决问题,但是如果代价太大了(规格越高...原创 2019-03-26 14:47:17 · 3837 阅读 · 0 评论 -
ubuntu18.04 首次登录mysql未设置密码或忘记密码解决方法
1.首先输入以下指令:sudo cat /etc/mysql/debian.cnf运行截图如下:2. 再输入以下指令:mysql -u debian-sys-maint -p//注意! //这条指令的密码输入是输入第一条指令获得的信息中的 password = ZCt7QB7d8O3rFKQZ 得来。//请根据自己的实际情况填写!运行截图如下:(注意! 这步的密码...原创 2018-07-17 23:54:55 · 67311 阅读 · 89 评论