---
title: 准备执行脚本
description: "GCC反馈编译组件使用执行脚本启动被优化的应用，需要准备执行脚本。执行脚本包含启动和测试命令。"
url: https://www.hikunpeng.com/document/detail/zh/boostdb/systemcollaborativeoptimization/cfgo/kunpengdbsmysqlgcc_20_0009.html
sourcePath: /source/zh/boostdb/systemcollaborativeoptimization/cfgo/kunpengdbsmysqlgcc_20_0009.html
indexId: ddbda3066f8e5552ff3319554eeff4e75c669d0b83e05bb4fdacccfdbc6b609e87
---
# 准备执行脚本

GCC反馈编译组件使用执行脚本启动被优化的应用，需要准备执行脚本。执行脚本包含启动和测试命令。

执行脚本需要视具体环境而定，例如Sysbench和TPC-C测试，执行脚本需要包含的内容有：

- MySQL启动命令
- 测试启动命令
- 自定义测试执行时间（Sysbench或TPC-C测试推荐执行时间为5～10分钟）

#### 创建执行脚本

下文以BenchmarkSQL测试工具为例创建执行脚本，BenchmarkSQL的使用指导请参见《BenchmarkSQL测试指导(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/testguide/tstg/kunpengbenchmarksql_06_0001.html)》。

1. 可选：安装MySQL，请参见《MySQL移植指南(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/MySQL/kunpengmysql8017_02_0003.html)》。如果已安装MySQL，请忽略此步骤。
2. 可选：加载测试数据，请参见《BenchmarkSQL测试指导(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/testguide/tstg/kunpengbenchmarksql_06_0001.html)》。如果数据库中已包含BenchmarkSQL测试数据，请忽略此步骤。
  步骤1和步骤2目的是提前初始化MySQL数据目录，创建用户，以及准备BenchmarkSQL所需的测试数据，使得后续的run.sh脚本可以直接进行TPC-C测试。若已有现成的数据目录和BenchmarkSQL测试数据，则可以跳过步骤1和步骤2。

3. 创建执行脚本文件。
  1 vi /root/run.sh

4. 按“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免密登录远程服务器。 建议将配置文件my_mysql.properties中的测试时间修改为5～10分钟。修改测试时间的操作步骤请参见修改测试时间。 配置文件my_mysql.properties设置请参见《BenchmarkSQL测试指导(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/testguide/tstg/kunpengbenchmarksql_06_0001.html)》。

5. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。


#### （可选）配置SSH免密登录远程服务器

1. 在本地服务器执行以下命令生成公钥与私钥。
  此命令将会询问您的密钥对存放位置，按“Enter”键使用默认位置即可。如果提示输入passphrase，也请按“Enter”使用默认值。

  1 ssh-keygen

2. 确认相应的目录已生成密钥。
  1 ll /root/.ssh/

3. 执行以下命令将本机的id_rsa.pub公钥内容追加到远端服务器的“/root/.ssh/authorized_keys”文件中。这里以远端服务器IP地址为192.168.53.222为例。提示需要输入远端服务器root用户的密码时，输入密码后，按“Enter”即可。
  1 ssh-copy-id root@192.168.53.222

4. 通过SSH远程执行测试命令。
  1 ssh root@192.168.53.222 "cd benchmarksql-5.0/run && bash runBenchmark.sh my_mysql.properties"


#### 修改测试时间

下文以将配置文件my_mysql.properties中的测试时间修改为10分钟为例说明修改测试时间的操作步骤，请根据实际情况设置合理的测试时间。

1. 打开my_mysql.properties配置文件。
  1 vi my_mysql.properties

2. 按“i”进入编辑模式，将配置文件my_mysql.properties中的测试时间修改为10分钟，即将“runMins”的参数值改为“10”。
  1 runMins=10

3. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
