小编给大家分享一下SQL调优怎么生成海量测试数据,相信大部分人都还不怎么了解,因此分享这篇文章给大免费主机域名家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!场景,如果出现慢SQL,需要DBA加索引优化,怎么知道加的索引是有效的呢?这需要一遍遍的试验和调整,总不能直接拿线上的数据库测试吧,一般方法是在测试环境建立测试表,然后从线上的从库拷贝一些数据进测试环境,接着再进行加索引和explain但有时候,导出的数据量少,执行计划看不出效果,导出数据量多,又会冲刷线上机器的buffer pool和影响IO,如果有个工具能够直接生成数据就好了,生成跟线上一样的100万,或者1000万就好了以前sysbench压力测试,有一个生成数据的功能,免费主机域名生成100万数据是这样的但它生成表结构是固定的,进行压力测试的SQL语句也是固定的,无法调试线上的SQL语句能否有一个创建用户自定义的表结构,并且对这个表结构生成上百千万数据的工具呢?有一个叫datagen的工具,链接在文章末尾
方法很简单的2步,把你想要的表结构和想要生成多少条数据,写入到example.schema文件,比如这样,如果想要生成100万条数据,在表末尾加入注释/*{RC{1000000}}*/第2步,填写连接测试数据库的账号密码,只需要加入一行接着运行shell脚本,往测试库建表,插入数据
[root@localhost datagen]# /bin/bash datagen.sh在测试库,就会出现100万条数据了现在就可以加索引,explain线上真实的SQL语句了加索引再来一次explain,扫描50万行变2行
等调试好索引以后,确定能优化SQL以后,再往线上环境去加索引当然还有一些很强大的功能比如某个字段,只出现规定的几个值,比如状态status字段0,1,2,以及每个状态出现的概率比如模拟线上的用户UID,可以限制某个字段随机数的范围,从00000001到899999999之间等以上是“SQL调优怎么生成海量测试数据”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注云技术行业资讯频道!
本篇内容主要讲解“Oracle常用性能分析语句有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle常用性能分析语句有哪些”吧!1、查看数据库中过去15分钟内排在前5位的等待事件及其总等待时间2、查看过去…