1. Giới thiệu
PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ nổi bật với độ ổn định và hiệu suất cao, được sử dụng rộng rãi trên nhiều ứng dụng và hệ thống trong môi trường Ubuntu. Bài viết này sẽ hướng dẫn bạn cách cài đặt PostgreSQL trên Ubuntu và thực hiện các thiết lập cơ bản một cách dễ hiểu. Mọi bước đều được giải thích chi tiết cho người mới bắt đầu, bao gồm cả kiểm tra sau khi cài đặt và cách xử lý lỗi kết nối, giúp bạn yên tâm xây dựng môi trường làm việc.
2. Điều kiện tiên quyết và chuẩn bị
Trước tiên, hãy đảm bảo bạn đang sử dụng Ubuntu phiên bản 20.04 hoặc 22.04. Trước khi cài đặt PostgreSQL, cần lấy thông tin gói mới nhất và cập nhật danh sách các gói phần mềm.
sudo apt update
Lệnh này sẽ giúp quá trình cài đặt sau đó diễn ra thuận lợi.
3. Các bước cài đặt PostgreSQL
3.1 Thêm kho lưu trữ PostgreSQL
Do kho lưu trữ mặc định của Ubuntu có thể không chứa phiên bản PostgreSQL mới nhất, bạn nên thêm kho chính thức để có thể cài đặt phiên bản mới nhất.
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
sudo wget -qO- https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/trusted.gpg.d/pgdg.asc
3.2 Cài đặt PostgreSQL
Sau khi đã thêm kho lưu trữ, hãy chạy các lệnh sau để cài đặt PostgreSQL cùng với các công cụ bổ sung.
sudo apt update
sudo apt install postgresql postgresql-contrib
3.3 Kiểm tra cài đặt
Sau khi cài đặt xong, hãy kiểm tra phiên bản PostgreSQL để đảm bảo mọi thứ đã được cài đặt chính xác.
postgres --version

4. Thiết lập ban đầu
4.1 Thiết lập người dùng PostgreSQL
Khi cài đặt PostgreSQL, hệ thống sẽ tự động tạo một người dùng có tên là “postgres”. Hãy chuyển sang người dùng này để thao tác với cơ sở dữ liệu.
sudo -i -u postgres
4.2 Chỉnh sửa cấu hình kết nối cục bộ
Chỉnh sửa file “pg_hba.conf” để thiết lập phương thức xác thực. Mặc định chỉ cho phép kết nối cục bộ, nếu muốn cho phép kết nối từ xa, hãy thay đổi cài đặt trong file này.
sudo nano /etc/postgresql/14/main/pg_hba.conf
Ví dụ, bạn có thể tăng cường bảo mật bằng cách thiết lập xác thực “md5” như sau:
local all postgres md5
host all all 127.0.0.1/32 md5
Sau khi thay đổi, hãy khởi động lại dịch vụ PostgreSQL để áp dụng cài đặt mới.
sudo systemctl restart postgresql
5. Kiểm tra hoạt động cơ bản
5.1 Khởi động và dừng PostgreSQL
PostgreSQL sẽ tự động khởi động sau khi cài đặt, tuy nhiên bạn cũng có thể chủ động khởi động hoặc dừng dịch vụ bằng các lệnh sau, đồng thời kiểm tra trạng thái dịch vụ.
sudo systemctl status postgresql
sudo systemctl start postgresql
sudo systemctl stop postgresql
5.2 Kiểm tra cơ sở dữ liệu
Sử dụng lệnh “psql” để kết nối vào PostgreSQL và kiểm tra danh sách các cơ sở dữ liệu hiện có.
sudo -u postgres psql
Trong dấu nhắc lệnh, nhập “\l” để liệt kê các cơ sở dữ liệu hiện tại.
6. Cài đặt và thiết lập pgAdmin (tuỳ chọn)
Để quản lý PostgreSQL dễ dàng hơn, bạn có thể sử dụng công cụ GUI pgAdmin. Hãy cài đặt bằng lệnh dưới đây và truy cập thông qua trình duyệt web.
sudo apt install pgadmin4
Sau khi cài đặt xong, truy cập “http://localhost/pgadmin” trên trình duyệt để quản lý PostgreSQL.
7. Xử lý sự cố và các lỗi thường gặp
7.1 Lỗi cài đặt và lỗi kho lưu trữ
Nếu bạn gặp lỗi phụ thuộc hoặc lỗi kho lưu trữ khi cài đặt, hãy kiểm tra lại URL kho và cập nhật lại danh sách các gói phần mềm.
sudo apt update
7.2 Xử lý lỗi kết nối
Nếu gặp lỗi như “không xác thực được mật khẩu” khi kết nối PostgreSQL, hãy kiểm tra lại cài đặt trong “pg_hba.conf” và mật khẩu, sau đó thử khởi động lại dịch vụ.
sudo systemctl restart postgresql
7.3 Khắc phục lỗi mạng
Nếu không kết nối được từ xa, có thể do file postgresql.conf
đang để “listen_addresses” là “localhost”. Để cho phép kết nối từ xa, hãy chỉnh như sau.
sudo nano /etc/postgresql/14/main/postgresql.conf
Cấu hình dòng sau để cho phép kết nối từ xa:
listen_addresses = '*'
Sau khi chỉnh xong, hãy khởi động lại dịch vụ để áp dụng.
sudo systemctl restart postgresql

8. Tổng kết
Bài viết này đã hướng dẫn chi tiết cách cài đặt PostgreSQL trên môi trường Ubuntu, thiết lập ban đầu và kiểm tra hoạt động. Ngoài ra còn giới thiệu về pgAdmin, cấu hình kết nối từ xa và cách xử lý các lỗi phổ biến, giúp người mới có thể dễ dàng hoàn thành việc thiết lập.
MySQLとPostgreSQLの違いを解説。性能、拡張性、ユースケースの観点から、プロジェクトに最適なデータベースを選…