使用 SQLIOSim 实用工具模拟 Linux 上的磁盘子系统上的 SQL Server 活动
适用于: Linux 上的 SQL Server 2022、Linux 上的 SQL Server 2019
简介
本文介绍 SQLIOSim 工具。 可以使用此工具在磁盘子系统上针对Linux 上的 SQL Server和容器平台执行可靠性和完整性测试。 这些测试模拟Linux 上的 SQL Server的读取、写入、检查点、备份、排序和预读活动。
SQLIOSim 工具首次在 Windows 平台上编写并发布。 SQLIOSim 依赖于 SQLPAL 平台,它允许在 Linux 上执行 Windows SQLIOSim 实用工具。
支持的平台
平台 | 文件系统 | 安装指南 |
---|---|---|
Red Hat Enterprise Linux 7.9 或 8.x 服务器 | XFS 或 EXT4 | Red Hat 安装指南 |
SUSE Enterprise Linux Server v12 (SP4 - SP5),或 v15 (SP1 - SP4) | XFS 或 EXT4 | SUSE Linux Enterprise Server 安装指南 |
Ubuntu 18.04 LTS、20.04 LTS | XFS 或 EXT4 | Ubuntu 安装指南 |
Windows、macOS 或 Linux 上的 Docker 引擎 1.8+ | 空值 | 使用 Docker 指南运行 SQL Server 容器映像 |
Linux 上的 SQLIOSim 安装说明
若要安装 SQLIOSim,请按照与运行主机的 Linux 分发相关的步骤进行操作。
使用以下命令添加存储库:
适用于 RHEL 7:
SQL Server 2019:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
适用于 RHEL 8:
SQL Server 2019:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
SQL Server 2022:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
添加存储库后,使用以下命令运行安装:
切换到根用户:
sudo su
将环境变量
ACCEPT_EULA
设置为y
接受最终用户许可协议:export ACCEPT_SQLIOSIM_EULA=y
安装 SQLIOSim:
yum install mssql-server-sqliosim
在所有分发中以非根用户身份运行 SQLIOSim
非根用户无法安装 SQLIOSim,但可以运行它。 若要将 SQLIOSim 作为非根用户运行,请将非根用户添加到“sqliosim”组。 在此示例中,将替换为 <account_to_add>
要添加的帐户。
sudo usermod -a -G sqliosim <account_to_add>
注销并使用相同的用户凭据重新登录,以确保组权限生效。
现在,你已准备好运行 SQLIOSim:
/opt/mssql-sqliosim/bin/sqliosim -cfg /tmp/sqliosim.default.cfg.ini -dir /tmp -log /tmp/sqliosim_log.xml
SQLIOSim 配置文件
可以从 SQL Server 支持团队的 GitHub 存储库下载各种测试的示例配置文件。
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.default.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.hwcache.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.nothrottle.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.seqwrites.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.sparse.cfg.ini -P /tmp
注意
/tmp
是一个示例路径。 将其更改为自己的路径。
使用 default.ini 文件运行 SQLIOSim 的示例命令
/opt/mssql-sqliosim/bin/sqliosim -cfg /tmp/sqliosim.default.cfg.ini -dir /tmp -log /tmp/sqliosim_log.xml
有关配置文件的各种配置参数以及如何运行 SQLIOSim 的详细信息,请参阅 使用 SQLIOSim 实用工具模拟磁盘子系统上的 SQL Server 活动。 本文也适用于 SQLIOSim for Linux 生态系统。