1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-33554 Upgrade from 11.2 to 11.3 changes root's privileges

let ALL PRIVILEGES to always mean ALL PRIVILEGES over all
upgrades, no matter what new privileges were added in later versions.
This commit is contained in:
Sergei Golubchik
2024-02-29 18:16:06 +01:00
parent ec3d9dafe4
commit 53a359cf0d
8 changed files with 84 additions and 10 deletions

View File

@ -705,6 +705,9 @@ ALTER TABLE db change Truncate_versioning_priv Delete_history_priv enum('N','Y')
SET @had_user_delete_history_priv := 0;
SELECT @had_user_delete_history_priv :=1 FROM user WHERE Delete_history_priv IS NOT NULL;
SET @had_show_create_routine := 0;
SELECT @had_show_create_routine:=1 FROM db WHERE Show_create_routine_priv IS NOT NULL;
ALTER TABLE user add Delete_history_priv enum('N','Y') COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'N' after Create_tablespace_priv;
ALTER TABLE user modify Delete_history_priv enum('N','Y') COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'N';
ALTER TABLE db add Delete_history_priv enum('N','Y') COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'N' after Trigger_priv;
@ -715,6 +718,15 @@ UPDATE user SET Delete_history_priv = Super_priv WHERE @had_user_delete_history_
ALTER TABLE db ADD Show_create_routine_priv enum('N','Y') COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'N' AFTER Delete_history_priv;
ALTER TABLE db MODIFY Show_create_routine_priv enum('N','Y') COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'N';
UPDATE db SET Show_create_routine_priv='Y' WHERE @had_show_create_routine=0
AND Drop_priv='Y' AND Index_priv='Y' AND Alter_priv='Y'
AND Event_priv='Y' AND Select_priv='Y' AND Insert_priv='Y'
AND Update_priv='Y' AND Delete_priv='Y' AND Create_priv='Y'
AND Execute_priv='Y' AND Trigger_priv='Y' AND Show_view_priv='Y'
AND References_priv='Y' AND Lock_tables_priv='Y' AND Create_view_priv='Y'
AND Alter_routine_priv='Y' AND Create_routine_priv='Y'
AND Delete_history_priv='Y' AND Create_tmp_table_priv='Y';
ALTER TABLE user ADD plugin char(64) CHARACTER SET latin1 DEFAULT '' NOT NULL AFTER max_user_connections,
ADD authentication_string TEXT NOT NULL AFTER plugin;
ALTER TABLE user CHANGE auth_string authentication_string TEXT NOT NULL;