
MySQL
文章平均质量分 92
Men-DD
这个作者很懒,什么都没留下…
展开
-
MySQL(十二):阿里巴巴 MySQL binlog 增量订阅&消费Canal组件
- 使用 Binlog 实时更新Redis缓存 * Mysql 服务器准备 * Canal 服务器准备 * Canal Client * 测试- 基于 Binlog实现跨系统实时数据同步 * 更换数据库 * 实现比对和补偿程序- 安全地实现数据备份和恢复原创 2022-12-19 12:13:43 · 875 阅读 · 0 评论 -
MySQL(十一):分库分表方案-ShardingSphere
Sharding-JDBCSharding-JDBC定位为轻量级Java框架,在Java的JDBC层提供的额外服务。可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM 框架的使用Sharding-JDBC主要功能1) 数据分片:分库分表、读写分离、分片策略、分布式主键2) 分布式事务:标准化事务接口、XA强一致性事务、柔性事务3) 数据库治理:配置动态、服务治理、数据脱敏、链路追踪核心概念逻辑表:水平拆分的数据库的相同逻辑和数据结构表的总称真实表:在分片的数据库中真实存在的物理表。原创 2022-04-20 18:54:24 · 2876 阅读 · 0 评论 -
MySQL(十):分库分表方案
分库分表 是将数据拆分成不同的存储单元。从分拆的角度上,可以分为垂直分片和水平分片。垂直分片:按照业务来对数据进行分片,又称为纵向分片。垂直分片往往需要对架构和设计进行调整。通常来讲,是来不及应对业务需求快速变化的。而且,他也无法真正的解决单点数据库的性能瓶颈。垂直分片可以缓解数据量和访问量带来的问题,但无法根治。如果垂直分片之后,表中的数据量依然超过单节点所能承载的阈值,则需要水平分片来进一步处理。水平分片:又称横向分片。相对于垂直分片,它不再将数据根据业务逻辑分类,而是通过某个字段(或某原创 2022-04-20 11:46:07 · 1530 阅读 · 0 评论 -
MySQL(九):高可用搭建 & 复制模型
docker installdocker run --name mysql3316 --network mendd-bridge -p 3316:3306 --privileged=true -ti -e MYSQL_ROOT_PASSWORD=xxxxxxxxxxx -v /data/mysql/3316/conf:/etc/mysql/mysql.conf.d -v /data/mysql/3316/data/:/var/lib/mysql -v /data/mysql/3316/logs/:/var原创 2022-04-18 22:15:04 · 841 阅读 · 0 评论 -
MySQL(七)高性能表结构、索引设计、慢查询、分析、索引合并
高性能表结构及索引设计一、数据库表设计三范式第一范式(1NF):属于第一范式关系的所有属性都不可再分,即数据项不可分第二范式(2NF):要求数据库表中的每个实例或行必须可以被惟一地区分。通常在实现来说,需要为表加上一个列,以存储各个实例的惟一标识第三范式(3NF):指每一个非主属性既不部分依赖于也不传递依赖于业务主键,也就是在第二范式的基础上消除了非主键对主键的传递依赖反范式设计反范式化就是为了性能和读取效率得考虑而适当得对数据库设计范式得要求进行违反。允许存在少量得冗余,换句话来说反范式原创 2022-02-15 15:27:18 · 93 阅读 · 0 评论 -
MySQL(六)MVCC多版本并发控制与SQL执行BufferPool机制
MVCC多版本并发控制机制Mysql在可重复读隔离级别如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。这个隔离性就是靠MVCC(Multi-Version Concurrency Control)机制来保证的,对一行数据的读和写两个操作默认是不会通过加锁互斥来保证隔离性,避免了频繁加锁互斥,而在串行化隔离级别为了保证较高的隔离性是通过将所有操作加锁互斥来实现的。Mysql在读已提交和原创 2022-02-14 16:55:45 · 236 阅读 · 0 评论 -
MySQL(八)提问
MySQL中有哪些存储引擎?Myisam和Innodb的区别是什么?请概述下数据库的范式设计数据库表设计时,字段你会如何选择?MySQL里记录货币用什么字段类型好?谈谈MySQL里的字符串类型VARCHAR(M)最多能存储的数据量?什么是虚拟生成列?请说下事务的基本特性事务并发可能引发什么问题?请描述下MySQL中InnoDB支持的四种事务隔离和区别MySQL有哪些索引类型?简单描述MySQL各个索引的区别MySQL的索引对数据库的性能有什么影响?为什么MySQL的索引要使用B+树原创 2022-02-14 14:44:20 · 100 阅读 · 0 评论 -
MySQL(五)事务、隔离级别、锁机制
多个事务对相同的一批数据进行增删改查操作导致:脏写、脏读、不可重复读、幻读问题解决多事务并发问题:事务隔离机制、锁机制、MVCC多版本并发控制隔离机制事务及其ACID属性事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID属性。原子性(Atomicity) :事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。一致性(Consistent) :在事务开始和完成时,数据都必须保持一致状态。这意味着所有相关的数据规则都必须应用于事务的修改,以保持原创 2022-02-14 14:42:58 · 107 阅读 · 0 评论 -
MySQL(四)优化
- Mysql 调优- Order by 与 Group by 优化- Using filesort文件排序原理详解- 索引设计原则- 索引设计实战- 分页查询优化- Join关联查询优化- in和exsits优化- count(*)查询优化- 阿里巴巴Mysql规范解读原创 2022-02-11 01:37:18 · 619 阅读 · 0 评论 -
MySQL(三)一条Sql是如何执行的
常用操作show databases; 显示所有数据库use dbname; 打开数据库:show tables; 显示数据库mysql中所有的表;describe user; 显示表mysql数据库中user表的列信息);连接器mysql ‐h host[数据库地址] ‐u root[用户] ‐p root[密码] ‐P 3306Mysql 客户端连接服务端验证 host 、pwd分配会话空间(加载权限等信息)(这时服务端修改权限已不起作用)修改user密码CREATE USE原创 2022-02-10 16:57:27 · 143 阅读 · 0 评论 -
MySQL(二)Explain
Explain SQL的执行计划原创 2022-02-09 16:55:05 · 772 阅读 · 0 评论 -
MySQL(一)索引数据结构与算法
MySQL 索引是帮助MySQL高效获取数据 排好序的数据结构索引数据结构数据可视化(data structure visualizations)https://www.cs.usfca.edu/~galles/visualization/Algorithms.html二叉树红黑树 (二叉平衡树) (大数据量 树的高度不可控)Hash表对索引的key进行一次hash计算就可以定位出数据存储的位置很多时候Hash索引要比B+ 树索引更高效仅能满足 “=”,“IN”,不支持范围查询原创 2022-02-08 19:39:40 · 461 阅读 · 0 评论 -
数据库迁移Postgres 到 Mysql 以及优化数据库
mysql安装migration 兼容处理pg数据导入sql 兼容处理mysql | pg 同步rails mysql 支持mysql 设置编码为utf8mb4(1.utf8 是 Mysql 中的一种字符集,只支持最长三个字节的 UTF-8字符;2.要在 Mysql 中保存 4 字节长度的 UTF-8 字符,需要使用 utf8mb4 字符集,但只有 5.5.3 版本以后3. 对于...原创 2019-04-19 11:50:14 · 1477 阅读 · 0 评论