一、数据库运维管理思想核心

1.未雨绸缪,不要停留在制度上,而是要实际做出来

2.亡羊补牢,举一反三,不要好了伤疤忘了疼

3.完善的框架设计及备份、恢复策略

4.定期思考,并实战模拟以上策略演练

二.策略优化

个人感觉不仅仅是数据库,所有的系统层面的都可以通过以下方式进行考虑。

mysql数据库优化

      硬件优化:优化的是物理机,不是虚拟机,因为数据库是IO密集型的
                     cpu 大公司一台机器8-16颗64位cpu
                     mem 大公司96G-128G  3-4个实例
                     disk  数量越多越好,性能:ssd(高并发 )>sas(普通业务线上)>sata(线下)
                     raid  4块盘 性能:RAID0>RAID10>RAID5>RAID1
                     网卡:多块网卡bond,以及buffer、tcp等的优化。
      软件优化:操作系统:x86_64系统, 软件:mysql编译优化
      my.cnf 的参数的优化:
                     注意:my.cnf里面优化的幅度很小,大部分在sql语句和架构优化
       监控:生产参数是一般情况下参数
      命令监控:show global  status\G;工具:mysqlreport性能调优工具, 自动帮忙分析设置的参数合理不合理
      sql语句的优化
     a.索引的优化
        1) 白名单机制
               首先要抓慢sql,配置my.cnf
               long_query_time=2
               long-slow-queries/data/3306/slow-log.log
               按天轮询:slow-log.log
      2)   慢查询日志分析工具---mysqlsla
      3)   每天晚上0点定时分析慢查询,发到核心开发、DBA分析,及高级运维,cto的邮箱里.
               DBA分析给出建议--》核心开发处理---》DBA线上处理
     b.sql语句的拆分,比如:JOIN连接表
     c.数据库是存储数据的地方,但是不是计算数据的地方。
     d.搜索功能,like '%老男孩%',一般不要用mysql数据库
   架构的优化
         1)业务拆分:搜索功能,like '%老男孩%',一般不要用mysql数据库
         2)数据库前端必须要加cache:例如:memcached
             用户登录,商品查询
        3)业务拆分:某些业务应用使用nosql持久化存储:memachecedb,redis等
             好友关系,粉丝关注等等
       4)动态的数据静态化。真个文件静态化,页面片段静态化。
       5)   数据库集群与读写分离,一主多从,通过程序或者dbproxy进行读写分离
       6)单表超过2000完。拆库拆表
   流程,制度,安全优化
     任何一次人为数据库记录的更新,都要走一个流程:
     a.人的流程:开发--》核心开发--》运维或者DBA
     b.测试流程:内网测试--》IDC测试--》线上执行
     c.客户端管理:phpmy
 

十三、linux-mysql的mysql的核心优化思想的更多相关文章

  1. MySQL 第九天(核心优化三)

    一.昨天内容回顾 索引设计依据 与数据表有关系的sql语句都统计出来 where order by or等等条件的字段适当做索引 原则: 频率高的sql语句 执行时间长的sql语句 业务逻辑重要的sq ...

  2. Mysql DBA 运维 MySQL数据库索引优化及数据丢失案例 MySQL备份-增量备份及数据恢复基础实战 MySQL数据库生产场景核心优化

    需要的联系我,QQ:1844912514

  3. redmine在linux上的mysql性能优化方法与问题排查方案

    iredmine的linux服务器mysql性能优化方法与问题排查方案     问题定位:   客户端工具: 1. 浏览器inspect-tool的network timing工具分析   2. 浏览 ...

  4. MySQL 第七天(核心优化一)

    一.Mysql核心优化 1. 优化的方面 ① 存储层:数据表"存储引擎"选取.字段选取.逆范式(3范式) ② 设计层:索引.分区/分表 ③ 架构层:分布式部署(主从模式/共享) ④ ...

  5. [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    from:  http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...

  6. Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    原文:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j ...

  7. Linux中MySQL配置文件my.cnf参数优化

    MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的.MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的 ...

  8. Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置(转)

    原文地址:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建 ...

  9. (转)MySQL配置文件mysql.ini参数详解、MySQL性能优化

    本文转自:http://www.cr173.com/html/18331_1.html my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数 ...

随机推荐

  1. centos 通过命令查找已安装的部署包名称

    场景: 服务器上已经安装了sz命令,但是我们想知道他是哪个包安装的. 步骤一: [root@localhost home]# whereis sz sz: /usr/bin/sz /usr/share ...

  2. mysql第四篇:数据操作之单表查询

    单表查询 一.简单查询 -- 创建表 DROP TABLE IF EXISTS `person`; CREATE TABLE `person` ( `id` ) NOT NULL AUTO_INCRE ...

  3. 201771010123汪慧和《面向对象程序设计Java》第十三周实验总结

     一.理论部分 1.GUI为用户提供交互式的图形化操作界面. (1)提供了程序的外观和感觉.(2)程序利用图形用户界面接受用户的输入,向用户输出程序运行的结果. 2.Java有专门的类库生成各种标准图 ...

  4. Vue 指令 v-text v-html

    有三个指令达到的效果是一样的 {{JS表达式}}  差值表达式 v-text="JS表达式" v-html="JS表达式"   //会自动解析tag js表达式 ...

  5. python3+Opencv 搭建环境和基本操作

    一.必备前提: Python3.5及以上版本.pip.windows环境 二.搭建opencv 该部分可以创建隔绝的Python环境来引入,参照virtualenv的使用 在目标的cmd窗口,依次输入 ...

  6. 抓DHCP客户端ip脚本

    cat testnew.sh #!/bin/bash catch_ip (){Ip=`sudo nmap -sP 192.168.1.0/24 |grep -i -B2 $mac|grep Nmap ...

  7. A4纸表格打印

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. 十六、matplotlib统计图

    '''Matplotlib 是一个Python的 2D绘图库.通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等.通过学习Matplotli ...

  9. WordPress迁移服务器后报Nginx404的问题

    Wordpress迁移服务器后,只有主页能打开,其它页面都显示404 页面无法访问. 出现这个问题是因为我的Wordpress之前用的服务器是apache+PHP组合,换了服务器后变成了Nginx+P ...

  10. Swagger注解及参数细节的正确书写。

    今天新开了一个api文件,结果怎么搞也在swagger里显示不出来,浪费半天后,去问老员工了. 一般有俩原因, 1.idea缓存,重启idea即可. 2.注解和参数上的修饰有问题,或者请求method ...