第一步

来自 PostgreSQL 维基
跳转到导航跳转到搜索

您好,

请添加信息或链接

安装 postgres

按照您的操作系统的步骤操作。

initdb

通常,在您的操作系统上安装 postgres 会创建一个“初始数据库”并启动运行的 postgres 服务器守护程序。 如果没有,则需要 运行 initdb

例如

 # typically initdb creates a table named "postgres" owned by user "current logged in user name"
 # however, when you use pg_ctl it defaults to connecting as user "current user" to database "current user" so specify user postgres here 
 # so that it avoids confusion of having them named differently.
 $ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data -U postgres

并通过某些方式启动 postgres 守护程序,然后继续 参考

安装后的第一步

首先以 root 身份连接/登录

 # su - postgres
 $ psql
 psql (9.6.0)
 Type "help" for help.
 # or in windows, current user doesn't matter
 c:\path\to\psql.exe -U postgres
 psql (9.6.0)
 Type "help" for help.
 postgres=#  help
 You are using psql, the command-line interface to PostgreSQL.
 Type:  \copyright for distribution terms
        \h for help with SQL commands
        \? for help with psql commands
        \g or terminate with semicolon to execute query
        \q to quit

在名为 postgres 的默认数据库中创建一个名为 test 的模式

 postgres=# CREATE SCHEMA test;

创建一个带有密码的角色(用户)

 postgres=# CREATE USER xxx PASSWORD 'yyy';

授予新模式对新角色的权限(例如创建表的权限)

 postgres=# GRANT ALL ON SCHEMA test TO xxx;

授予新模式中表格对新角色的权限(例如插入的权限)

 postgres=# GRANT ALL ON ALL TABLES IN SCHEMA test TO xxx;

断开连接

 postgres=# \q

成为标准用户。
默认身份验证模式设置为“ident”,这意味着给定的 Linux 用户 xxx 只能以 postgres 用户 xxx 的身份连接。

 # su - xxx

从 shell 中的 xxx 用户登录到默认 postgres 数据库

 xxx$ psql -d postgres
 psql (9.2.4)
 Type "help" for help.
 # in windows
 # c:\path\to\psql.exe -U xxx -d postgres # again, windows doesn't care what your current user is, by default
 psql (9.6.0)
 Type "help" for help.

在测试模式下创建一个名为测试的表

 postgres=>CREATE TABLE test.test (coltest varchar(20));
 CREATE TABLE

将一条记录插入新表

 postgres=>insert into test.test (coltest) values ('It works!');
 INSERT 0 1

从表格中第一次 SELECT

 postgres=>SELECT * from test.test;
   coltest  
 -----------
  It works!
 (1 row)

删除测试表

 postgresql=>DROP TABLE test.test;
 DROP TABLE