当前位置:文档之家› 数据库运维管理基础知识

数据库运维管理基础知识


➢ 开源工具:xtrabackup 或 收费工具:InnoDB hot backup
10
目录
数据库版本选择 数据库监控体系 数据库备份恢复策略 大数据量DML操作的技巧 大表DDL变更注意事项和变更技巧 在线数据库迁移的技巧
11
大数据量DML操作的技巧
大数据量INSERT 大数据量UPDATE 大数据量DELETE
15
目录
数据库版本选择 数据库监控体系 数据库备份恢复策略 大数据量DML操作的技巧 大表DDL变更注意事项和变更技巧 在线数据库迁移的技巧
16
大表DDL变更注意事项和变更技巧
变更注意事项 表级别锁 InnoDB存储引擎的数据字典锁 DDL加速技巧
17
大表DDL变更注意事项和变更技巧
12
大数据量DML操作的技巧
大数据量INSERT
INSERT INTO … VALUES(),(),()….
LOAD DATA ….
写入临时表,再INSERT … SELECT …
13
大数据量DML操作的技巧
大数据量UPDATE
SELECT 唯一字段,变更字段 查询结果集写入临时表 给临时表创建组合索引 循环临时表的每条记录 依据临时表的唯一字段值,更新目标表的相关字段值
3
数据库版本选择
MySQL数据库版本种类
版本号小于 5.0:MySQL3.X MySQL4.X 等 MySQL5.0.X MySQL5.1.X+Build-in InnoDB存储引擎 MySQL5.1.X+Plug-in InnoDB存储引擎 MySQL5.5.X MySQL5.6.X MySQL Cluster 6.2.X 和 MySQL Cluster 6.3.X MySQL Cluster 7.0.X MySQL Cluster 7.1.X MySQL Cluster 7.2.X MySQL Cluster 7.3.X
MySQL数据库运维管理基础知识
金官丁 136 6166 8096 jinguanding@
2013 年 7 月
目录
数据库版本选择 数据库监控体系
数据库备份恢复策略
大数据量DML操作的技巧 DDL变更注意事项和变更技巧 在线数据库迁移的技巧
2
数据库版本选择
MySQL数据库分支
ALTER TABLE tmp_test ADD COLUMN age TINYINT UNSIGNED NOT NULL DEFAULT 0 FIRST;
这是我们强烈反对的行为,可能导致需要更多时间用于数据重整, 以及对复制可能造成数据错乱,应该写成:
ALTER TABLE tmp_test ADD COLUMN age TINYINT UNSIGNED NOT NULL DEFAULT 0;
变更注意事项
增加字段必须要有默认值 例如:
ALTER TABLE tmp_test ADD COLUMN gmt_CreateDate TIMESTAMP NOT NULL DEFAULT ‘0000-00-00 00:00:00’;
增加的字段不能指定字段顺序,必须默认尾部增加模式 例如:增加一个字段到表对象的头部
9
数据库备份恢复策略
数据故障恢复指标
➢ 业务中断少于10秒钟,则在线热备
➢ 业务中断少于5分钟,则在线延迟恢复热备
➢ 业务中断小于2小时,则完整备份+二进制日双主在线热备+延迟恢复备库
➢ 每天完整备份+每小时二进制日志备份
数据库备份恢复软件组合
➢ 开源工具:mysqldump
5
数据库版本选择
版本定型的过程
内部的功能测试,以用到的MySQL功能为测试基准
针对用到的MySQL功能做基准的压力测试
内部开发环境试用
内部产品的功能和性能测试环境试用
稳定性要求不高且压力较小的生产环境试用
稳定性要求高且压力中等的生产环境试用
生产环境正式试用
6
目录
数据库版本选择 数据库监控体系 数据库备份恢复策略 大数据量DML操作的技巧 大表DDL变更注意事项和变更技巧 在线数据库迁移的技巧
18
大表DDL变更注意事项和变更技巧
变更注意事项
建议表设计都设置为NOT NULL 且默认值 非NULL且有默认值的字段属性,有利于提高数据比对检索的性能,
更加有利于索引结构的优化 同一表增加多个字段,不分多条语句,而应只用一条变更语句 例如:
ALTER TABLE tmp_test ADD COLUMN age TINYINT UNSIGNED NOT NULL DEFAULT 0;
ALTER TABLE tmp_test ADD COLUMN gmt_CreateDate TIMESTAMP NOT NULL DEFAULT ‘0000-00-00’;
14
大数据量DML操作的技巧
大数据量DELETE
若是定期且特殊规则删除大批量的数据,则建议采用分区表 若是定期且无特殊规则删除大批量的数据,则分区表+UPDATE 若是上述2种方式无法使用,则可以主备轮流删除+数据服务切换 若是上述3种方式无法使用 ➢ 调整参数…,直接执行DELETE批量语句 ➢ 先查询出要删除数据的唯一标识写入临时表,然后游标循环删除
4
数据库版本选择
挑选版本的技巧
大版本发布,至少要大于或等于18个版本号 最新版本号倒退1-2个版本号 假设选择版本号为 MySQL5.5.31 ➢ 看版本号MySQL5.5.31修复的BUG数和新增功能 ➢ 看版本号MySQL5.5.32修复的BUG数 ➢ 看版本号MySQL5.5.30修复的BUG数
7
数据库监控体系
数据库服务是否正常 数据库的性能 数据库的逻辑IO和物理IO 数据库的业务量 数据库的数据与二进制日志的增长量 主机的CPU、IO、内存、网卡流量、数据增长 数据库的日志 主机系统的日志
8
目录
数据库版本选择 数据库监控体系 数据库备份恢复策略 大数据量DML操作的技巧 大表DDL变更注意事项和变更技巧 在线数据库迁移的技巧
相关主题