D:\PostgreSQL\9.3\bin>createuser.exe -U postgres -P baixyu
为新角色输入的口令:
再输入一遍:
口令:
该例子创建了一个baixyu的角色,注意这里面不是用户,而是角色,U选项指出了你想要建立的新用户的编号。必须是PostgreSQL的用户才能建立用户,通常情况下就是postgres用户。-P选项通知createuser提示输入新用户的密码。
需要为创建的角色赋予创建数据库的权限
CREATE ROLE baixyu LOGIN
ENCRYPTED PASSWORD 'md50cdfd0736eaacd81a5a3b192623f8f90'
NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION;
使用
D:\PostgreSQL\9.3\bin>createdb.exe -U baixyu test
口令:
最终对应的实际sql语句如下,看到默认表空间是pg_default
CREATE DATABASE test
WITH OWNER = baixyu
ENCODING = 'UTF8'
TABLESPACE = pg_default
LC_COLLATE = 'Chinese (Simplified)_People''s Republic of China.936'
LC_CTYPE = 'Chinese (Simplified)_People''s Republic of China.936'
CONNECTION LIMIT = -1;
创建数据库后,使用下面的命令登陆数据库
D:\PostgreSQL\9.3\bin>psql -U baixyu -d test
用户 baixyu 的口令:
psql (9.3.5)
输入 "help" 来获取帮助信息.
test=>
切换不同的数据库
test=> \c postgres
您现在已经连线到数据库 "postgres",用户 "baixyu".
postgres=>
可以创建用户私有的数据库
create user fred password fred;
create database fred owner=fred;
这个并不是说这个库不能被别的用户连接,只是这个角色有了登录的权限
psql的一些参数
选项 |
意义 |
-a |
从脚本中响应所有输入 |
-A |
取消表数据输出的对齐模式;功能与“-P format=unaligned”相同 |
-c <查询> |
仅仅运行一个简单的查询(或者内部命令)然后退出 |
-d <数据库名> |
指定连接到 |