MySQL
文章平均质量分 66
莫小兮丶
努力成为技术达人
展开
-
redo log、binlog、undo log总结
redo log和undo log是InnoDB引擎的,binlog是server层的 undo log和binlog是逻辑日志,redo log是物理日志 undo log用于记录事务开始前的状态,用于事务失败时的回滚操作; redo log记录事务执行后的状态,用来恢复未写入data file的已成功事务更新的数据 redo log:重做日志,属于物理日志,用于记录事务操作的变化,记录的是数据修改之后的值,不管事务是否提交都会记录下来 更新语句执行时,InnoDB引擎会把更新记录写到redo log原创 2021-05-07 23:06:09 · 378 阅读 · 0 评论 -
对于MySQL集群(读写分离)的一些思考和总结
在企业开发过程中,数据库属于非常重要的一环,而MySQL作为最为常见的关系型数据库(之一),在日常使用过程中通常是单机的,很容易造成单点故障问题,这篇文章便是我对于MySQL集群学习的一些思考和总结 定义 读写分离是一种很经典的数据库拆分方案,将MySQL集群中的节点分为主库和从库,主库负责写,从库负责读 问题1:如何保证写请求打到主库,读请求打到从库? 1. 程序实现 由开发人员实现,在代码中根据SQL语句进行分发,insert、delete、update请求打到主节点上,select请求打到从节点上 解原创 2021-05-07 23:02:08 · 250 阅读 · 0 评论 -
MySQL事务详解
1. 定义 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消 注意:在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务 2. 使用 开启事务:begin;或start transaction; 提交:commit; 回滚:rollback; 3. 自动提交和手动提交 查看当前自动提交状态:show variables like 'autocommit'; 3.1 自动提交 默认开启,即用户对数据库的每一个操作为一个孤立的事务,也就是说用原创 2021-04-12 10:33:47 · 105 阅读 · 0 评论 -
MySQL大表优化
当MySQL单表记录数过大时,数据库的CRUD性能会明显下降 常见的优化方法如下: 限定数据范围:加上where条件,不要查全表 读写分离:主库负责写,从库负责读 垂直分表:对字段进行拆分,放在不同的表 优点:列数据变小,减少I/O次数,简化表结构,易于维护 缺点:主键冗余,需要管理冗余列,并会引起联表join操作,会让事务变得负责 水平分区:根据某种策略对数据行进行拆分,分散到不同表或库中,最好分库放到不同服务器上,例如对时间段进行划分 推荐阅读:https://blog.csdn.net/itgua原创 2021-04-11 21:49:03 · 271 阅读 · 0 评论