From 4fb79cb37f95ff96b2eecc940ca41073cd692d81 Mon Sep 17 00:00:00 2001 From: yml2213 Date: Sun, 16 Aug 2026 23:32:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E9=BD=90XtraBackup=E5=8F=AA=E8=AF=BB?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/deploy-prod.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/deploy-prod.sh b/scripts/deploy-prod.sh index 2349cca..51dd780 100755 --- a/scripts/deploy-prod.sh +++ b/scripts/deploy-prod.sh @@ -457,6 +457,11 @@ ensure_mysql_backup_user() { compose exec -T mysql sh -c 'MYSQL_PWD="$MYSQL_ROOT_PASSWORD" mysql -uroot --protocol=socket' printf "GRANT SELECT ON performance_schema.log_status TO \`%s\`@'%%';\n" "${backup_user}" | compose exec -T mysql sh -c 'MYSQL_PWD="$MYSQL_ROOT_PASSWORD" mysql -uroot --protocol=socket' + # MySQL 8.4 的 XtraBackup 会读取以下只读状态表,即使未启用对应组件也会探测。 + printf "GRANT SELECT ON performance_schema.replication_group_members TO \`%s\`@'%%';\n" "${backup_user}" | + compose exec -T mysql sh -c 'MYSQL_PWD="$MYSQL_ROOT_PASSWORD" mysql -uroot --protocol=socket' + printf "GRANT SELECT ON performance_schema.keyring_component_status TO \`%s\`@'%%';\n" "${backup_user}" | + compose exec -T mysql sh -c 'MYSQL_PWD="$MYSQL_ROOT_PASSWORD" mysql -uroot --protocol=socket' printf "GRANT SELECT ON \`%s\`.* TO \`%s\`@'%%';\n" "${database}" "${backup_user}" | compose exec -T mysql sh -c 'MYSQL_PWD="$MYSQL_ROOT_PASSWORD" mysql -uroot --protocol=socket' }