sysbench mysql 数据库性能测试
2017-01-23 09:28
706 查看
mysql数据库的安装
apt-get install mysql-server ,apt-get install mysql-client, apt-get install libmysqlclient-dev;
安装过程中出现设置密码,注意设置了不要忘记了,安装完成后,可以通过下面命令检查是否安装成功:
netstat -tap |grep mysql;
登录mysql 数据库
mysql -u root -p password
显示数据库
> show databases;
显示tables
> show tables;
sysbench 安装
从github上下载最新sysbench 源码,https://github.com/nuodb/sysbench.git, 使用Ubuntu的用户,不要通过apt-get install sysbench来安装,原因是apt-get 安装的sysbench 不带oltp 脚本。
编译安装sysbench
查看sysbench 源码中的README说明, ./configure , make , make install 安装sysbench。
数据库测试相关用户和表准备
这里创建数据库 sbtest,这个名字是由 oltp 脚本中数据库的名字决定的
mysql -uroot -p password
mysql> create database sbtest DEFAULT CHARACTER SET utf8 ;
mysql> grant all privileges on sbtest.* to test@'127.0.0.1' identified by 'test';
mysql> flush privileges;
mysql> show grants for test@'127.0.0.1'
进行创建用户的链接测试
mysql -utest -p‘test’ -h127.0.0.1 -P3306 --database sbtest
注意:数据库中的5个参数必需保证正常联通,才能在下面的数据库测试中能够正常写入和测试。
sysbench mysql 测试
下面附上sysbench 测试脚本
vim /sysbench.sh
#!/bin/bash
if [ $1"q" == "q" ];then
echo "need prepare,run or cleanup"
exit 1
fi
if [ $1"q" == "runq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/oltp.lua --report_interval=2 --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 run |tee $2.sysbench.output
elif [ $1"q" == "prepareq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/parallel_prepare.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 prepare
elif [ $1"q" == "cleanupq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/oltp.lua --report_interval=2 --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 cleanup
fi
mysql 更改数据库位置
首先 设置新的存放目录
mkdir -p /data/mysql
复制原有数据
cp -a /var/lib/mysql/* /data/mysql
修改权限
chown -R mysql:mysql /data/mysql
修改配置文件
vim /etc/mysql/my.cnf
将该文件中 datadir = /var/lib/mysql ==> datadir = /data/mysql
vim /etc/apparmor.d/usr.sbin.mysqld
将该文件中 /var/lib/mysql/ r ==> /data/mysql/ r #注意,mysql后的/一定要带着
/var/lib/mysql/** rwk ==> /data/mysql/** rwk
重启服务
/etc/init.d/apparmor restart
/etc/init.d/mysql restart
停止mysql 服务
mysqladmin -uroot -p password shutdown
apt-get install mysql-server ,apt-get install mysql-client, apt-get install libmysqlclient-dev;
安装过程中出现设置密码,注意设置了不要忘记了,安装完成后,可以通过下面命令检查是否安装成功:
netstat -tap |grep mysql;
登录mysql 数据库
mysql -u root -p password
显示数据库
> show databases;
显示tables
> show tables;
sysbench 安装
从github上下载最新sysbench 源码,https://github.com/nuodb/sysbench.git, 使用Ubuntu的用户,不要通过apt-get install sysbench来安装,原因是apt-get 安装的sysbench 不带oltp 脚本。
编译安装sysbench
查看sysbench 源码中的README说明, ./configure , make , make install 安装sysbench。
数据库测试相关用户和表准备
这里创建数据库 sbtest,这个名字是由 oltp 脚本中数据库的名字决定的
mysql -uroot -p password
mysql> create database sbtest DEFAULT CHARACTER SET utf8 ;
mysql> grant all privileges on sbtest.* to test@'127.0.0.1' identified by 'test';
mysql> flush privileges;
mysql> show grants for test@'127.0.0.1'
进行创建用户的链接测试
mysql -utest -p‘test’ -h127.0.0.1 -P3306 --database sbtest
注意:数据库中的5个参数必需保证正常联通,才能在下面的数据库测试中能够正常写入和测试。
sysbench mysql 测试
下面附上sysbench 测试脚本
vim /sysbench.sh
#!/bin/bash
if [ $1"q" == "q" ];then
echo "need prepare,run or cleanup"
exit 1
fi
if [ $1"q" == "runq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/oltp.lua --report_interval=2 --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 run |tee $2.sysbench.output
elif [ $1"q" == "prepareq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/parallel_prepare.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 prepare
elif [ $1"q" == "cleanupq" ];then
sysbench --test=./sysbench/sysbench-1.0/sysbench/tests/db/oltp.lua --report_interval=2 --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100000 --oltp-tables-count=64
--oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distince-ranges=1 --oltp-non-index-updates=10 --num-threads=240 --mysql-host=127.0.0.1 --mysql-port=3306 cleanup
fi
mysql 更改数据库位置
首先 设置新的存放目录
mkdir -p /data/mysql
复制原有数据
cp -a /var/lib/mysql/* /data/mysql
修改权限
chown -R mysql:mysql /data/mysql
修改配置文件
vim /etc/mysql/my.cnf
将该文件中 datadir = /var/lib/mysql ==> datadir = /data/mysql
vim /etc/apparmor.d/usr.sbin.mysqld
将该文件中 /var/lib/mysql/ r ==> /data/mysql/ r #注意,mysql后的/一定要带着
/var/lib/mysql/** rwk ==> /data/mysql/** rwk
重启服务
/etc/init.d/apparmor restart
/etc/init.d/mysql restart
停止mysql 服务
mysqladmin -uroot -p password shutdown
相关文章推荐
- Linux下的Mysql性能测试工具 sysbench
- 用sysbench测试mysql性能
- MySQL性能测试(二)——Ubuntu 14.4.02, MySQL 5.6.25, sysbench 4.8
- MySql性能测试工具-sysbench
- sysbench mysql-ssd与hdd性能测试
- MySQL服务器性能(通过Sysbench测试cpu、io、内存以及mysql服务等)
- sysbench测试MySQL服务器性能(cpu,io,内存,mysql等)
- 使用sysbench来测试MySQL性能的详细教程
- 数据库相关文章转载(2) MySQL自带的性能压力测试工具mysqlslap详解
- 网站性能测试方案,mysql基准测试工具等简介 google page speed test ,ab test,mysqlslap,sysbench
- mysql性能测试工具-SysBench部署笔记
- mysql性能测试工具之sysbench
- 数据库工具sysbench安装教程和性能测试例子
- Sysbench0.5测试数据库性能
- sysbench-一个系统及mysql性能测试的好工具!
- 使用 sysbench 0.5 测试 MySQL 的性能
- mysql性能测试--sysbench实践
- Sysbench MySQL性能测试比较On SSD & SATA
- sysbench mysql-ssd与hdd性能测试
- sysbench 测试mysql性能