作为一名开发人员,生成大量数据,以便测试数据库的性能情况是非常必要的。
而且这些数据最好是有关联关系的,这样才符合实际情况,下面介绍几种有用的工具。
- sysbench, sysbench是跨平台的基准测试工具,支持多线程,支持多种数据库(OLTP基准测试),但是它只能生成单表,即使生成多个表,它们之间也是没有关联关系的,SQL JOIN等操作就没法测试了。
- Employees Sample Database,这个是mysql官方的样本数据;它的数数据量有400万,保存到6个表中,有关联关系,但是400万在现在动不动就大数据的情况下貌似有点少。
- mysql-tester,总共有4个表,包括用户表(individual_user),店铺表(shop),仓库表(warehouse),商品表(item),生成的数据量是可配置的,比如可以配置生成100万用户,5000万商品,并且这些数据之间是有关联关系的,一个用户拥有一个店铺,拥有多款商品。
综合来看,mysql-tester更符合实际开发情况!github地址: https://github.com/wuda0112/mysql-tester