Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql MariaDB中的同时交易是否有限制?_Mysql_Transactions_Mariadb_Asterisk_Mariadb 10.3 - Fatal编程技术网

Mysql MariaDB中的同时交易是否有限制?

Mysql MariaDB中的同时交易是否有限制?,mysql,transactions,mariadb,asterisk,mariadb-10.3,Mysql,Transactions,Mariadb,Asterisk,Mariadb 10.3,Centos 7服务器带有星号PBX 11.25.3和mysql版本15.1发行版10.3.18-MariaDB,适用于Linux(x86_64) extensions.conf: sip.conf: 当有超过15-20个来自中继线的同时呼叫时,我收到消息: WARNING[2239][C-00000389] app_mysql.c: aMYSQL_query: mysql_query failed. Error: Lock wait timeout exceeded; try restarti

Centos 7服务器带有星号PBX 11.25.3和mysql版本15.1发行版10.3.18-MariaDB,适用于Linux(x86_64)

extensions.conf:

sip.conf:

当有超过15-20个来自中继线的同时呼叫时,我收到消息:

WARNING[2239][C-00000389] app_mysql.c: aMYSQL_query: mysql_query failed. Error: Lock wait timeout exceeded; try restarting transaction
MariaDB中的同时交易是否有限制

  • 使用func_odbc,它可以正确处理连接
  • Order by rand()始终扫描整个表
  • 如果您的表类型为myisam,则表的任何扫描都会锁定整个表

  • 交易数量限制在约96K笔。看

    索引(状态、sim卡名称)
    (按该顺序)可能会加快事务中冗长的查询

    或者,您可以通过使用以下技术之一,避免
    ORDER by rand()
    所需的表扫描:

    另一种方法是重新设计您的应用程序,以获取(比如)10个随机sim_名称,将其标记为您的流程正在使用,然后退出事务。然后处理它们,最后在其他事务中释放它们

    这种标记和发布的方法不属于包含操作的事务的一部分——当操作需要很长时间时,这种方法特别有用

    抓10和抓1一样快;因此,这给了你速度

    [from-main-asterisk]
    type=friend
    host=x.x.x.x
    qualify=yes
    qualifyfreq=60
    canreinvite=no
    disallow=all
    allow=alaw
    context=from-main-asterisk
    
    WARNING[2239][C-00000389] app_mysql.c: aMYSQL_query: mysql_query failed. Error: Lock wait timeout exceeded; try restarting transaction