这个问题主要原因为benchmark的配置文件中终端并发数大于连接数据库的最大连接数导致。
排查过程:
查看配置文件的terminals的参数,比如上图是200,表示运行时会产生200个并发连接,并占用200个连接数。
然后去检查目标数据库的最大连接数是多少。
SHOW max_connections;
假如你数据库的最大连接数也是200。
那么因为数据库本身会固定使用十来个连接数,如果你数据库的最大连接数也是200,那么显然是不够,运行就会报错This session ended with errors。
那么只需要调大你的数据库的最大连接数就能解决。
调整最大连接数max_connections,一般通过修改不同数据库的配置文件后,重启数据库服务即可。
问题就解决了!
记住修改完最大连接数配置后一定要重启,否则不生效。