mysql如何进行压力测试_使用sysbench模拟高并发环境
sysbench命令报“command not found”主因是二进制路径未加入PATH源码安装后需手动软链或配置环境变量prepare报“Unknown database ‘sbtest’”因库未创建且用户缺建库权限连接失败多因参数名不匹配或MySQL绑定IP导致socket/TCP混淆并发低常因max_connections限制或InnoDB锁争用。sysbench 安装后 sysbench 命令报 “command not found”常见于 Linux 发行版未将 sysbench 二进制路径加入 $PATH尤其是源码编译安装后。Debian/Ubuntu 用 apt 安装一般没问题但 CentOS Stream 或自建 RPM 包容易漏掉软链。先确认是否真装上了find /usr -name sysbench 2/dev/null常见位置是 /usr/local/bin/sysbench如果找到了执行 sudo ln -sf /usr/local/bin/sysbench /usr/bin/sysbench或直接把 /usr/local/bin 加进 /etc/environment别用 ./sysbench 临时跑——压测脚本里写死路径易出错且无法被系统服务调用准备数据库时 sysbench prepare 报错 “Unknown database ‘sbtest’”sysbench 默认用 sbtest 库但它不会自动创建。很多人卡在这步以为是权限问题其实是库不存在 用户没建库权限的组合问题。先手动建库mysql -u root -p -e CREATE DATABASE sbtest CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;再授权别只给 sbtest.*GRANT ALL ON sbtest.* TO sbuserlocalhost; FLUSH PRIVILEGES;注意MySQL 8.0 默认认证插件是 caching_sha2_passwordsysbench 1.0.x 不兼容建用户时得显式指定CREATE USER sbuserlocalhost IDENTIFIED WITH mysql_native_password BY pass123;sysbench oltp_read_write 启动就报 “FATAL: unable to connect to MySQL server”不是密码错了而是连接参数没对齐。sysbench 的 MySQL 连接参数名和 MySQL 客户端不一致比如它用 --mysql-host 而不是 -h漏一个就静默失败。 AI智研社 AI智研社是一个专注于人工智能领域的综合性平台