我有一个使用mysqlump从AWS RDS MariaDB导出数据的进程,该进程多年来一直在ConCourse上的停靠器映像中成功运行.
从两天前的晚上开始,该过程开始失败,出现以下错误:
mysqldump: Couldn't execute 'FLUSH TABLES WITH READ LOCK': Access denied for user 'admin'@'%' (using password: YES) (1045)
official AWS explanation似乎是因为它们不允许主用户拥有超级特权或全局读锁定,所以如果设置了--master-data选项,mysqlump就会失败.
我没有设置该选项.我带着这些旗帜参选:
mysqldump -h ${SOURCE_DB_HOST} ${SOURCE_CREDENTIALS} ${SOURCE_DB_NAME} --single-transaction --compress | grep -v '^SET .*;$' > /tmp/dump.sql
在我本地的Mac上执行时,mysqlump运行良好.它会失败,并显示错误:它无法在Linux环境中执行只具有读锁定的刷新表.
我的问题是,有谁知道如何在Linux上使用mysqlump中的读锁定命令禁用刷新表?
编辑:很高兴接受下面@Sergey-Payu的回答,因为它已经解决了我的问题,但这里有一个指向MySQL错误报告的链接,供遇到这个问题的其他人使用https://bugs.mysql.com/bug.php?id=109685