PostgreSQL 配置

安装

创建 pgdg.list编辑配置文件:

/etc/apt/sources.list.d/pgdg.list

添加如下内容:

1
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main

导入存储库签名密钥,并更新包列表:

1
2
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update

安装:

1
apt-get install postgresql-10

参见:LINUX DOWNLOADS (UBUNTU)

配置

修改系统 postgres 用户的密码

PostgreSQL 会创建一个默认的 linux 用户 postgres,修改该用户密码的方法如下:

  1. 删除用户 postgres 的密码
1
sudo passwd -d postgres
  1. 设置用户 postgres 的密码
1
sudo -u postgres passwd
  1. 系统提示输入新的密码
1
2
3
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

修改数据库默认用户 postgres 的密码

PostgreSQL数据库创建一个postgres用户作为数据库的管理员,密码随机,所以需要修改密码,方式如下:

  1. 登录PostgreSQL

    1
    sudo -u postgres psql
  2. 修改登录PostgreSQL密码

    1
    ALTER USER postgres WITH PASSWORD 'postgres';

1
\password postgres

注:

  1. 密码 postgres 要用引号引起来
  2. 命令最后有分号 ;

用户、数据库

进入系统 postgres 用户:

1
sudo su - postgres

进入 PostgreSQL 命令行

1
psql

创建角色

1
CREATE USER exampleUser WITH PASSWORD 'example-password';

创建数据库,并指定所有者:

1
create database exampleDB owner exampleUser;

exampleDB 数据库的所有权限都赋予 exampleUser

1
GRANT ALL PRIVILEGES ON DATABASE exampleDB to exampleUser;

上述命令还可以在 bash 中完成,便于自动化部署:

1
2
sudo -u postgres createuser --superuser dbuser
sudo -u postgres createdb -O dbuser exampledb

参见:PostgreSQL新手入门