1、数据库优化概念
2、数据库设计-选择合适的字段、索引。
3、性能监控-Mysql基准测试、服务器性能剖析。
4、高级特性-查询缓存、合并表、分区表。
5、数据库优化步骤(awk、ab)
6、索引优化
7、sql 优化(那些sql 导致全表扫表)
8、服务器性能调优:恰当的硬件资源和操作系统、数据库参数配置。
9、Mysql主从集群配置、企业高可用架构
1、我们可以优化什么?
内存、I/O、CPU、网络带宽、mysql进程状态、mysql 服务器周期变化。
2、优化步骤
数据表的设计 =》 sql语句优化(增删改查) =》 数据参数配置 =》 硬件资源优化
3、发现问题
ps -aux // 查看所有的进程
kill -9 pid // 终止进程
ps -ef // 查看进程环境变量信息
top // 分析 cpu、内存、程序的执行时间
df -h // 磁盘使用情况
vmstat linux // 性能指标、进程、内存、交互区(swap-磁盘到内存、内存到磁盘)、I/O、cpu 情况
mytop: 监控工具 (编译安装、yum)
sysstat: 检测系统性能 (QPS 、吞吐量)
Ab : 压力测试工具
nagios: 监控主机、网络、服务
Awk: 分析工具
show status // 查看mysql 状态
Threads_cached mysql 线程的缓存的数量
Threads_connected mysql 线程已经连接的数量
Threads_created mysql 已经创建的线程
Threads_running MySQL 线程执行的数量
querie
show processlist