免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 小版主杀手
打印 上一主题 下一主题

[讨论]mysql数据库存储、备份、恢复你知道多少--亲 你懂的(获奖名单已公布) [复制链接]

论坛徽章:
0
1 [报告]
发表于 2012-04-01 11:14 |显示全部楼层
来支持一下先,请目前线上有高并发、大数据量的前辈晒晒经验。让我们这些小辈也学习一下。

论坛徽章:
0
2 [报告]
发表于 2012-04-01 11:38 |显示全部楼层
关于大数据量表的管理,单表上亿的数据,大家有没有什么好的解决办法。
目前我们这边是对那个表基于业务逻辑做增量备份,主从同步备份,定期开启(避免误操作),数据基本上是增长,很少更改,采用分区进行存储,innodb引擎。但是数据有问题的话经常需要修复。修复进本上是采用perl脚本来进行。另外还有对大表以前以前的旧数据采用归档后删除的方式,也是通过perl脚本实现。当中设计到大表删除大数据的技巧,这边采用的是根据业务逻辑(时间),分时间段、分不同用户数据等措施来删除保证不会造成表长时间锁定。
另外还有一个问题就是关于删除数据后如何释放innodb表空间的问题,各位高手有和好的解决办法。
目前由于线上的数据有根据时间存储的特点,因此直接采用新建表,然后通过perl脚本批量迁移旧表的数据到新表,迁移完成后将旧表重命名,新表重命名成旧表,再将旧表的最近的数据做一次迁移的方式,保证数据不丢失。
网上也看到有网友说创建新表后,采用出发器,保证迁移的时候数据能正常的更新到新表,不知道有没有哪为大牛在线上采用过。

论坛徽章:
0
3 [报告]
发表于 2012-04-01 11:48 |显示全部楼层
回复 9# 小版主杀手


    我也想知道,我们这边采用raid 10,磁盘存储。

论坛徽章:
0
4 [报告]
发表于 2012-04-01 12:08 |显示全部楼层
回复 20# donniechen


非常赞同,做操作的时候要多思考,自己做的操作会对数据产生什么影响。做那些更改表结构的一些操作,应该从表的数据量、对线上的影响的等各个方面做权衡。
做涉及到数据变更的一定要做备份,多做备份总会是好事情。

论坛徽章:
0
5 [报告]
发表于 2012-04-02 22:30 |显示全部楼层
回复 32# chinaunix_sos


    目前还没遇到过类似问题。怀疑是不是执行SQL的时候加了local或者NO_WRITE_TO_BINLOG或者SQL_LOG_BIN = 0的参数?

论坛徽章:
0
6 [报告]
发表于 2012-04-05 11:42 |显示全部楼层
回复 42# donniechen


    他们连最基本的资源监控都没有啊,呵呵!一定要建立监控体系,nagios是比较好的监控工具。再配合cacti比较完美。

论坛徽章:
0
7 [报告]
发表于 2012-04-05 11:52 |显示全部楼层
关于日常管理mysql的经验
1、建立监控体系(nagios+cacti+scripts),每天查看服务器的一些基本信息(磁盘、网络流量、qps、io等等)
2、定期的查看慢查询日志,并进行优化(我这边是一个月分析一次)
3、对于历史数据定期的进行归档后删除,这个和公司的业务特点有关系(perl脚本)
4、对小数据库每天一次全备份、大库增量备份+主从(本地和异地备份),
5、操作数据库的时候,只要涉及到数据的更改都需要先进行备份,根据情况你选择是备份库还是备份单表
6、审核开发提供的SQL,对不符合设计规则的进行更改,比如主键的选择、列的数据类型的选择、注释等等
7、此外对自己不太确定的东西一定要弄个测试环境跑一下,平时多做实验、多看书,增强理论和实战经验。

评分

参与人数 2可用积分 +5 收起 理由
ruochen + 2 赞一个!
小版主杀手 + 3 赞一个!

查看全部评分

论坛徽章:
0
8 [报告]
发表于 2012-04-05 16:12 |显示全部楼层
回复 56# donniechen


   对的,补充得好!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP