Hướng dẫn cài đặt và cấu hình Database PostgreSQL trên Ubuntu Server

1- Giới thiệu

Tài liệu được viết dựa trên
  • Ubuntu Server 16.x

  • PostGres 9.6.1

Tài liệu hướng dẫn này có thể áp dụng cho Ubuntu Server phiên bản 12, 14 hoặc 16.
Bạn có thể tra cứu các phiên bản của PostGres tại đây:

2- Cài đặt PostGreSQL

Ubuntu 16.4 / 16.10

sudo add-apt-repository "deb https://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main"

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

sudo apt-get update

sudo apt-get install postgresql-9.6

Ubuntu 14.04:

sudo add-apt-repository "deb https://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main"

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

sudo apt-get update
 
sudo apt-get install postgresql-9.6

Ubuntu 12.04

sudo add-apt-repository "deb https://apt.postgresql.org/pub/repos/apt/ precise-pgdg main"

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

sudo apt-get update

sudo apt-get install postgresql-9.6
Nếu bạn nhận được lỗi khi cài đặt, hãy xem thêm phụ lục ở cuối bài viết này:
E: The method driver /usr/lib/apt/methods/https could not be found.
N: Is the package apt-transport-https installed?
E: Failed to fetch https://apt.postgresql.org/pub/repos/apt/dists/xenial-pgdg/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.
 
Dưới đây là minh họa cài đặt PostGres trên Ubuntu Server 16.4:
Khởi động postgres:
sudo service postgresql start

3- Thiết lập mât khẩu cho user postgres

Trước hết bạn cần đăng nhập vào PostGresUbuntu доступа корневой).
sudo -u postgres psql
Bạn đã đăng nhập vào PostGres:
Trong PostGres, "postgres" là user gốc (root user), bạn có thể thiết lập mật khẩu cho user này:
ALTER USER postgres PASSWORD 'newpassword';
Sau khi đổi mật khẩu thành công, bạn có thể thoát khỏi PostGres với lệnh "\q".
Sau khi mật khẩu của user "postgres" đã được thiết lập, bạn có thể đăng nhập vào Postgres thông qua lệnh:
psql -U postgres -h localhost
Nhập vào mật khẩu bạn đã thiết lập ở bước trên

4- Sử dụng PostGreSQL

Đảm bảo rằng bạn cần đăng nhập vào Postgres với user "postgres".
Chạy 3 lệnh sau để tạo user, database, và gán tất cả các quyền sử dụng database đó cho user vừa được tạo ra.
CREATE USER myuser with PASSWORD '123';

CREATE DATABASE mydb;

GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
Xem trên pgAdmin3:

Kết nối vào database "mydb" với user "myuser":

Thoát khỏi PostGres:
Đăng nhập vào database "mydb" với user "myuser":
psql -U myuser -h localhost  -d mydb
Bây giờ bạn đã kết nối vào database "mydb":

Tạo bảng

-- Create table Account
Create table Account (User_Name varchar(30), Full_Name varchar(64) ) ;

-- Insert 2 row to Account.

Insert into Account(user_name, full_name) values ('gates', 'Bill Gate');

Insert into Account(user_name, full_name) values ('edison', 'Thomas Edison');

-- Query
Select * from Account;
Xem trên pgAdmin3:

5- Phụ lục: Khắc phục lỗi

Nếu bạn nhận được lỗi:
E: The method driver /usr/lib/apt/methods/https could not be found.
N: Is the package apt-transport-https installed?
E: Failed to fetch https://apt.postgresql.org/pub/repos/apt/dists/xenial-pgdg/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.

 
Chạy lệnh sau:
sudo apt-get install apt-transport-https