gpt4 book ai didi

mysql - MyISAM 表上的多线程

转载 作者:行者123 更新时间:2023-11-29 23:31:32 25 4
gpt4 key购买 nike

我试图在 MariaDB10.0.14 上执行基准测试,以使用多个线程读取 MyISAM 表上的数据,但我不断收到与主键重复条目有关的异常。 MyISAM支持多线程读取吗?我使用sysbench进行基准测试,我的配置如下:

Prepare testing dataset
#sysbench --test=/usr/share/doc/sysbench/tests/db/oltp.lua --mysql-table-engine=myisam
--oltp-table-size=1000000 --mysql-db=sbread --mysql-user=testdb --mysql-password=testpw
--mysql-socket=/var/lib/mysql/mysql.sock prepare


Reads
#sysbench --num-threads=1 --max-requests=500000 --test=/usr/share/doc/sysbench/tests/
db/oltp.lua -- oltp-table-size=1000000 --mysql-socket=/var/lib/mysql/mysql.sock
--oltp-read-only --mysql-db=sbread --mysql-user=testdb --mysql-password=testpw run

因此,正在创建的测试数据库的表具有 MyISAM 存储引擎,正如您在“准备测试数据集”中看到的那样。当我尝试使用单线程读取时,它运行良好。但是当我尝试使用以下命令访问数据库时例如,多个线程(--num-threads=16),那就是当我收到以下错误时:

ALERT: mysql_drv_query() for query 'INSERT INTO sbtest1 (id, k, c, pad) VALUES (498360, 567750, 
'84578502161-76498916585-15177095459-91229149818-13877895508-00429671145-18341319379-39103937662-
51579802230-43663801413', '79741072395-37018170150-53859605676-72598517156-41247843127')' failed:
1062 Duplicate entry '498360' for key 'PRIMARY'

最佳答案

您使用的是 --oltp-read-only 而不是 --oltp-read-only=on,因此您没有运行预期的只读基准测试。

关于mysql - MyISAM 表上的多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26545097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com