随笔分类 -  数据库 / MySQL

摘要:定期备份 MySQL 数据库服务器 1、备份分类 (1)物理备份:备份数据文件,转储数据库物理文件到某一目录,物理备份恢复速度比较快,但占用空间比较大,MySQL 中可以用 Xtrabackup 工具来进行物理备份 (2)逻辑备份:对数据库对象利用工具进行导出工作,汇总入备份文件内,逻辑备份恢复速度 阅读全文
posted @ 2022-07-31 23:08 半条咸鱼 编辑
摘要:提升数据库并发能力 1、一般应用对数据库都是读多写少,即对数据库读取数据的压力比较大 2、考虑次序 (1)优化 SQL 和索引,简单有效 (2)采用缓存 ,如使用 Redis 将热点数据保存在内存数据库中,提升读取的效率 (3)对数据库采用主从架构,进行读写分离 主从复制的作用 1、提高数据库的吞吐 阅读全文
posted @ 2022-07-30 22:32 半条咸鱼 编辑
摘要:日志类型 1、MySQL 有不同类型的日志文件,用来存储不同类型的日志,分为二进制日志、错误日志、通用查询日志、慢查询日志 (1)慢查询日志:记录所有执行时间超过 long_query_time 所有查询,方便对查询进行优化 (2)通用查询日志:记录所有连接的起始时间和终止时间,以及连接发送给数据库 阅读全文
posted @ 2022-07-29 23:23 半条咸鱼 编辑
摘要:MVCC 1、多版本并发控制:Multiversion Concurrency Control 2、MVCC 通过数据行的多个版本管理,实现数据库的并发控制 3、使得在 InnoDB 事务隔离级别下,保证执行一致性读操作,即为了查询一些正在被另一个事务更新的行,并且可以看到它们被更新之前的值,查询时 阅读全文
posted @ 2022-07-29 02:39 半条咸鱼 编辑
摘要:MySQL 并发事务访问相同记录的情况 1、读-读 (1)并发事务相继读取相同的记录 (2)读取操作本身不会对记录有任何影响,不会引起问题,所以允许这种情况发生 2、写-写 (1)并发事务相继改动相同的记录 (2)发生脏写问题,任何一种隔离级别都不允许这种问题的发生 (3)所以在多个未提交事务相继对 阅读全文
posted @ 2022-07-29 00:26 半条咸鱼 编辑
摘要:事务特性实现机制 1、隔离性由锁机制实现 2、原子性、一致性、持久性由事务的 redo 日志、undo 日志来保证 (1)REDO LOG:重做日志,提供再写入操作,恢复提交事务修改的页操作,用来保证事务的持久性 (2)UNDO LOG:回滚日志,回滚行记录到某个特定版本,用来保证事务的原子性、一致 阅读全文
posted @ 2022-07-28 01:01 半条咸鱼 编辑
摘要:存储引擎支持情况 1、查看当前 MySQL 支持事务的存储引擎 SHOW ENGINES; 2、MySQL 中只有 InnoDB 支持事务管理 事务 1、一组逻辑操作单元,使数据从一种状态变换到另一种状态 2、事务处理的原则 (1)保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种 阅读全文
posted @ 2022-07-27 02:51 半条咸鱼 编辑
摘要:定位调优方式 1、用户反馈(主要) 2、日志分析(主要):查看数据库日志和操作系统日志等 3、监控服务器资源:CPU、内存、I/O 等使用情况,实时了解服务器的性能使用,与历史情况进行对比 4、监控数据库内部状况:在数据库的监控中,活动会话(Active Session)监控是一个重要的指标,了解数 阅读全文
posted @ 2022-07-26 23:09 半条咸鱼 编辑
摘要:数据库调优 1、优化方面 (1)物理查询优化:通过索引、表连接方式等优化 (2)逻辑查询优化:通过 SQL 等价变换,提升查询效率 2、例 (1)索引失效、没有充分利用到索引:索引建立 (2)关联查询太多 JOIN:SQL优化 (3)服务器调优及各个参数设置(缓冲、线程数等):调整 my.cnf ( 阅读全文
posted @ 2022-07-25 21:23 半条咸鱼 编辑
摘要:数据库服务器的优化步骤 1、整个流程划分:观察(Show status)、行动(Action) (1)字母 S 代表观察,会使用相应的分析工具 (2)字母 A 代表行动,对应分析可以采取的行动 2、S1 步骤,需要观察服务器的状态是否存在周期性的波动 (1)如果存在周期性波动,有可能是周期性节点的原 阅读全文
posted @ 2022-07-24 00:33 半条咸鱼 编辑
摘要:索引分类 1、按照功能逻辑:普通索引、唯一索引、主键索引、全文索引 2、按照物理实现方式:聚簇索引、非聚簇索引 3、按照作用字段个数:单列索引、联合索引 4、总共 7 种 (1)普通索引 (2)唯一性索引 (3)主键索引 (4)单列索引 (5)多列(组合、联合)索引 (6)全文索引 (7)空间索引 阅读全文
posted @ 2022-07-22 21:29 半条咸鱼 编辑
摘要:页 1、单位 (1)磁盘与内存交互基本单位 (2)数据库管理存储空间的基本单位 (3)数据库 I/O 操作的最小单位 2、索引信息以及数据记录都存储在页结构中 3、页结构概述 (1)页可以不在物理结构上相连,只要通过双向链表相关联即可 (2)每个数据页中的记录,按照主键值从小到大的顺序,组成一个单向 阅读全文
posted @ 2022-07-22 16:21 半条咸鱼 编辑
摘要:概述 1、MySQL 对索引定义:索引(Index)是帮助 MySQL 高效获取数据的数据结构 2、本质:数据结构 (1)排好序的快速查找数据结构,满足特定查找算法 (2)这些数据结构以某种方式指向数据, 这样就可以在这些数据结构的基础上实现高级查找算法 3、优点 (1)提高数据检索的效率,降低数据 阅读全文
posted @ 2022-07-21 21:48 半条咸鱼 编辑
摘要:查看 MySQL 提供的存储引擎 SHOW ENGINES; 1、MysQL 8 支持 9 种存储引擎:MEMORY、MRG_MYISAM、CSV、FEDERATED 、PERFORMANCE_SCHEMA、MyISAM、InnoDB、BLACKHOLE、ARCHIVE 2、参数 (1)Engine 阅读全文
posted @ 2022-07-20 22:15 半条咸鱼 编辑
摘要:Connectors 1、指不同语言中与 SQL 交互 2、因为 MySQL 是一个网络程序,在 TCP 上定义自己的应用层协议,所以要使用 MySQL,可以编写代码,跟 MySQL Server 建立 TCP 连接,按照其协议进行交互 3、或调用 SDK,比如 Native API、JDBC、PH 阅读全文
posted @ 2022-07-20 17:43 半条咸鱼 编辑
摘要:启动 MySQL 服务后,通过 mysql 命令来登录 MySQL 服务器 mysql –h hostname|hostIP –P port –u username –p DatabaseName –e "SQL语句"; 1、-h:hostname 为主机,hostIP 为主机 IP 2、-P:后面 阅读全文
posted @ 2022-07-20 00:25 半条咸鱼 编辑
摘要:查看 MySQL 8 目录结构 find / -name mysql 1、MySQL 数据库文件的存放路径:/var/lib/mysql/ (1)查看 SHOW variables LIKE 'datadir'; 2、相关命令目录:/usr/bin(mysqladmin、mysqlbinlog、my 阅读全文
posted @ 2022-07-19 12:00 半条咸鱼 编辑
摘要:卸载 MySQL 1、检查 mysql service systemctl status mysqld.service 2、关闭 mysql 服务 systemctl stop mysqld.service 3、查看当前 mysql 安装状况 (1)方式一 rpm -qa | grep -i mys 阅读全文
posted @ 2022-07-19 10:59 半条咸鱼 编辑
摘要:新增特性 1、更简便的 NoSQL 支持 (1)NoSQL 泛指非关系型数据库和数据存储 (2)MySQL 5.6 版本开始,支持简单的 NoSQL 存储功能 (3)MySQL 8 优化,以更灵活方式实现 NoSQL 功能,不再依赖模式(schema) 2、更好的索引 (1)在查询中,正确地使用索引 阅读全文
posted @ 2022-07-17 15:50 半条咸鱼 编辑
摘要:概述 1、MySQL 从 5.0.2 版本开始支持触发器 2、MySQL 触发器和存储过程一样,都是嵌入到 MySQL 服务器的一段程序 3、触发器是由事件来触发某个操作,事件包括 INSERT 、 UPDATE 、 DELETE 事件 4、当对数据表中的数据执行插入、更新和删除操作,需要自动执行一 阅读全文
posted @ 2022-07-16 20:13 半条咸鱼 编辑

点击右上角即可分享
微信分享提示