Grant on multiple databases. MySQL

后端 未结 2 1459
迷失自我
迷失自我 2020-12-30 10:24

How to grant on multiple databases? MySQL.

Something like

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE
ON \'databasesprefix%\'.*
TO testuser@localhost ID         


        
相关标签:
2条回答
  • 2020-12-30 11:08

    your example should work. from the (5.5) manual:

    The “_” and “%” wildcards are allowed when specifying database names in GRANT statements that grant privileges at the global or database levels.

    with % matching any number (even zero) of characters, and _ matching exactly one character. if you want a _ in your database name, you have to escape it as \_. also watch the other caveats from the manual.

    <UPDATE>as the other answer points out: if the database name contains wildcards, it has to be quoted with the identifier quote character, the backtick (“`”)</UPDATE>

    0 讨论(0)
  • 2020-12-30 11:12

    You just need to use backticks instead of quotes around the db_name prefix.

    I think this will work:

    GRANT SELECT,INSERT,UPDATE,DELETE,CREATE
    ON `databasesprefix%`.*
    TO testuser@localhost IDENTIFIED BY 'testpasswd';
    
    0 讨论(0)
提交回复
热议问题