MySQL高级第19章 - 数据库备份与恢复

MySQL高级第19章 - 数据库备份与恢复

MySQL高级第19章 - 数据库备份与恢复 在任何数据库环境中,总会有不确定的意外情况发生,比如例外的停电、计算机系统中的各种软硬件故障、人为破坏、管理员误操作等是不可避免的,这些情况可能会导致数据的丢失、服务器瘫痪等严重的后果。存在多个服务器时,会出现主从服务器之间的数据同步问题。 为了有效防止

MySQL高级第18章 - 主从复制

MySQL高级第18章 - 主从复制 1. 主从复制概述 1.1 如何提升数据库并发能力 在实际工作中,我们常常将Redis作为缓存与MySQL配合来使用,当有请求的时候,首先会从缓存中进行查找,如果存在就直接取出。如果不存在再访问数据库,这样就提升了读取的效率,也减少了对后端数据库的访问压力。Re

MySQL高级第18章 - 主从复制
MySQL高级第17章 - 其他数据库日志

MySQL高级第17章 - 其他数据库日志

MySQL高级第17章 - 其他数据库日志 我们在讲解数据库事务时,讲过两种日志:重做日志、回滚日志。 对于线上数据库应用系统,突然遭遇数据库宕机怎么办?在这种情况下,定位宕机的原因就非常关键。我们可以查看数据库的错误日志。因为日志中记录了数据库运行中的诊断信息,包括了错误、警告和注释等信息。比如:

MySQL高级第16章 - 多版本并发控制

MySQL高级第16章 - 多版本并发控制 1. 什么是MVCC MVCC (Multiversion Concurrency Control),多版本并发控制。顾名思义,MVCC 是通过数据行的多个版本管理来实现数据库的 并发控制 。这项技术使得在InnoDB的事务隔离级别下执行 一致性读 操作有

MySQL高级第16章 - 多版本并发控制
MySQL高级第15章 - 锁

MySQL高级第15章 - 锁

MySQL高级第15章 - 锁 事务的 隔离性 由这章讲述的 锁 来实现。 1. 概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在程序开发中会存在多线程同步的问题,当多个线程并发访问某个数据的时候,尤其是针对一些敏感的数据(比如订单、金额等),我们就需要保证这个数据在任何时刻最多只有一个

MySQL高级第14章 - MySQL事务日志

MySQL高级第14章 - MySQL事务日志 事务有4种特性:原子性、一致性、隔离性和持久性。那么事务的四种特性到底是基于什么机制实现呢? 事务的隔离性由锁机制实现。 而事务的原子性、一致性和持久性由事务的redo日志和undo日志来保证。 REDO LOG称为重做日志,提供再写入操作,恢复提交事

MySQL高级第14章 - MySQL事务日志
MySQL高级第13章 - 事务的基础知识

MySQL高级第13章 - 事务的基础知识

MySQL高级第13章 - 事务的基础知识 1. 数据库事务概述 事务是数据库区别于文件系统的重要特性之一,当我们有了事务就会让数据库始终保持一致性,同时我们还能通过事务的机制恢复到某个时间点,这样可以保证已提交到数据库的修改不会因为系统崩溃而丢失。 1.1 存储引擎支持情况 SHOW ENGINE

MySQL高级第12章 - 数据库其他调优策略

MySQL高级第12章 - 数据库其他调优策略 1. 数据库调优的措施 1.1 调优的目标 尽可能节省系统资源,以便系统可以提供更大负荷的服务。(吞吐量更大) 合理的结构设计和参数调整,以提高用户操作响应的速度。(响应速度更快) 减少系统的瓶颈,提高MySQL数据库整体的性能。 1.2 如何定位调优

MySQL高级第12章 - 数据库其他调优策略
MySQL高级第11章 - 数据库的设计规范

MySQL高级第11章 - 数据库的设计规范

MySQL高级第11章 - 数据库的设计规范 1. 为什么需要数据库设计 我们在设计数据表的时候,要考虑很多问题。 比如: 用户都需要什么数据?需要在数据表中保存哪些数据? 如何保证数据表中数据的正确性,当插入、删除、更新的时候该进行怎样的约束检查? 如何降低数据表的数据冗余度,保证数据表不会因为用

MySQL高级第10章 - 索引优化与查询优化

MySQL高级第10章 - 索引优化与查询优化 都有哪些维度可以进行数据库调优?简言之: 索引失效、没有充分利用到索引——索引建立。 关联查询太多JOIN(设计缺陷或不得已的需求)——SQL优化。 服务器调优及各个参数设置(缓冲、线程数等)——调整my.cnf 数据过多一一分库分表 关于数据库调优的

MySQL高级第10章 - 索引优化与查询优化