Программа бесплатная, живет на github. Можно самому собирать, можно поставить из репозитория. Есть под все популярные системы. Быстро добавить репу можно через скрипт. Содержимое небольшое, можно проверить перед установкой:
# curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
# yum install sysbench
Список доступных тестов можно посмотреть в директории /usr/share/sysbench/. Перед началом тестов, надо создать тестовую базу:
> create database sbtest;Я буду подключаться локально, авторизация через root уже настроена. Наполняем тестовую базу данными. Будут 16 таблиц по 10000 строк в каждой.
# sysbench \--db-driver=mysql \--mysql-user=root \--mysql-db=sbtest \--mysql-host=127.0.0.1 \--mysql-port=3306 \--tables=16 \--table-size=10000 \/usr/share/sysbench/oltp_read_write.lua prepareСмотрим, что получилось:
# du -sh /var/lib/mysql/sbtest/161M /var/lib/mysql/sbtest/После этого запускаем сам тест oltp_read_write на 10 секунд:
# sysbench \--db-driver=mysql \--mysql-user=root \--mysql-db=sbtest \--mysql-host=127.0.0.1 \--mysql-port=3306 \--tables=16 \--table-size=10000 \--threads=4 \--time=10 \--events=0 \--report-interval=1 \/usr/share/sysbench/oltp_read_write.lua runНа выходе получите количество транзакций в секунду и некоторые другие данные. Настроек и возможностей у sysbench много, в рамках заметки это всё не рассказать. Надеюсь, показал главное - этой утилитой достаточно легко пользоваться. Не надо долго разбираться. Можно быстро оценить производительность, сравнить разные виртуальные машины или конфигурации mysql / postgresql.
#terminal #утилита