PHP实战中知识总结 / PgSQL - createuser(bin目录文件)
一、createuser
createuser创建一个新的PostgreSQL用户(或者更准确些,是一个角色)。只有超级用户和具有CREATEROLE特权的用户才能创建新用户,因此createuser必须被以上两种用户调用。如果你希望创建一个新的超级用户,你必须作为一个超级用户连接,而不仅仅是具有CREATEROLE特权。作为一个超级用户意味着绕过数据库中所有访问权限检查的能力,因此超级用户地位不能轻易被授予。createuser是对SQL命令 CREATE ROLE的封装。
二、命令格式
createuser [OPTION]... [ROLENAME]
option:
参数 | 说明 |
---|---|
-c, --connection-limit=N | 为该新用户设置一个最大连接数。默认值为不设任何限制 |
-d, --createdb | 新用户将被允许创建数据库 |
-D, --no-createdb | 新用户将不被允许创建数据库。这是默认值。 |
-e, --echo | 显示createuser生成并发送给服务器的命令 |
-g, --role=ROLE | 指定一个角色,这个角色将立即加入其中成为其成员。 如果要把这个角色加入到多个角色中作为成员, 可以写多个-g开关。 |
-i, --inherit | 新角色将自动继承把它作为成员的角色的特权。这是默认值。 |
-I, --no-inherit | 新角色将不会自动继承把它作为成员的角色的特权。 |
-l, --login | 新用户将被允许登入,这是默认值 |
-L, --no-login | 新用户将不被允许登入 |
-P, --pwprompt | 提示输入密码 |
-r, --createrole | 新用户将被允许创建新的角色(即,这个用户将具有CREATEROLE特权) |
-R, --no-createrole | 新用户将不被允许创建新角色。这是默认值 |
-s, --superuser | 新用户将成为一个超级用户 |
-S, --no-superuser | 新用户将不会成为一个超级用户。这是默认值。 |
-V, --version | 打印createuser版本并退出。 |
--interactive | 如果在命令行没有指定用户名,提示要求用户名,并且在命令行没有指定选项-d/-D、-r/-R、-s/-S时也提示 |
--replication | 新用户将具有REPLICATION特权 |
--no-replication | 新用户将不具有REPLICATION特权 |
-?, --help | 显示有关createuser命令行参数的帮助并退出 |
Connection options:
参数 | 说明 |
---|---|
-h, --host=HOSTNAME | 指定运行服务器的机器的主机名 |
-p, --port=PORT | 指定端口 |
-U, --username=USERNAME | 指定用户 |
-w, --no-password | 不提示输入密码 |
-W, --password | 强制密码提示 |