数据库
文章平均质量分 89
mysql
闲狗
悠闲的狗生
展开
-
MySQL实战45讲笔记
1 基础架构 - 一条SQL查询语句是如何执行的?1 基础架构 - 一条SQL查询语句是如何执行的?2 日志系统:一条SQL更新语句是如何执行的?原创 2023-02-10 14:22:08 · 311 阅读 · 0 评论 -
学到emo之分库分表
阿里java开发手册写的是500w,若3年后达不到这个数据了,不要分库分表。表中字段太多且包含大字段的时候,在查询时对数据库的IO、内存会受到影响,同时更新数据时,产生的binlog文件会很大,MySQL在主从同步时也会有延迟的风险。2)当业务预估数据量级超过性能阈值时,需要通过分库分表来打散数据 ,降低单体数据量, 以解决单库单表性能问题;将单张表的数据切分到多个服务器上去,每个服务器具有相应的库与表,只是表中数据集合。微服务架构时,业务切割得足够独立,数据也会按照业务切分,保证业务数据隔离,大大提。原创 2023-02-07 01:43:23 · 487 阅读 · 0 评论 -
DB 设计规范汇总
数据库命名规范1、数据库名称全部使用小写;2、名称只允许使用a-z、0-9及下划线的组合,不允许出现其他字符;3、使用有意义的名称,能做到观其名知其意,比如:order_db;4、年份固定格式为YYYY四位;月份固定为MM两位;5、如果按百库十表方案分库,则名称为标准库名+下划线+编号后缀,其中编号长度固定为2位,取值范围从00到99,如order_db_00……order_db_99;6、如果按照月份分库,则库名为标准库名+下划线+年月编号,其中年月格式为YYYYMM,固定6位长度,如ord原创 2021-11-21 01:40:30 · 1372 阅读 · 0 评论 -
Druid 连接池食用教程
1initialSize连接池初始化时,会调用 com.alibaba.druid.pool.DruidDataSource#init 初始化连接池的数据库连接while (poolingCount < initialSize) { try { // 初始化物理连接 PhysicalConnectionInfo pyConnectInfo = createPhysicalConnection(); DruidConnectionHolder holder .原创 2021-05-06 15:41:12 · 1922 阅读 · 0 评论 -
使我郁郁寡欢的 MySQL 事务和锁
1 ACID 特性1.1 原子性(Atomicity)原子性:单个事务的 SQL 要么全都执行成功,要么全部执行失败。 事务的原子性通过 Undo Log 日志实现,事务处理过程中,如果出现了错误或者用户执行了 ROLLBACK 语句,MySQL 可以利用 Undo Log 中的备份将数据恢复到事务开始之前的状态。1.2 持久性(Durability)持久性:一个事务一旦提交,它对数据库中数据的改变是永久性的。 事务的持久性通过 Redo Log 日志实现...原创 2021-04-11 15:48:00 · 461 阅读 · 0 评论 -
死宅学数据库设计
学习自:阿里新零售数据库设计与实战还不如在家学习数据库设计1 不一般的 CRUD1.1 批量插入(1)批量插入,一条失败,全部回滚改动前执行插入 sqlINSERT INTO `t_dept` VALUES(40, 'ACCOUNTING', 'NEW YORK'), (50, 'RESEARCH', 'DALLAS'),(60, 'SALES', 'CHICAGO'), (70, 'OPERATIONS', 'BOSTON');结果:报了个错,表数据没变.原创 2021-04-08 01:44:43 · 278 阅读 · 0 评论 -
使我日渐消瘦的MySQL索引
0 那些年我们听过的索引优化手段若不是生活所迫,我怎会把自己弄得一身才华。0 那些年我们听过的索引优化手段为了成为一只知其然知其所以然的闲狗,我开始了下面的探索之路。1 索引可以大幅提升查询效率?先来个小测试,我先挖来一张有 100 0000 条记录的用户表 user这张表目前只在 id 上有一个主键索引,其他字段都没有索引。下面在一个没有索引的字段 account_name 做一个查询操作给这个字段创建一个普通索引,耗时 1.960000s然后再执行相同的查询操作,神速啊!原创 2020-05-20 22:13:22 · 855 阅读 · 0 评论