大纲

DBA最应该做的事情

新项目开发环境应该注意什么

功能测试和压力测试MySQL DBA关注点

线上环境关注点

业务在大压力情况下,MySQL如何能活下来

DBA最应该做的事情

备份

建议每天全备

每天把Binlog也要进行备份

理想的目标:可以把数据还原到任意时间点(近2周的能力)

监控

了解环境的情况

环境可控

了解数据增长及和环比情况

新项目开发环境应该注意什么

long_query_time=1->0

了解核心业务SQL,提出读写分离和缓存指导建议

功能测试,性能测试中注意校对

备份开发环境(每天一备),放在其他机器上,最好也要有从库

核心SQL优化,Schema调整尽量在这个阶段完成

特别提示:

新技术也可以在这个测试环境测试一下

开发环境常见问题

开发把数据误操作干掉

开发服务器机器故障

并发连接太多,DB响应太慢

功能测试和压力测试MySQL DBA关注点

功能测试环境(保稳)

保障环境正常,基本DBA不在调整该环境的东西

数据库新版本验证(也可以放到这个环节)

数据库权限尽量保持和线上一样的要求(严格控制)

重视该环境的性能问题

功能环境可能遇到的问题

1.索引不合理

2.功能不完善,调整表结构

3.存储过程,定时任务缺失

4.主从故障

性能环境(测极限)

一般基于LR测试

数据初始化(备份)

获取SQL执行频度,优化,读写分离相关工作进一步校验

产出:

基于业务的性能评估(性能测试人员)

数据库的性能情况(DBA)

压测环境可能遇到的问题

1.数据库压挂

2.IO不行

3.buffer pool太小

4.索引不合理

5.慢查询较多

6.优化SQL

线上环境关注点

1.DML操作量 & 事务队列

2.数据增长量

每张表每天增长多少行

每周增加的大小

3.每天binlog形成量,高峰期binlog切换速度

4.每天慢日志情况,错误日志情况

5.每天备份(数据,binlog)

6.高可用架构

线上问题

1.更改表结构

2.迁移

3.性能问题(异常)

4.SQL优化

5.数据一致性校验

6.高可用切换

高性能环境MySQL如何活下来

1.高可用切换后,新节点直接挂掉

从节点负载超过50%

从节点buffer pool没缓存数据

2.连接数较高,出现thread_running过高,数据库挂掉

过载保载

引入thread_pool

3.单表出现热点

读写拆分(认证)

4.update tb set c1 = c1 + 1 where id = xxx; 高并发搞挂数据库

内存中合并更新

MySQL新项目如何确保上线安全的更多相关文章

  1. “快的打车”创始人陈伟星的新项目招人啦,高薪急招Java服务端/Android/Ios 客户端研发工程师/ mysql DBA/ app市场推广专家,欢迎大家加入我们的团队! - V2EX

    "快的打车"创始人陈伟星的新项目招人啦,高薪急招Java服务端/Android/Ios 客户端研发工程师/ mysql DBA/ app市场推广专家,欢迎大家加入我们的团队! - ...

  2. 准备在新项目中使用pgsql【资源收集】

    pgsql大象数据库 是我最近在关注的一款开源数据库,可以自由修改,没那么多限制,准备在新项目中使用 postgresql中国下载站 http://www.postgres.cn/download#s ...

  3. 从零开始搭建vue移动端项目到上线的步骤

    初始化项目 1.在安装了node.js的前提下,使用以下命令 npm install --g vue-cli 2.在将要构建项目的目录下 vue init webpack myproject(项目目录 ...

  4. Django 创建新项目后要完成的几个步骤

    首先,在过一遍创建新项目的步骤: -创建一个新项目 -建了数据库后要确定自己是用 mysql数据库  还是用 sqlite3数据库 -如果是mysql数据库,那一堆配置 -如果是sqlite3数据库, ...

  5. java项目代码上线

    java项目代码上线   1:java项目代码上线架构图 ip地址及主机名规划 10.0.0.11 deploy 10.0.0.12 tomcat-web01 10.0.0.13 git.oldboy ...

  6. Android新项目GBSS:第1篇 搭建开发环境

    最近接手一个Android新项目,之前也没做过这方面的开发,算是边学边干,这两天看了一下Android开发的书,大致入门了一点,今天把所需要的软件都下了下来,准备开工,先列一下开发环境: 所有的软件都 ...

  7. 自动化生成 Openstack 新项目开发框架

    目录 目录 前言 环境 openstack-project-generator 前言 Openstack Developer 应该都知道, 开发一个 Openstack 的新项目并不是一个从 0 到 ...

  8. 为更强大而生的开源关系型数据库来了!阿里云RDS for MySQL 8.0 正式上线!

    2019年5月29日15时,阿里云RDS for MySQL 8.0正式上线,使得阿里云成为紧跟社区步伐,发布MySQL最新版本的云厂商.RDS for MySQL 8.0 产品是阿里云推出的 MyS ...

  9. NGK Global莫斯科路演:关注内存暴涨和Defi新项目-Baccarat

    此次路演由莫斯科演讲师Andrew首先致辞.首先安德鲁回顾了NGK近些年发展的整体情况,表示,NGK技术团队一直在认真的做事并将更加注重技术方案的改进,为行业提供更好的技术解决方案是NGK的愿景,NG ...

随机推荐

  1. 修改docker默认存储路径

    默认情况下,docker镜像的默认存储路径是/var/lib/docker,这相当于直接挂载系统目录下,而一般在搭系统时,这个区都不会太大,所以如果长期使用docker开发应用,就需要把默认的路径更改 ...

  2. Open vSwitch系列实验(三):Open vSwitch的VxLAN隧道网络实验

    1 实验目的 该实验通过Open vSwitch构建Overlay的VxLAN网络,更直观的展现VxLAN的优势.在实验过程中,可以了解如何建立VxLAN隧道并进行配置,并实现相同网段和不同网段之间的 ...

  3. 自定义alert弹框,title不显示域名(重写alert)

    问题: 系统默认的alert弹框的title会默认显示网页域名 解决办法: (修改弹框样式) (function() { window.alert = function(name) { $(" ...

  4. win10: windows+E 改回打开我的电脑

    之前习惯使用windows+E来打开我的电脑,用了win10之后按windows+E打开的却是“快速访问”文件夹,很不习惯,可用下列办法改回: 1.打开“查看”选项卡,选择”选项“按钮. 2.在“常规 ...

  5. SpringMVC:HandlerInterceptor log 日志

    springMVC:HandlerInterceptor拦截器添加系统日志(权限校验)代码收藏 - LinkcOne - CSDN博客https://blog.csdn.net/qq_22815337 ...

  6. [转]JVM调优总结 -Xms -Xmx -Xmn -Xss

    Xms 是指设定程序启动时占用内存大小.一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时间变慢. Xmx 是指设定程序运行期间最大可占用的内存大小.如果程序运行需要占用更多的内存,超出了这 ...

  7. ubuntu上保存防火墙规则

    与CentOS不同,ubuntu的iptables规则不是写在系统文件/etc/sysconfig/iptables 中的(至少1204 1404不是这样的) 保存: ubuntu的iptables建 ...

  8. git commit之后,撤销 commit

    写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办? 可以执行如下命令 ...

  9. 零基础学Python-第一章 :Python介绍和安装-03.Python的安装

    官方版本的python下载以及安装方法,以及pycharm的安装和打开. 社区版就可以完全支持我们的需求了. 点击左侧的图片到右边. 在命令行输入python3 exit() 退出命令行的编辑器. p ...

  10. ES6深入浅出-13 Proxy 与 Reflect-2.Proxy 代理

    阮一峰http://es6.ruanyifeng.com/#docs/proxy MDN https://developer.mozilla.org/zh-CN/docs/Web/JavaScript ...