使用 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 Server | 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:
2019 SQL Server:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
对于 RHEL 8:
2019 SQL Server:
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
,以接受 End-User 许可协议:export ACCEPT_SQLIOSIM_EULA=y
安装 SQLIOSim:
yum install mssql-server-sqliosim
在所有分发版中以非根用户身份运行 SQLIOSim
非 root 用户无法安装 SQLIOSim,但可以运行 SQLIOSim。 若要以非根用户身份运行 SQLIOSim,请将非 root 用户添加到“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活动。 本文也适用于适用于 Linux 生态系统的 SQLIOSim。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈