MyBase MySQL实例资源灵活弹配
1. 开通MyBase for MySQL
登录MyBase控制台,创建MyBase专属集群引擎为MySQL,并在此专属集群下创建两台主机和实例。
主机规格为16核 128GB 3TB 本地SSD。
实例当前版本为5.6,参数模板为高性能模板,存储类型为本地SSD盘,实例规格为mysql.z4large.2,部署方案选择指定主机,指定主备库选择所创建的两台主机。
创建用户账号和数据库,并进行授权。
创建。创建一个名称为dbfortest的数据库,单击创建数据库,单击数据库管理,2)在左侧导航栏选择创建。创建一个高权限的sysbench用户,单击创建账号,单击账号管理,1)在左侧导航栏选择
配置白名单。
确定,添加ECS的IP地址,单击添加白名单页签下,单击白名单设置在数据安全性,在左侧导航栏选择
设置参数。
。确定参数为1048576,单击max_prepared_stmt_count修改参数设置,在左侧导航栏选择
2. 准备压测工具和模拟数据
登录ECS。
,选择实例,点击开通的实例ID名称。控制台1)登录ECS。远程连接2)单击。立即登录方式,单击Workbench远程连接3)可选择
在ECS上执行如下命令,安装压测工具SysBench。
1)执行如下命令下载SysBench。
yum install gcc gcc-c++ autoconf automake make libtool bzr mysql-devel git mysql git clone https://github.com/akopytov/sysbench.git
2)进入SysBench目录。
cd sysbench
3)切换到SysBench 1.0.18版本。
git checkout 1.0.18
4)运行autogen.sh。
./autogen.sh
5)编译。
./configure --prefix=/usr --mandir=/usr/share/man make make install
执行如下命令准备压测数据。
#准备数据: sysbench --db-driver=mysql --mysql-host=rm-2zej9r1m389u76s8c.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=sysbench --mysql-password='xxx' --mysql-db=sbtest_auto --table_size=10000000 --tables=25 --threads=${thread} --events=0 --time=300 --rand-type=special --point_selects=4 --percentile=99 --report-interval=3 /usr/share/sysbench/oltp_write_only.lua prepare
3. 开始压测(MyBase弹性策略未开启)
执行如下命令进行压测。
#测试只写 sysbench --db-driver=mysql --mysql-host=rm-2zej9r1m389u76s8c.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=sysbench --mysql-password='xxx' --mysql-db=sbtest_auto --table_size=10000000 --tables=25 --threads=64 --events=0 --time=300 --rand-type=special --point_selects=4 --percentile=99 --report-interval=3 /usr/share/sysbench/oltp_write_only.lua run #测试只读 sysbench --db-driver=mysql --mysql-host=rm-2zej9r1m389u76s8c.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=sysbench --mysql-password='xxx' --mysql-db=sbtest_auto --table_size=10000000 --tables=25 --threads=32 --events=0 --time=300 --rand-type=special --point_selects=4 --percentile=99 --report-interval=3 /usr/share/sysbench/oltp_read_only.lua run
需要设置的参数说明如下:
参数 |
说明 |
db-driver |
mysql |
mysql-host |
MySQL实例连接地址。 |
mysql-port |
MySQL实例连接端口。 |
mysql-user |
MySQL实例账号。 |
mysql-password |
MySQL实例账号对应的密码。 |
mysql-db |
压测数据要注入的数据库名称,本示例中即为MySQL中预先创建的dbfortest数据库。 |
table_size |
要准备的表的大小,可按照示例代码中的25000进行设置。 |
tables |
要准备的表的数量,可按照示例代码中的250进行设置。 |
threads |
测试线程数。 |
events |
测试请求数量,按照示例代码中的0进行设置。 |
time |
测试时间,可按照示例代码中的600进行设置。 |
rand-type |
随机数类型。 |
point_selects |
点查询。 |
percentile |
采样的百分比。 |
report-interval |
汇报周期。 |
压测执行完成后回显如下。
只写:
只读:
实验链接:https://developer.aliyun.com/adc/scenario/337dbd7994364d6b93263de06a6a0e5e