性能测试之数据库

数据库架构合理性:
1.一主多从,读写分离,有可能数据不一致
2.双机备份(keepAlive)

主从同步原理:
1.master蒋改变记录到二进制日志文件中
2.slave蒋maste的binary log events拷贝到他的中继日志(relay log)
3.slave重做中继日志中的事件,将改变反映他自己的数据

数据库拆分:水平,垂直,业务


数据库性能指标:

1.qps(show global status like ‘Question%’)
2.tps=(Com_commit+Com_rollback)/运行时间(show global status like ‘Com_commit’,show global status like “Com_rollback”)

3.线程连接数:查看最大线程数: show global status like “Max_used_connections”
                          查看连接线程数:show global status like "Threads%"

4.Query Cache(查询缓存用于缓存select查询结果)
启动缓存:
  1.修改my.cnf
  2.将query_cache_size设置具体大小,具体大小是多少取决于查询的实际情况,
  但最好设1024的倍数,参考32M
  3.增加一行:query_cache_type=0/1 /2
  如果设置为1,将会缓存所有的结果,除非你的select语句使用SQL_NO_CACHE禁用了查询缓存
  如果设置为2,则只缓存在select语句中通过SQL_CACHE指定需要的缓存查询

5.查看缓存命中率:show status like ‘Qcache%’


6.查看锁定状态:show global status like '%lock';

          Table_locks_waited/Table_locks_immediate值越大代表表锁造成
          的阻塞越严

      Innodb_row_lock_waits innodb行锁,太大肯是间隙时间造成


7.查看主从延时:show slave status


8.Mysql慢查询开启:1.编辑/etc/my.cnf,在mysqld域总添加
                                 2.开启慢查询:slow_query_log=1
                               3.慢查询日志路径:slow_query_log_file=/
                               4.慢查询时长:long_query_time=1
                                5.未使用索引的查询:log_queries_not_using_indexes=1

慢查询日志分析:使用mysqldumpslow

mysqldumpslow -s 按照何种方式排序
                               c:访问计数多
                               l:锁定时间多
                               r:返回记录多
                               t:查询时间多
                               all:平均锁定时间
                               ar:平均返回记录数
              -t 返回前多少条
              -g  后边可以写一个正则匹配

eg:
按照时间排序返回前10条含有左连接的查询语句
mysqldumpslow -s t -t 10 -g "left join" slow.log


explain查询(type关键字:system,const,eq_ref,index_merge,index,ALL)


全文索引优先级高
1.使用短索引
2.数据类

存储引擎:
MYISAN:1.读的性能比InnoDb高,索引和数据分开,使用压缩,从而提高了内存使用瑞
         2.不支持事务,写入数据直接锁表(只有全表锁)
InnoDB:1.支持事务,支持外键,支持行级锁
        2.不支持fulltext索引,行级锁并不绝对,当不确定扫描范围,锁全表
         索引和数据是紧密捆绑,没有使用压缩导致体积庞大

数据库监控:orzdba,天兔LEPUS

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值