Hướng dẫn install PostgreSQL CentOS 7 – cài đặt PostgreSQL

  • Home / Database / Hướng dẫn install…
Auto Draft

Hướng dẫn install PostgreSQL CentOS 7 – cài đặt PostgreSQL

PostgreSQL là hệ thống quản trị cơ sở dữ liệu mã nguồn mở mạnh mẽ. Nó có khả năng mở rộng đa nền tảng và được tin dùng. Trong bài hướng dẫn này, chúng tôi sẽ chỉ bạn cách install PostgreSQL lên CentOS 7!

PostgreSQL hoạt động như thế nào?

PostgreSQL sử dụng SQL để cho truy vấn relation và JSON cho truy vấn non-relation. Ưu điểm của PostgreSQL là cộng đồng người dùng lớn mạnh! Nó là mã nguồn mở nên lượng lập trình viên nhiều đóng góp sẽ ảnh hưởng trực tiếp tới tiềm năng phát triển của ứng dụng.

PostgreSQL có khả năng mở rộng, đáng tin cậy và tích hợp tính năng tối ưu cao cấp. Nhiều người nghĩ việc tối ưu cơ sở dữ liệu và tối ưu loại dữ liệu chỉ có trên các database thương mại như SQL server hay Oracle, nhưng thực tế là PostgreSQL cũng hỗ trợ các tính năng cao cấp này, khiến nó trở thành giải pháp hữu hiệu cho VPS của bạn.

PostgreSQL cực kỳ đơn giản để bắt đầu sử dụng và thành thạo.

Trong bài này chúng tôi sẽ chỉ bạn cách install PostgreSQL lên CentOS 7.

Bạn có thể install PostgreSQL lên CentOS 7 bằng 1 trong 2 cách sau:

  1. Install PostgreSQL từ repositories đã có của CentOS
  2. Install từ PostgreSQL repository

Hãy cùng cài đặt postgreSQL thôi, hướng dẫn chi tiết ở ngay bên dưới:

Cách đầu tiên – Install PostgreSQL lên CentOS 7 dùng CentOS repositories

CentOS 7 repository đã có PostgreSQL. Lưu ý là có thể nó không phải bản mới nhất của PostgreSQL. Tại thời điểm viết bài, repository của CentOS chứa phiên bản PostgreSQL 9.2.15.

1. Truy cập server

Trước khi bắt đầu install PostgreSQL lên CentOS 7, bạn cần truy cập VPS qua SSH trước. Xem qua tài liệu sau để truy cập bằng PuTTY nếu chưa biết cách thực hiện.

2. Install PostgreSQL lên CentOS 7

Bạn install PostgreSQL từ CentOS 7 repositories bằng lệnh sau:

sudo yum install postgresql-server postgresql-contrib

Chờ một ít phút.

3. Tạo database ban đầu

Sau khi hoàn tất, bạn cần thiết lập ban đầu bằng lệnh sau:

sudo postgresql-setup initdb

4. Khởi động database

Sau khi thiết lập database, bạn có thể kích hoạt database bằng lệnh:

sudo systemctl start postgresql

5. (Tùy chọn) Kích hoạt PostgreSQL chạy tự động

Vậy là đã hoàn tất việc cài đặt database. Nếu cần bạn có thể cấu hình postgreSQL chạy mỗi khi hệ thống khởi động lại tự động

sudo systemctl enable postgresql

Cách thứ hai – Install PostgreSQL lên CentOS 7 bằng PostgreSQL repository

Với cách này, bạn có thể tải bản mới nhất của PostgreSQL từ website chính thức. Bạn cũng có thể chọn bản PostgreSQL từ yum repostiories PostgreSQL. Hiện tại, nó có bản PostgreSQL 9.6 là bản mới nhất. Cách cài PostgreSQL như sau

1. Truy cập server

Giống ở cách 1, tại đây bạn cần truy cập SSH vào server.

2. Tải PostgreSQL bằng Wget

Giờ bạn cần tải PostgreSQL bản 9.6.3. Bạn có thể dùng lệnh wget để tải bản này hoặc bất kỳ bản cài nào khác:

wget https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Nó sẽ cần RPM hoặc RedHat Package manager bên cạnh EPEL (Extra Packages Enterprise Linux) repositories, dùng để sử dụng thêm PostgreSQL dependencies.

3. Install PosgreSQL lên CentOS 7 bằng bộ cài mới tải

Bạn cài đặt bằng lệnh yum như bên dưới:

sudo yum install pgdg-centos96-9.6-3.noarch.rpm epel-release

4. Cập nhật lệnh Yum

Cập nhật yum để áp dụng thay đổi:

sudo yum update

5. Hoàn tất quá trình cài đặt PostgreSQL trên CentOS 7

Để hoàn tất cài đặt PostgreSQL bạn cần dùng lệnh bên dưới:

sudo yum install postgresql96-server postgresql96-contrib

Vậy là xong, bạn đã cài xong PostgreSQL.

6. Tạo database ban đầu

Bạn có thể thiết lập ban đầu cho database bằng lệnh:

sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb

7. Khời động lại PostgreSQL

Để khởi động lại PostgreSQL, bạn dùng lệnh:

sudo systemctl start postgresql-9.6

8. (Tùy chọn) Kích hoạt PostgreSQL chạy khi khởi động lại

Trong trường hợp muốn khởi chạy PostgreSQL khi hệ thống reboot, bạn chạy lệnh sau:

sudo systemctl enable postgresql-9.6

Thiết lập cơ bản cho PostgreSQL

Trong Linux, mặc định tên username postgres được tạo sau khi cài PostgreSQL. Bạn có thể thay đổi mật khẩu user này bằng lệnh sau:

sudo passwd postgres

Bạn sẽ được hỏi nhập mật khẩu mới 2 lần.

Tiếp theo, bạn chuyển tới PostgreSQL và đổi mật khẩu của PostgreSQL postgres user bằng lệnh:

su - postgres

Nếu gặp lỗi, bạn có thể đặt shell hợp lệ trên user bằng lệnh:

su --shell /bin/bash postgres

Sau đó, thực thi lại lệnh trên:

su - postgres

Để đổi mật khẩu, sử dụng lệnh bên dưới nơi bạn đặt mật khẩu mới vào chỗ NewPassword:

psql -d template1 -c "ALTER USER postgres WITH PASSWORD 'NewPassword';"

Bạn có thể đổi sang client shell PostgreSQL bằng:

psql postgres

Tại đây, bạn kiểm tra danh sách lệnh bằng cách gõ \h. Bạn có thể dùng \h kèm theo lệnh bạn muốn biết để biết thêm thông tin. Để thoát môi trường, bạn gõ \q.

Lệnh createdb dùng để tạo database mới. Nếu database mới tên là testDB dùng postgres Linux user. Thì lệnh được thực thi như sau:

createdb testDB

Bạn có thể tạo role mới bằng lệnh createuser command. Bên dưới là ví dụ khi bạn tạo role có tên samplerole bằng postgres Linux user.

createuser samplerole –pwprompt

Ở đây bạn sẽ được yêu cầu nhập mật khẩu cho user.

Ngoài ra bạn có thể gán quyền sở hữu cho database mới tạo vào một user postgres nhất định. Cách nhập lệnh này như sau:

createdb testDB -O samplerole

Trong lệnh trên, thay thế samplerole bằng role bạn muốn dùng.

Để kết nối tới database mới, bạn dùng lệnh sau:

psql testDB

Trong trường hợp bạn muốn dùng một user hay role nhất định để log in, bạn dùng lệnh sau:

psql testDB -U samplerole

Nó sẽ hỏi password của user đó.

Bạn có thể dùng lệnh \l hay \list để xem mọi database. Để biết bạn đang dùng database nào, bạn gõ lệnh \c. Nếu muốn biết thêm thông tin về socket, port, bạn dùng lệnh \conninfo.

Bạn cũng có thể drop hay xóa database bằng lệnh dropdb. Tuy nhiên, lưu ý là kiểm tra kỹ trước khi xóa, sau khi xóa database, bạn không khôi phục được.

Để xóa database, bạn dùng lệnh sau:

dropdb testDB

PostgreSQL giống như các database khác, nó cho phép bạn:

  • Tạo bảng
  • Xóa bảng
  • Cập nhật bảng
  • Thêm cột
  • Xóa cột
  • Truy vấn bảng
  • Điều chỉnh lệnh
  • Phân quyền

Cú pháp của tất cả các lệnh này giống với hầu hết các database khác. Bạn có thể liệt kê bảng bằng lệnh \dt. Để liệt kê tất cả roles, bạn dùng lệnh \du. Để tìm hiểu thêm, chúng tôi khuyên bạn đọc bộ tài liệu chính thức!

Lời kết

Sau khi đọc xong bài này, bạn đã biết cách install PostgreSQL lên CentOS 7 và biết thiết lập cơ bản. Có nhiều điều khác bạn cần tìm hiểu nếu muốn học cách dùng PostgreSQL. Bạn đã bắt đầu thành công rồi, từ đây mọi thứ sẽ dễ dàng hơn và bạn có thể tìm hiểu về lệnh của PostgreSQL.

Write a Comment