MySQL数据库基准压力测试工具之MySQLSlap使用实例

2013-7-21 杜世伟 Mysql

一、Mysqlslap介绍

mysqlslap是MySQL5.1之后自带的benchmark基准测试工具,类似Apache Bench负载产生工具,生成schema,装载数据,执行benckmark和查询数据,语法简单,灵活,容易使用。该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。mysqlslap为mysql性能优化前后提供了直观的验证依据,笔者建议系统运维人员应该掌握一些常见的压力测试工具,这样才能较为准确的掌握线上系统能够支撑的用户流量上限及其抗压性等问题。 

二、使用方法介绍

可以使用mysqlslap --help来显示使用方法:

1) --concurrency代表并发数量,多个可以用逗号隔开,例如:concurrency=10,50,100, 并发连接线程数分别是10、50、100个并发。

2) --engines代表要测试的引擎,可以有多个,用分隔符隔开。

3) --iterations代表要运行这些测试多少次。

4) --auto-generate-sql 代表用系统自己生成的SQL脚本来测试。

5)--auto-generate-sql-load-type 代表要测试的是读还是写还是两者混合的(read,write,update,mixed)

6) --number-of-queries 代表总共要运行多少次查询。每个客户端运行的查询数量可以用查询总数/并发数来计算。

阅读全文>>

标签: mysql mysqlslap

评论(0) 浏览(1490)

Linux下tempfs简介及/dev/shm原理与应用

2013-7-19 杜世伟 Linux

什么是tmpfs?
tmpfs是linux/Unix系统上的一种基于内存的文件系统。tmpfs可以使用您的内存或swap分区来存储文件。由此可见,temfs主要存储暂存的文件。

linux内核中的VM子系统负责在后台管理虚拟内存资源Virtual Memory,即RAM和swap资源,透明地将RAM页移动到交换分区或从交换分区到RAM页,tmpfs文件系统需要VM子系统的页面来存储文件。tmpfs自己并不知道这些页面是在交换分区还是在RAM中;做这种决定是VM子系统的工作。tmpfs文件系统所知道的就是它正在使用某种形式的虚拟内存。

tmpfs基于内存,因而速度是相当的,另外tmpfs使用的VM资源是动态的,当删除tmpfs中文件,tmpfs 文件系统驱动程序会动态地减小文件系统并释放 VM 资源,当然在其中创建文件时也会动态的分配VM资源。另外,tmpfs不具备持久性,重启后数据不保留,原因很明显,它是基于内存的。

阅读全文>>

标签: linux tmpfs /dev/shm

评论(0) 浏览(15152)

查看mysql表结构信息

2013-7-18 杜世伟 Mysql

一、简单描述表结构,字段类型
desc tabl_name; describe columns
显示表结构,字段类型,主键,是否为空等属性,但不显示外键和字段的注释。
二,查看表生成的DDL
show create table 表名;
这个命令虽然显示起来不是太容易看, 这个不是问题可以用\G来结尾,使得结果容易阅读;该命令把创建表的DDL显示出来,于是表结构、类型,外键,备注全部显示出来了。我比较喜欢这个命令:输入简单,显示结果全面。
三,查询表中列的注释信息
use  information_schema
select * from columns where  table_name = '表名' ;
四、查看表的注释
select table_name,table_comment frominformation_schema.tables  where table_schema = 'db' and table_name='表名'
五,只查询列名和注释
select  column_name, column_comment from information_schema.columnswhere table_schema ='db'  and table_name = '表名' ;

标签: linux mysql select desc use show

评论(0) 浏览(5166)

如何在linux中将mysql添加到加到命令行里

2013-7-18 杜世伟 Linux

今天在虚拟机里面玩mysql,登录mysql的时候提示:
[root@localhost web]# mysql -uroot -p
-bash: mysql: command not found
是由于mysql的路径没有添加到系统的PATH变量中

要将mysql加到命令行中,需要修改/root/.bash_profile中的PATH变量。
此处,root是你的用户名,.bash_profile是一个系统隐藏文件。

阅读全文>>

标签: linux mysql source

评论(0) 浏览(4032)

Powered by emlog 沪ICP备2023034538号-1