我已经用Mysql后端设置了一个Rundeck集群。
VM1: Rundeck1 + Mysql data node 1
VM2: Rundeck2 + Mysql data node 2
VM3: Management Node
NFS:项目文件夹共享+ / var / logs共享
my.cnf设置:
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
socket = /tmp/mysql.sock
default-storage-engine=NDBCLUSTER
ndbcluster
innodb_lock_wait_timeout = 120
lock-wait-timeout= 120
[mysql_cluster]
ndb-connectstring= xx.x.xxx.xx # location of management server
每当我创建一个项目并运行作业时,都会不断出现以下错误:
An Error Occurred
Lock wait timeout exceeded; try restarting transaction
但是工作运行正常并得以完成。我可以从rundeck的项目活动部分中看到这一点。
我也已经设置了以下内容:
@@GLOBAL.tx_isolation, @@tx_isolation, @@session.tx_isolation;
请帮助。
最佳答案
尝试根据您的要求将innodb_lock_wait_timeout的值增加到一个值。尝试将值设为3000。
SET GLOBAL innodb_lock_wait_timeout = 3000;
120看起来很低..
也可以尝试使用show processlist命令并使用kill命令杀死一些长期运行的查询
关于mysql - 带有Mysql后端运行作业错误的Rundeck群集-发生错误,超过了锁定等待超时;尝试重新启动事务,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33786947/