Hi everyone,
I recently performed an in-place upgrade of Percona XtraDB Cluster from 8.0.37 to 8.4.7. After the upgrade, I noticed that the mysql.pxc.sst.role is missing several grants compared to a fresh installation of version 8.4.7.
Here is what I see on the upgraded instance vs. what should be there:
Grants in 8.0.37 (before/after upgrade)
±-----------------------------------------------------------------------------------------------------------------+
| Grants for mysql.pxc.sst.role@localhost |
±-----------------------------------------------------------------------------------------------------------------+
| GRANT RELOAD, PROCESS, SUPER, LOCK TABLES, REPLICATION CLIENT ON . TO mysql.pxc.sst.role@localhost |
| GRANT BACKUP_ADMIN ON . TO mysql.pxc.sst.role@localhost |
| GRANT CREATE ON PERCONA_SCHEMA.* TO mysql.pxc.sst.role@localhost |
| GRANT SELECT ON performance_schema.* TO mysql.pxc.sst.role@localhost |
| GRANT SELECT, INSERT, CREATE, ALTER ON PERCONA_SCHEMA.xtrabackup_history TO mysql.pxc.sst.role@localhost |
±-----------------------------------------------------------------------------------------------------------------+
Expected Grants in 8.4.7 (from a fresh install):
±-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Grants for mysql.pxc.sst.role@localhost |
±-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT RELOAD, SHUTDOWN, PROCESS, SUPER, LOCK TABLES, EXECUTE, REPLICATION CLIENT, CREATE USER, CREATE ROLE, DROP ROLE ON . TOmysql.pxc.sst.role@localhostWITH GRANT OPTION |
| GRANT CLONE_ADMIN,CONNECTION_ADMIN,INNODB_REDO_LOG_ARCHIVE,SYSTEM_USER,SYSTEM_VARIABLES_ADMIN ON . TOmysql.pxc.sst.role@localhost|
| GRANT BACKUP_ADMIN ON . TOmysql.pxc.sst.role@localhostWITH GRANT OPTION |
| GRANT CREATE ONPERCONA_SCHEMA.* TOmysql.pxc.sst.role@localhost|
| GRANT SELECT, INSERT, UPDATE ONperformance_schema.* TOmysql.pxc.sst.role@localhostWITH GRANT OPTION |
| GRANT SELECT, INSERT, CREATE, ALTER ONPERCONA_SCHEMA.xtrabackup_historyTOmysql.pxc.sst.role@localhost|
| GRANT INSERT, DELETE ONmysql.pluginTOmysql.pxc.sst.role@localhost|
±-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Because of these missing grants, I wasn’t able to use CLONE as the SST method.
I also tested a minor release upgrade from 8.0.35 to 8.0.44 and noticed the same behavior: the upgrade process doesn’t seem to update the mysql.pxc.sst.role grants automatically.
Is this a known issue or expected behavior? Should these be updated manually?
Regards,
Enrico
