文档章节

mysql设计规范之运维规范

落叶刀
 落叶刀
发布于 2016/06/06 10:07
字数 1813
阅读 99
收藏 1

运维管理 – 运维规范
硬件、系统、引擎、字符集选择
硬件
性能差不多,关键是可靠性
上线前烤机测试非常重要
监控预警可有效预防故障
避免使用外部阵列
最好是2U机型,并且配备RAID卡(with BBU)
系统
一般选择RHEL、CentOS
拒绝使用32位系统
不追新,稳定、高性能压倒一切
版本一致,批量部署,管理方便
硬件、系统、引擎、字符集选择
引擎
默认使用InnoDB
可考虑MyISAM/InfiniDB/Infobright
Blackhole可用于复制中继
字符集
默认使用latin1
减少使用utf8
避免CJK问题
mysqldump字符集参数
连接串设置

安装配置
所有磁盘组建大阵列,不降低IOPS
默认阵列级别为:raid 1+0
结合业务特征设置主机名,唯一命名
合理利用hosts/dns,可用于应用授权管理
master和slave命名区分开
/tmp使用/dev/shm & tmpfs
swap至少是16G
部署基本工具包:sysstat、oprofile等

监控预警
重点:先可用性而后才是性能
选择自己熟悉的:nagios、zabbix、cacti
作为补充,需要增加辅助监控
数据安全
关闭公网,只留私网
密码足够长度、复杂度
开启iptables策略
只开放必要的授权许可
使用普通账号管理mysqld(结合sudo)
集成定期安全检查到监控系统中

备份恢复
利用slave执行备份
定期全备+及时增备
不定期随机做恢复测试
二进制内容备份使用 --hex-blob
备份方式:mysqldump VS XtraBackup
如何快速备份/恢复?(并发?快照?)

高可用
Keepalived + LVS
Heartbeat + LVS
Master + Slave
多Master共享存储
故障处理
复制报错:主键冲突
硬件、系统崩溃:数据页损坏
误操作:数据误删除
硬件故障:阵列卡(掉线、IO性能下降)、CPU、内存

运维管理 – 工具集

Percona、其他工具
Xtrabackup
ioprofile
pt-online-schema-change
pt-table-checksum
pt-query-digest
mysqldumpslow
mysqlsla

运维管理 – FAQ
数据库安装完后,无法启动
首先,看日志
一般因为权限不正确、未初始化、配置选项不正确
如何进行基准、压力测试
基准测试:tpcc、sysbench
压力测试:mysqlslap、前端加压
如何在线动态抓取SQL
tcpdump -i eth0 -s 0 -l -w - dst port 3306|strings
如何执行在线热备
mysqldump --single-transaction或Xtrabackup
运维管理 – 运维规范
硬件、系统、引擎、字符集选择
硬件
性能差不多,关键是可靠性
上线前烤机测试非常重要
监控预警可有效预防故障
避免使用外部阵列
最好是2U机型,并且配备RAID卡(with BBU)
系统
一般选择RHEL、CentOS
拒绝使用32位系统
不追新,稳定、高性能压倒一切
版本一致,批量部署,管理方便
硬件、系统、引擎、字符集选择
引擎
默认使用InnoDB
可考虑MyISAM/InfiniDB/Infobright
Blackhole可用于复制中继
字符集
默认使用latin1
减少使用utf8
避免CJK问题
mysqldump字符集参数
连接串设置

安装配置
所有磁盘组建大阵列,不降低IOPS
默认阵列级别为:raid 1+0
结合业务特征设置主机名,唯一命名
合理利用hosts/dns,可用于应用授权管理
master和slave命名区分开
/tmp使用/dev/shm & tmpfs
swap至少是16G
部署基本工具包:sysstat、oprofile等

监控预警
重点:先可用性而后才是性能
选择自己熟悉的:nagios、zabbix、cacti
作为补充,需要增加辅助监控
数据安全
关闭公网,只留私网
密码足够长度、复杂度
开启iptables策略
只开放必要的授权许可
使用普通账号管理mysqld(结合sudo)
集成定期安全检查到监控系统中

备份恢复
利用slave执行备份
定期全备+及时增备
不定期随机做恢复测试
二进制内容备份使用 --hex-blob
备份方式:mysqldump VS XtraBackup
如何快速备份/恢复?(并发?快照?)

高可用
Keepalived + LVS
Heartbeat + LVS
Master + Slave
多Master共享存储
故障处理
复制报错:主键冲突
硬件、系统崩溃:数据页损坏
误操作:数据误删除
硬件故障:阵列卡(掉线、IO性能下降)、CPU、内存

运维管理 – 工具集

Percona、其他工具
Xtrabackup
ioprofile
pt-online-schema-change
pt-table-checksum
pt-query-digest
mysqldumpslow
mysqlsla

运维管理 – FAQ
数据库安装完后,无法启动
首先,看日志
一般因为权限不正确、未初始化、配置选项不正确
如何进行基准、压力测试
基准测试:tpcc、sysbench
压力测试:mysqlslap、前端加压
如何在线动态抓取SQL
tcpdump -i eth0 -s 0 -l -w - dst port 3306|strings
如何执行在线热备
mysqldump --single-transaction或Xtrabackup
运维管理 – 运维规范
硬件、系统、引擎、字符集选择
硬件
性能差不多,关键是可靠性
上线前烤机测试非常重要
监控预警可有效预防故障
避免使用外部阵列
最好是2U机型,并且配备RAID卡(with BBU)
系统
一般选择RHEL、CentOS
拒绝使用32位系统
不追新,稳定、高性能压倒一切
版本一致,批量部署,管理方便
硬件、系统、引擎、字符集选择
引擎
默认使用InnoDB
可考虑MyISAM/InfiniDB/Infobright
Blackhole可用于复制中继
字符集
默认使用latin1
减少使用utf8
避免CJK问题
mysqldump字符集参数
连接串设置

安装配置
所有磁盘组建大阵列,不降低IOPS
默认阵列级别为:raid 1+0
结合业务特征设置主机名,唯一命名
合理利用hosts/dns,可用于应用授权管理
master和slave命名区分开
/tmp使用/dev/shm & tmpfs
swap至少是16G
部署基本工具包:sysstat、oprofile等

监控预警
重点:先可用性而后才是性能
选择自己熟悉的:nagios、zabbix、cacti
作为补充,需要增加辅助监控
数据安全
关闭公网,只留私网
密码足够长度、复杂度
开启iptables策略
只开放必要的授权许可
使用普通账号管理mysqld(结合sudo)
集成定期安全检查到监控系统中

备份恢复
利用slave执行备份
定期全备+及时增备
不定期随机做恢复测试
二进制内容备份使用 --hex-blob
备份方式:mysqldump VS XtraBackup
如何快速备份/恢复?(并发?快照?)

高可用
Keepalived + LVS
Heartbeat + LVS
Master + Slave
多Master共享存储
故障处理
复制报错:主键冲突
硬件、系统崩溃:数据页损坏
误操作:数据误删除
硬件故障:阵列卡(掉线、IO性能下降)、CPU、内存

运维管理 – 工具集

Percona、其他工具
Xtrabackup
ioprofile
pt-online-schema-change
pt-table-checksum
pt-query-digest
mysqldumpslow
mysqlsla

运维管理 – FAQ
数据库安装完后,无法启动
首先,看日志
一般因为权限不正确、未初始化、配置选项不正确
如何进行基准、压力测试
基准测试:tpcc、sysbench
压力测试:mysqlslap、前端加压
如何在线动态抓取SQL
tcpdump -i eth0 -s 0 -l -w - dst port 3306|strings
如何执行在线热备
mysqldump --single-transaction或Xtrabackup
 

© 著作权归作者所有

共有 人打赏支持
落叶刀
粉丝 39
博文 125
码字总数 107201
作品 2
浦东
运维
私信 提问
OSC 第 136 期高手问答 — MySQL 开发和运维规范

OSCHINA 本期高手问答(2016 年 12 月 6 日 — 12 月 13 日)我们请来了@叶金荣和@吴炳锡为大家解答 MySQL 开发和运维规范相关的问题。 叶金荣,知数堂培训联合创始人,Oracle MySQL ACE,A...

局长
2016/12/06
9.4K
53
Gdevops火爆收官!献上干货PPT以表谢意~

快马加鞭,万众期待的PPT开放下载! 11月24日,Gdevops全球敏捷运维峰会的2017年度收官之站在广州盛大举行,与场外阴冷天气形成强烈对比的是,会场内爆场的热度与盛情,而近20位大咖讲师带来...

DBAplus社群
2017/11/26
0
0
美图秀秀DBA谈MySQL运维及优化

随着MySQL应用的不断普及和自身发展,如何更好的优化MySQL和使用MySQL,依然是一个比较有挑战的问题,尤其是在业务快速增长的场景下。本次分享主要介绍一些通用的运维优化实践和问题,以及未...

杨尚刚
2015/12/31
0
0
XXMySQL数据库运维变更流程

MySQL数据库运维变更流程 草拟时间:2015.11.13 制订时间: 修订时间: 0x00 目的 规范MySQL数据库的运维人员变更流程,降低操作流程引发的安全隐患,减少人为的错误风险。 0x01.场景 1.业务...

双鱼座小龙
2016/01/12
0
0
老男孩做客网易云课堂:塑造高端Linux运维工程师秘籍

如果你想进入运维IT这个行业?不了解Linux运维工程师的前景与发展路线?不清楚Linux运维主要是对什么系统进行优化?那你还等什么? 来听听老男孩老师的直播课吧,带你秒懂Linux运维工程师岗位...

运维自动化
2017/10/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

1.二叉树

概念 二叉树(binary tree)是每个节点最多只有两个分支(即不存在分支度大于2的节点)的结构树。通常分支被称为“左子树”和“右子树”,左子树和右子树的位置不能随意颠倒。二叉树的第i层 ...

火拳-艾斯
6分钟前
0
0
java 线程

一、通过实现Runnable接口来创建线程 public class TestThread implements Runnable { public void run() { try { for (int i = 0; i < 10; i++) { ......

朝如青丝暮成雪
11分钟前
0
0
关于eclipse2017 import javax.servlet.jsp.tagext引入错误得问题

在eclipse中: 这个javax.servlet.jsp.tagext属于是tomcat相关jar包找到jsp-api.jar 在tomcat文件夹下边的lib文件夹中就有 如果项目中报错的话 把这个加入到项目中 在myeclipse中: 如下图,...

ZhangLG
25分钟前
1
0
如何用RSS订阅?

本文由云+社区发表 摘要:我们常常会有订阅别人文章的需求,有更新的时候希望能有提醒的功能,RSS就是这样一个订阅的方式。很多网站上看到RSS的入口,点进去以后总是显示一堆的XML代码,我们...

腾讯云加社区
26分钟前
2
0
springcloud整体架构

架构 说明 针对这个架构图我分层介绍一下: 1、是web服务器的选型,这个我选择的是nginx+keepalived,haproxy也是一个选择,但是haproxy在反向代理处理跨域访问的时候问题很多。所以我们ngi...

张欢19933
29分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部