360网站空间,做商业地产常用的网站,哪个网站可兼职做logo,学科网站建设方案这里主要使用sysbench工具对Pgsql数据库进行基准测试。
1. 创建数据库和用户名
# 创建用户和数据库CREATE USER sysbench WITH PASSWORD 123456;CREATE DATABASE sysbench owner sysbench;# 给用户授权访问
vim pg_hba.confhost sysbench sysbench 127…这里主要使用sysbench工具对Pgsql数据库进行基准测试。
1. 创建数据库和用户名
# 创建用户和数据库CREATE USER sysbench WITH PASSWORD 123456;CREATE DATABASE sysbench owner sysbench;# 给用户授权访问
vim pg_hba.confhost sysbench sysbench 127.0.0.1/32 md5pg_ctl reload2. 初始化数据库 sysbench \
--db-driverpgsql \
--oltp-table-size100000 \
--oltp-tables-count25 \
--threads1 \
--pgsql-host127.0.0.1 \
--pgsql-port5432 \
--pgsql-usersysbench \
--pgsql-password123456 \
--pgsql-dbsysbench \
/usr/share/sysbench/tests/include/oltp_legacy/parallel_prepare.lua run 25 张表从 sbtest1 到 sbtest25每张表生成 100,000 行数据。 # 检查表是否创建成功psql -U sysbench -h 127.0.0.1 -p 5432 -d sysbench -W# 查看数据库大小psql -U sysbench -h 127.0.0.1 -p 5432 -d sysbench -W -c select datname, pg_size_pretty(pg_database_size(datname)) as DB_Size from pg_stat_database where datname sysbench 3. 数据库压测
1读写测试
sysbench \
--db-driverpgsql \
--report-interval2 \
--oltp-table-size100000 \
--oltp-tables-count25 \
--threads64 \
--time60 \
--pgsql-host127.0.0.1 \
--pgsql-port5432 \
--pgsql-usersysbench \
--pgsql-password123456 \
--pgsql-dbsysbench \
/usr/share/sysbench/tests/include/oltp_legacy/oltp.lua \
run 这条命令生成一个 OLTP 工作负载使用名为 /usr/share/sysbench/tests/include/oltp_legacy/oltp.lua 的 LUA 脚本并对 25 张表的 100,000 行数据使用 64 个线程进行 60 秒的测试 # 监控数据库的活动select * from pg_stat_activity where usename sysbench;
2只读测试
sysbench \
--db-driverpgsql \
--report-interval2 \
--oltp-table-size100000 \
--oltp-tables-count24 \
--threads64 \
--time60 \
--pgsql-host127.0.0.1 \
--pgsql-port5432 \
--pgsql-usersysbench \
--pgsql-password123456 \
--pgsql-dbsysbench \
/usr/share/sysbench/tests/include/oltp_legacy/select.lua \
run
# 查询内存命中率select ((blks_hit)*100.00)/(blks_hitblks_read) AS “perc_mem_hit” from pg_stat_database where datname like sysbench;
4. 优化建议 增加内存分配如果服务器的内存充足考虑增加 PostgreSQL 的共享缓冲区大小 (shared_buffers) 和工作内存 (work_mem)以提高内存命中率。 优化查询在查询繁重的情况下尽量避免全表扫描可以通过创建索引来加速查询操作。 性能监控定期使用 pg_stat_activity 和 pg_stat_database 来监控数据库性能特别是在高负载情况下。