Это старая версия документа!


Sysbench

Проверяем производительность CPU

Выполнение теста:

$ sysbench --test=cpu --cpu-max-prime=20000 run

Тестируем дисковую подсистему

Подготовка тестовых файлов:

$ sysbench --test=fileio --file-total-size=70G prepare

Выполнение теста:

$ sysbench --test=fileio --file-total-size=70G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run

Очистка временных файлов:

$ sysbench --test=fileio cleanup

Тест MySQL OLTP

Подготовка к тестированию:

$ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass prepare

Запуск теста:

$ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass --max-time=60 --oltp-read-only=off --max-requests=0 --num-threads=8 run

Очистка:

$ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass --max-time=60 --oltp-read-only=off --max-requests=0 --num-threads=8 cleanup

Как измерить производительность PostgreSQL?

BEGIN;
UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;
INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
END;

Для создания тестовых данных выполняем команду:

$ pgbench -h localhost -U test_user -i -s 100 test

Выполняем тестирование:

$ pgbench -h localhost -U test_user -t 5000 -c 4 -j 4 test