सभी दिए गए विशेषाधिकार सिस्टम टेबल में संग्रहीत हैं, उदा। - mysql.tables_priv, mysql.columns_priv, mysql.db... आप अपनी जरूरत के सभी विशेषाधिकारों को कॉपी करने के लिए एक स्क्रिप्ट लिख सकते हैं।
मान लीजिए हमारे पास उपयोगकर्ता है -
CREATE USER 'user1'@'%';
GRANT Insert ON TABLE database1.table1 TO 'user1'@'%';
GRANT Execute ON PROCEDURE database1.procedure1 TO 'user1'@'%';
अब, हम डेटाबेस 'डेटाबेस2' तक पहुंच प्राप्त करने के लिए इन विशेषाधिकारों को कॉपी करेंगे -
-- Copy table's privileges
INSERT INTO mysql.tables_priv SELECT host, 'database2', user, table_name, grantor, timestamp, table_priv, column_priv FROM mysql.tables_priv
WHERE user = 'user1' AND host = '%' AND db = 'database1';
-- Copy routine's privileges
INSERT INTO mysql.procs_priv SELECT host, 'database2', user, routine_name, routine_type, grantor, proc_priv, timestamp FROM mysql.procs_priv
WHERE user = 'user1' AND host = '%' AND db = 'database1';
-- Do not forget to apply changes ;-)
FLUSH PRIVILEGES;
अन्य सिस्टम तालिकाओं के लिए भी ऐसा ही करें।