准备执行脚本
GCC反馈编译组件使用执行脚本启动被优化的应用,需要准备执行脚本。执行脚本包含启动和测试命令。
执行脚本需要视具体环境而定,例如Sysbench和TPC-C测试,执行脚本需要包含的内容有:
- MySQL启动命令
- 测试启动命令
- 自定义测试执行时间(Sysbench或TPC-C测试推荐执行时间为5~10分钟)
创建执行脚本
下文以BenchmarkSQL测试工具为例创建执行脚本,BenchmarkSQL的使用指导请参见《BenchmarkSQL测试指导》。
- 可选:安装MySQL,请参见《MySQL移植指南》。如果已安装MySQL,请忽略此步骤。
- 可选:加载测试数据,请参见《BenchmarkSQL测试指导》。如果数据库中已包含BenchmarkSQL测试数据,请忽略此步骤。
- 创建执行脚本文件。
1
vi /root/run.sh
- 按“i”进入编辑模式,在执行脚本文件中填入以下内容。
1 2 3 4
pkill mysqld /usr/local/mysql-gcc/bin/mysqld --defaults-file=/etc/my.cnf & #该命令用于启动MySQL,/usr/local/mysql-gcc为编译执行脚本中MySQL的安装路径,请根据实际情况修改。 sleep 60 #等待MySQL启动完成,等待时间视具体环境而定。 cd /home/benchmarksql5.0-for-mysql/run && bash runBenchmark.sh my_mysql.properties #该命令用于TPC-C测试。如需远程执行该命令,可配置免密登录并通过SSH执行该命令。
- 如果需要在远程服务器执行TPC-C测试,可配置免密登录远程服务器并通过SSH执行TPC-C测试命令。配置免密登录远程服务器的操作步骤请参见(可选)配置SSH免密登录远程服务器。
- 建议将配置文件props.conf中的测试时间修改为5~10分钟。修改测试时间的操作步骤请参见修改测试时间。
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
(可选)配置SSH免密登录远程服务器
- 在本地服务器执行以下命令生成公钥与私钥。
此命令将会询问您的密钥对存放位置,按“Enter”键使用默认位置即可。如果提示输入passphrase,也请按“Enter”使用默认值。
1
ssh-keygen
- 确认相应的目录已生成密钥。
1
ll /root/.ssh/
- 执行以下命令将本机的id_rsa.pub公钥内容追加到远端服务器的“/root/.ssh/authorized_keys”文件中。这里以远端服务器IP地址为192.168.53.222为例。提示需要输入远端服务器root用户的密码时,输入密码后,按“Enter”即可。
1
ssh-copy-id root@192.168.53.222
- 通过SSH远程执行测试命令。
1
ssh root@192.168.53.222 "cd benchmarksql-5.0/run && bash runBenchmark.sh props.conf"
父主题: 自动反馈编译