{"id":2009,"date":"2015-02-03T10:03:23","date_gmt":"2015-02-03T10:03:23","guid":{"rendered":"http:\/\/kedar.nitty-witty.com\/?p=2009"},"modified":"2015-02-26T13:57:12","modified_gmt":"2015-02-26T13:57:12","slug":"mysql-grant-syntax-dynamic-database-using-wildcards","status":"publish","type":"post","link":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards","title":{"rendered":"MySQL grant syntax &#038; dynamic database using wildcards"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">I was recently looking at a MySQL grant script to create default system users after server setup.<br>One of the syntax failed with error and that drew my attention to the details.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em>ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''dbname%'.* to 'dbuser'@'%'' at line 1<\/em><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><br>The issue above was fixed by correcting the syntax. You shall read below to know more.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A sample mysql grant syntax could be:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">GRANT ...PRIVILEGES ON DB.TABLE TO 'USER'@'HOST' IDENTIFIED BY 'PASSWORD';\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"># There are varients and ways to create user but let&#8217;s consider this for simplicity.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You may refer to the <a href=\"http:\/\/dev.mysql.com\/doc\/refman\/5.6\/en\/grant.html\" target=\"_blank\" rel=\"nofollow noopener\">documentation <\/a> for list of MySQL user privileges &amp; the grant syntax itself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We&#8217;re looking into dynamically specifying MySQL user privileges.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\"><strong>GRANT &#8230;PRIVILEGES ON DB.TABLE TO <span style=\"color: #ff6600;\">&#8216;USER&#8217;@&#8217;HOST&#8217;<\/span> IDENTIFIED BY &#8216;PASSWORD&#8217;;<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">A user in MySQL is combination of USERNAME and HOSTNAME.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em><strong>Username@SPECIFIC-HOST<\/strong><\/em><br>&#8216;mysql-user&#8217;@&#8217;localhost&#8217;: User named &#8216;mysql-user&#8217; can connect from localhost<br>&#8216;mysql-user&#8217;@&#8217;192.168.1.1&#8217;: User named &#8216;mysql-user&#8217; can connect from 192.168.1.1<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">GRANT SELECT, INSERT ON mydb.mytbl TO 'someuser'@'somehost';<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This will grant someuser to connect from somehost and the privileges of SELECT &amp; INSERT on mydb.mytbl.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em><strong>Username@DYNAMIC-HOST<\/strong><\/em><br>&#8216;mysql-user&#8217;@&#8217;192.168.%&#8217;: User named &#8216;mysql-user&#8217; can connect from all IPs from the any IP of network &#8220;192.168&#8221;.<br>&#8216;mysql-user&#8217;@&#8217;%&#8217;: User named &#8216;mysql-user&#8217; can connect from any IP.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">GRANT SELECT, INSERT ON mydb.mytbl TO 'someuser'@'%';<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This will grant someuser to connect from any machine and the privileges of SELECT &amp; INSERT on mydb.mytbl.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let&#8217;s see what options we have while specifying MySQL Grants on database objects.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\"><strong>GRANT &#8230;PRIVILEGES ON <span style=\"color: #ff6600;\">DB.TABLE <\/span>TO &#8216;USER&#8217;@&#8217;HOST&#8217; IDENTIFIED BY &#8216;PASSWORD&#8217;;<\/strong><\/h6>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em><strong>ALL DATABASES, ALL TABLES (GRANT &#8230; ON *.*):<\/strong><\/em> The user can connect to server and have specified privileges on all databases, tables. Normally Global privileges are given using this.<\/li>\n\n\n\n<li><em><strong>ONE DATABASE, ALL TABLES (GRANT &#8230; ON DB.*):<\/strong><\/em> The user can enjoy the given privileges on only specified database &#8220;DB&#8221;<\/li>\n\n\n\n<li><em><strong>ONE DATABASE, ONE TABLE (GRANT &#8230; ON DB.TABLE):<\/strong><\/em> The user can only work with one table &#8220;TABLE&#8221; of database &#8220;DB&#8221;<\/li>\n\n\n\n<li><em><strong><span style=\"color: #ff6600;\">DYNAMIC DATABASE<\/span>, ALL TABLES:<\/strong><\/em> The user has the privileges assigned on all the databases that matches the pattern.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The case I met was the GRANT where the SQL was written to provide privileges on a dynamic database name and had incorrect syntax.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So yes it is fairly possible to specify a regular expression for a database name while granting privileges to a MySQL user.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So we can grant SELECT permissions on all databases starting with WP to a user as follows:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mysql&gt; GRANT SELECT ON `WP%`.* to 'mysql-user'@'%';\nQuery OK, 0 rows affected (0.00 sec)\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Above syntax grants SELECT command on all databases starting with &#8220;WP&#8221; (matching the regexp). <span style=\"text-decoration: underline;\">Note the backtick (`) around &#8220;%&#8221;. <\/span> The escape character (\\) is required for the literal usage of underscore (_) or percentage (%) in the syntax. I corrected those two to resolve said error earlier.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MySQL documentation reads:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">The \"_\" and \"%\" wildcards are permitted when specifying database names in GRANT statements that grant privileges at the global or database levels.<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">In above line, it is clear about &#8220;usage of wildcard specifying database names at database level&#8221; but couldn&#8217;t quite understand what MySQL documentation meant about the usage of wildcards <span style=\"text-decoration: underline;\"><em>at global levels<\/em><\/span>!!!<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mysql&gt; grant replication slave on `%`.* to 'test'@localhost;\nERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hope this helps.<\/p>\n","protected":false},"excerpt":{"rendered":"The MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. This article explains the usecase of dynamic section of mysql grants.\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[8,377],"tags":[923,922,921,920],"class_list":["post-2009","post","type-post","status-publish","format-standard","category-mysql","category-mysql-articles","tag-dynamic-database-grants","tag-mysql-dynamic-grants","tag-mysql-grants","tag-mysql-wildcards"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Kedar\"\/>\n\t<meta name=\"google-site-verification\" content=\"_Bu1h5r0PxIC0D2jBVdmYN45RTeG9ogcX85XLkbG1qA\" \/>\n\t<meta name=\"msvalidate.01\" content=\"116B62074CBCA1BA99B8CCE09CCF2FB8\" \/>\n\t<meta name=\"keywords\" content=\"mysql,grant,wildcard,regexp,grant syntax,database,privileges,dynamic database grants,mysql dynamic grants,mysql grants,mysql wildcards\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Change Is Inevitable | Kedar Vaijanapurkar&#039;s Blog for MySQL, technology and various subjects\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"MySQL grants &amp; dynamic database objects using wildcards\" \/>\n\t\t<meta property=\"og:description\" content=\"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2015-02-03T10:03:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2015-02-26T13:57:12+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"MySQL grants &amp; dynamic database objects using wildcards\" \/>\n\t\t<meta name=\"twitter:description\" content=\"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#article\",\"name\":\"MySQL grants & dynamic database objects using wildcards\",\"headline\":\"MySQL grant syntax &#038; dynamic database using wildcards\",\"author\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kedar\"},\"datePublished\":\"2015-02-03T10:03:23+00:00\",\"dateModified\":\"2015-02-26T13:57:12+00:00\",\"inLanguage\":\"en-US\",\"commentCount\":2,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage\"},\"articleSection\":\"MySQL, MySQL-Articles, Dynamic database grants, MySQL dynamic grants, mysql grants, mysql wildcards\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql#listItem\",\"name\":\"MySQL\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql#listItem\",\"position\":2,\"name\":\"MySQL\",\"item\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql\\\/mysql-articles#listItem\",\"name\":\"MySQL-Articles\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql\\\/mysql-articles#listItem\",\"position\":3,\"name\":\"MySQL-Articles\",\"item\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql\\\/mysql-articles\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#listItem\",\"name\":\"MySQL grant syntax &#038; dynamic database using wildcards\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql#listItem\",\"name\":\"MySQL\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#listItem\",\"position\":4,\"name\":\"MySQL grant syntax &#038; dynamic database using wildcards\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/mysql\\\/mysql-articles#listItem\",\"name\":\"MySQL-Articles\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\",\"name\":\"Kedar\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kedar\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin\",\"name\":\"Kedar\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kedar\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards\",\"name\":\"MySQL grants & dynamic database objects using wildcards\",\"description\":\"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/mysql-grant-syntax-dynamic-database-using-wildcards#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"datePublished\":\"2015-02-03T10:03:23+00:00\",\"dateModified\":\"2015-02-26T13:57:12+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/\",\"name\":\"..::CHANGE is INEVITABLE::..\",\"description\":\"Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"MySQL grants & dynamic database objects using wildcards","description":"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.","canonical_url":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards","robots":"max-image-preview:large","keywords":"mysql,grant,wildcard,regexp,grant syntax,database,privileges,dynamic database grants,mysql dynamic grants,mysql grants,mysql wildcards","webmasterTools":{"google-site-verification":"_Bu1h5r0PxIC0D2jBVdmYN45RTeG9ogcX85XLkbG1qA","msvalidate.01":"116B62074CBCA1BA99B8CCE09CCF2FB8","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#article","name":"MySQL grants & dynamic database objects using wildcards","headline":"MySQL grant syntax &#038; dynamic database using wildcards","author":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"publisher":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kedar"},"datePublished":"2015-02-03T10:03:23+00:00","dateModified":"2015-02-26T13:57:12+00:00","inLanguage":"en-US","commentCount":2,"mainEntityOfPage":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage"},"isPartOf":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage"},"articleSection":"MySQL, MySQL-Articles, Dynamic database grants, MySQL dynamic grants, mysql grants, mysql wildcards"},{"@type":"BreadcrumbList","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/kedar.nitty-witty.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql#listItem","name":"MySQL"}},{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql#listItem","position":2,"name":"MySQL","item":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql","nextItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles#listItem","name":"MySQL-Articles"},"previousItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles#listItem","position":3,"name":"MySQL-Articles","item":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles","nextItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#listItem","name":"MySQL grant syntax &#038; dynamic database using wildcards"},"previousItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql#listItem","name":"MySQL"}},{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#listItem","position":4,"name":"MySQL grant syntax &#038; dynamic database using wildcards","previousItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles#listItem","name":"MySQL-Articles"}}]},{"@type":"Person","@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person","name":"Kedar","image":{"@type":"ImageObject","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kedar"}},{"@type":"Person","@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author","url":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin","name":"Kedar","image":{"@type":"ImageObject","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kedar"}},{"@type":"WebPage","@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#webpage","url":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards","name":"MySQL grants & dynamic database objects using wildcards","description":"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards#breadcrumblist"},"author":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"creator":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"datePublished":"2015-02-03T10:03:23+00:00","dateModified":"2015-02-26T13:57:12+00:00"},{"@type":"WebSite","@id":"https:\/\/kedar.nitty-witty.com\/blog\/#website","url":"https:\/\/kedar.nitty-witty.com\/blog\/","name":"..::CHANGE is INEVITABLE::..","description":"Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects","inLanguage":"en-US","publisher":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person"}}]},"og:locale":"en_US","og:site_name":"Change Is Inevitable | Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects","og:type":"article","og:title":"MySQL grants &amp; dynamic database objects using wildcards","og:description":"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.","og:url":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards","article:published_time":"2015-02-03T10:03:23+00:00","article:modified_time":"2015-02-26T13:57:12+00:00","twitter:card":"summary","twitter:title":"MySQL grants &amp; dynamic database objects using wildcards","twitter:description":"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax."},"aioseo_meta_data":{"post_id":"2009","title":"MySQL grants &amp; dynamic database objects using wildcards","description":"MySQL grant syntax allows you to specify dynamic database names using the wildcard characters. Check the use-case of dynamic section of mysql grant syntax.","keywords":[{"label":"MySQL","value":"MySQL"},{"label":"Grant","value":"Grant"},{"label":"Wildcard","value":"Wildcard"},{"label":"regexp","value":"regexp"},{"label":"grant syntax","value":"grant syntax"},{"label":"database","value":"database"},{"label":"privileges","value":"privileges"}],"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":[],"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":true,"ai":null,"created":"2021-03-24 17:41:55","updated":"2025-08-16 19:13:53","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/kedar.nitty-witty.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\" title=\"MySQL\">MySQL<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles\" title=\"MySQL-Articles\">MySQL-Articles<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tMySQL grant syntax &amp; dynamic database using wildcards\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/kedar.nitty-witty.com\/blog"},{"label":"MySQL","link":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql"},{"label":"MySQL-Articles","link":"https:\/\/kedar.nitty-witty.com\/blog\/category\/mysql\/mysql-articles"},{"label":"MySQL grant syntax &#038; dynamic database using wildcards","link":"https:\/\/kedar.nitty-witty.com\/blog\/mysql-grant-syntax-dynamic-database-using-wildcards"}],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/2009","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/comments?post=2009"}],"version-history":[{"count":14,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/2009\/revisions"}],"predecessor-version":[{"id":2014,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/2009\/revisions\/2014"}],"wp:attachment":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/media?parent=2009"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/categories?post=2009"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/tags?post=2009"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}