{"id":1987,"date":"2020-07-29T21:53:46","date_gmt":"2020-07-29T13:53:46","guid":{"rendered":"http:\/\/39.97.231.10\/?p=1987"},"modified":"2020-07-29T21:53:46","modified_gmt":"2020-07-29T13:53:46","slug":"postgresql%e7%94%a8%e6%88%b7%e8%a7%92%e8%89%b2%e6%9d%83%e9%99%90%e7%ae%a1%e7%90%86","status":"publish","type":"post","link":"http:\/\/www.weijing.co\/?p=1987","title":{"rendered":"PostgreSQL\u7528\u6237\u89d2\u8272\u6743\u9650\u7ba1\u7406"},"content":{"rendered":"<div>\n<div>\nPostgreSQL\u4f7f\u7528\u89d2\u8272\u6765\u7ba1\u7406\u7528\u6237\u6743\u9650\uff0c\u89d2\u8272\u662f\u4e00\u7cfb\u5217\u76f8\u5173\u6743\u9650\u7684\u96c6\u5408\uff0c\u5982\u679c\u54ea\u4e2a\u7528\u6237\u9700\u8981\u8fd9\u4e9b\u6743\u9650\uff0c\u5c31\u53ef\u4ee5\u628a\u8be5\u89d2\u8272\u8d4b\u4e88\u7528\u6237\uff0c\u5b9e\u9645\u4e0a\u5728PostgreSQL\u5185\u90e8\u5b9e\u73b0\u4e2d\uff0c\u89d2\u8272\u548c\u7528\u6237\u6ca1\u6709\u4efb\u4f55\u533a\u522b\uff0c\u53ea\u662f\u903b\u8f91\u4e0a\u5206\u4e3a\u89d2\u8272\u548c\u7528\u6237\uff0c\u4e0b\u6587\u7684\u63cf\u8ff0\u4e2d\uff0c\u89d2\u8272\u4e0e\u7528\u6237\u7b49\u540c\u3002\n<\/div>\n<\/div>\n<div>\n<div>\n<h5>1. \u89d2\u8272\u521b\u5efa\u4e0e\u5220\u9664<\/h5>\n<p>\u521b\u5efa\u89d2\u8272\uff1a<br \/>\ncreate role myrole;<br \/>\n\u5220\u9664\u89d2\u8272\uff1a<br \/>\ndrop role myrole;<br \/>\n\u9664\u4e86SQL\u8bed\u53e5\u4e4b\u5916\uff0cPostgreSQL\u8fd8\u63d0\u4f9b\u4e86\u5305\u88c5\u7684\u547d\u4ee4createuser\u548cdropuser\u6765\u521b\u5efa\u548c\u5220\u9664\u89d2\u8272\u3002<br \/>\ncreateuser myrole<br \/>\ndropuser myrole<br \/>\n\u67e5\u770b\u5f53\u524d\u5df2\u521b\u5efa\u7684\u89d2\u8272\uff1a<br \/>\nSELECT rolname FROM pg_roles;<br \/>\n\u6216\u8005<br \/>\n\\\\du<\/p>\n<h5>2. \u89d2\u8272\u7684\u5c5e\u6027<\/h5>\n<p>\u89d2\u8272\u53ef\u4ee5\u62e5\u6709\u4e00\u4e9b\u5c5e\u6027\u6216\u8005\u53eb\u6743\u9650\uff0c\u6bd4\u5982\u767b\u5f55\u6570\u636e\u5e93\uff0c\u9700\u8981\u89d2\u8272\u62e5\u6709LOGIN\u5c5e\u6027\uff0c\u8fd9\u7c7b\u6743\u9650\u5728\u521b\u5efa\u89d2\u8272\u7684\u65f6\u5019\u6307\u5b9a\uff0c\u6216\u8005\u901a\u8fc7alter role\u6765\u4fee\u6539\u3002<br \/>\n\u793a\u4f8b\uff1a<br \/>\ncreate role myrole with login;<br \/>\ncreate role myrole with login SUPERUSER INHERIT CREATEDB CREATEROLE CONNECTION LIMIT 50 REPLICATION PASSWORD \\&#8217;123456\\&#8217; VALID UNTIL \\&#8217;2021-01-01\\&#8217;;<br \/>\n\u4fee\u6539\u5c5e\u6027\uff1a<br \/>\nalter role myrole nologin;<br \/>\n\u5e38\u7528\u5c5e\u6027\uff1a<\/p>\n<ul>\n<li>SUPERUSER\/NOSUPERUSER\uff0c\u521b\u5efa\u51fa\u6765\u7684\u7528\u6237\u662f\u5426\u4e3a\u8d85\u7ea7\u7528\u6237\uff0c\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u521b\u5efa\u8d85\u7ea7\u7528\u6237<\/li>\n<li>LOGIN\/NOLOGIN\uff0c\u6307\u5b9a\u521b\u5efa\u7684\u7528\u6237\u662f\u5426\u6709\u8fde\u63a5\u6570\u636e\u5e93\u7684\u6743\u9650<\/li>\n<li>INHERIT\/NOINHERIT\uff0c\u6307\u5b9a\u521b\u5efa\u7684\u7528\u6237\u662f\u5426\u7ee7\u627f\u67d0\u4e9b\u89d2\u8272\u7684\u6743\u9650<\/li>\n<li>CREATEDB\/NOCREATEDB\uff0c\u6307\u5b9a\u521b\u5efa\u51fa\u6765\u7684\u7528\u6237\u662f\u5426\u6709\u6743\u9650\u521b\u5efa\u6570\u636e\u5e93<\/li>\n<li>CREATEROLE\/NOCREATEROLE\uff0c\u6307\u5b9a\u521b\u5efa\u51fa\u6765\u7684\u7528\u6237\u662f\u5426\u6709\u521b\u5efa\u5176\u4ed6\u89d2\u8272\u7684\u6743\u9650<\/li>\n<li>CONNECTION LIMIT connlimit\uff0c\u6307\u5b9a\u7528\u6237\u80fd\u591f\u4f7f\u7528\u7684\u6700\u5927\u5e76\u53d1\u8fde\u63a5\u6570\u91cf\uff0c\u9ed8\u8ba4-1\uff0c\u8868\u793a\u6ca1\u6709\u9650\u5236<\/li>\n<li>REPLICATION\uff0c\u6307\u5b9a\u590d\u5236\u6743\u9650<\/li>\n<li>PASSWORD password\uff0c\u6307\u5b9a\u5bc6\u7801<\/li>\n<li>VALID UNTIL \\&#8217;timestamp\\&#8217;\uff0c\u6307\u5b9a\u5bc6\u7801\u5931\u6548\u65f6\u95f4\uff0c\u5982\u679c\u4e0d\u6307\u5b9a\uff0c\u6c38\u8fdc\u6709\u6548<\/li>\n<li>IN ROLE role_name\uff0c\u6307\u5b9a\u6210\u4e3a\u54ea\u4e9b\u89d2\u8272\u7684\u6210\u5458<\/li>\n<li>ROLE role_name\uff0crole_name\u5c06\u6210\u4e3a\u8fd9\u4e2a\u65b0\u5efa\u89d2\u8272\u7684\u6210\u5458<\/li>\n<\/ul>\n<p>\u89d2\u8272(role)\u548c\u7528\u6237(user)\u53ef\u4ee5\u7b49\u540c\u4f7f\u7528\uff0c\u521b\u5efa\u7528\u6237\u65f6\uff0c\u9ed8\u8ba4\u5c31\u5df2\u7ecf\u5e26\u4e0a\u4e86LOGIN\u5c5e\u6027\uff0c\u800c\u89d2\u8272\u9ed8\u8ba4\u6ca1\u6709\u5e26\u4efb\u4f55\u5c5e\u6027\u3002<br \/>\ncreate user myuser;<br \/>\nmyuser\u9ed8\u8ba4\u5df2\u7ecf\u5e26\u4e86login\u5c5e\u6027\u3002<\/p>\n<h5>3. \u89d2\u8272\u7684\u6743\u9650\uff1a<\/h5>\n<p>\u89d2\u8272\u7684\u6743\u9650\u4e3b\u8981\u662f\u5bf9\u6570\u636e\u5e93\u5bf9\u8c61(\u8868\uff0cschema\uff0ctrigger\u7b49\uff09\u7684\u64cd\u4f5c\u6743\u9650\uff0c\u4e0e\u89d2\u8272\u7684\u5c5e\u6027\u7565\u6709\u4e0d\u540c\u3002\u6743\u9650\u4f7f\u7528grant\u6216revoke\u8fdb\u884c\u7ba1\u7406\u3002<br \/>\n\u793a\u4f8b1\uff1a\u5c06\u6240\u6709\u8868\u7684\u589e\u5220\u6539\u67e5\u6743\u9650\u8d4b\u4e88\u89d2\u8272<br \/>\ngrant select,insert,update,delete on all tables in schema schema_name to role_name;<br \/>\n\u793a\u4f8b2\uff1a\u5c06\u67d0\u4e2a\u8868\u7684\u589e\u5220\u6539\u67e5\u6743\u9650\u8d4b\u4e88\u89d2\u8272<br \/>\ngrant select,insert,update,delete on table schema_name.tb to role_name;<br \/>\n\u793a\u4f8b3\uff1a\u79fb\u9664\u6743\u9650\uff1a<br \/>\nrevoke delete on all tables in schema schema_name from role_name;<br \/>\n\u5e38\u7528\u6743\u9650\u6c47\u603b\uff1a<\/p>\n<ul>\n<li>SELECT<\/li>\n<li>INSERT<\/li>\n<li>UPDATE<\/li>\n<li>DELETE<\/li>\n<li>TRUNCATE<\/li>\n<li>REFERENCES<\/li>\n<li>TRIGGER<\/li>\n<li>CREATE<\/li>\n<li>CONNECT<\/li>\n<li>TEMPORARY<\/li>\n<li>EXECUTE<\/li>\n<li>USAGE<\/li>\n<li>ALL PRIVILEGES<\/li>\n<\/ul>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>PostgreSQL\u4f7f\u7528\u89d2\u8272\u6765\u7ba1\u7406\u7528\u6237\u6743\u9650\uff0c\u89d2\u8272\u662f\u4e00\u7cfb\u5217\u76f8\u5173\u6743\u9650\u7684\u96c6\u5408\uff0c\u5982\u679c\u54ea\u4e2a\u7528\u6237\u9700\u8981\u8fd9\u4e9b\u6743\u9650\uff0c\u5c31\u53ef\u4ee5\u628a\u8be5\u89d2 &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/www.weijing.co\/?p=1987\"> <span class=\"screen-reader-text\">PostgreSQL\u7528\u6237\u89d2\u8272\u6743\u9650\u7ba1\u7406<\/span> \u67e5\u770b\u5168\u6587 &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":""},"categories":[134,88],"tags":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"mailpoet_newsletter_max":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false,"shop_catalog":false,"shop_single":false,"shop_thumbnail":false},"uagb_author_info":{"display_name":"weijing","author_link":"http:\/\/www.weijing.co\/?author=4"},"uagb_comment_info":0,"uagb_excerpt":"PostgreSQL\u4f7f\u7528\u89d2\u8272\u6765\u7ba1\u7406\u7528\u6237\u6743\u9650\uff0c\u89d2\u8272\u662f\u4e00\u7cfb\u5217\u76f8\u5173\u6743\u9650\u7684\u96c6\u5408\uff0c\u5982\u679c\u54ea\u4e2a\u7528\u6237\u9700\u8981\u8fd9\u4e9b\u6743\u9650\uff0c\u5c31\u53ef\u4ee5\u628a\u8be5\u89d2&hellip;","_links":{"self":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/1987"}],"collection":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1987"}],"version-history":[{"count":0,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/1987\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1987"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1987"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1987"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}