PostgreSQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở (open-source) được phát triển từ năm 1986. Nó là một hệ quản trị cơ sở dữ liệu quan hệ (relational database management system – RDBMS) được thiết kế để lưu trữ, truy vấn và quản lý dữ liệu trong các ứng dụng phức tạp.
PostgreSQL có nhiều tính năng mạnh mẽ, bao gồm hỗ trợ cho các tính năng SQL tiên tiến, đa ngôn ngữ, khả năng mở rộng cao, đồng thời hỗ trợ cho các tính năng không gian địa lý (GIS) và dữ liệu JSON. PostgreSQL cũng tuân thủ chuẩn SQL của ANSI và có một cộng đồng lớn và sự phát triển liên tục, điều này đảm bảo tính ổn định, bảo mật và khả năng mở rộng của nó.
Windows, được phát triển bởi Microsoft, là một hệ điều hành dành cho máy tính cá nhân và máy chủ. Nó cung cấp một giao diện đồ họa và một môi trường làm việc cho người dùng, cho phép chạy các ứng dụng và cung cấp các dịch vụ cho các ứng dụng khác.
PostgreSQL đã phát triển và hỗ trợ trên nhiều nền tảng hệ điều hành, bao gồm Windows. Việc phát triển PostgreSQL cho Windows Server và các phiên bản Windows khác là để cung cấp một sự lựa chọn cho các tổ chức và doanh nghiệp sử dụng hệ điều hành Windows để triển khai và quản lý cơ sở dữ liệu. PostgreSQL cung cấp tính năng và hiệu suất tốt trên Windows Server, cho phép phát triển ứng dụng, quản lý dữ liệu và triển khai các hệ thống cơ sở dữ liệu trên nền tảng Windows một cách dễ dàng và tin cậy.
Đầu tiên bạn vào trang https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
lựa chọn một phiên bản và tải về máy của của bạn trước.
Sau khi tải xong bạn hãy nhấp đôi vào bộ cài đặt, bạn nhận được lời chào mừng Setup – PostgreSQL.
Chỉ định thư mục cài đặt cho PostgreSQL trên hệ thống của bạn. Thư mục cài đặt là nơi PostgreSQL sẽ được cài đặt và lưu trữ các tệp tin, tài liệu, cấu hình và các thành phần khác liên quan đến PostgreSQL. Bằng cách chỉ định thư mục cài đặt, bạn quyết định nơi PostgreSQL sẽ được lưu trữ và chạy trên hệ thống của bạn.
Khi cài đặt PostgreSQL trên Windows, các thành phần sau được cung cấp và có vai trò khác nhau:
- PostgreSQL Server: Đây là thành phần chính của PostgreSQL. Nó cung cấp cơ sở dữ liệu PostgreSQL và các dịch vụ liên quan để quản lý và truy cập vào cơ sở dữ liệu.
- pgAdmin 4: pgAdmin 4 là một công cụ quản lý cơ sở dữ liệu đồ họa mạnh mẽ cho PostgreSQL. Nó cung cấp giao diện người dùng đồ họa để tạo, sửa đổi và xóa cơ sở dữ liệu, bảng, chỉ mục, đối tượng và thực hiện các truy vấn SQL.
- Stack Builder: Stack Builder là một công cụ quản lý và cài đặt các công cụ, phần mềm và các thành phần bổ sung cho PostgreSQL. Bằng cách sử dụng Stack Builder, bạn có thể dễ dàng cài đặt các mô-đun bổ sung, bản cập nhật và các công cụ hữu ích khác cho PostgreSQL.
- Command Line Tools: Command Line Tools cung cấp các công cụ dòng lệnh để quản lý và tương tác với PostgreSQL từ dòng lệnh. Bạn có thể sử dụng các công cụ này để thực thi các truy vấn SQL, sao lưu và khôi phục cơ sở dữ liệu, quản lý người dùng và quyền truy cập, và thực hiện các tác vụ quản trị khác.
Phần này yêu cầu để chọn một thư mục để lưu trữ dữ liệu của PostgreSQL trên hệ thống của bạn. Thư mục lưu trữ dữ liệu là nơi PostgreSQL sẽ lưu trữ cơ sở dữ liệu và các tệp tin liên quan khác như bảng, chỉ mục, ghi chú, tệp nhật ký và tệp sao lưu. Bằng cách chọn một thư mục phù hợp, bạn có thể quản lý và kiểm soát nơi dữ liệu của PostgreSQL được lưu trữ trên hệ thống.
Khi yêu cầu “Please provide a password for the database superuser (postgres)”, bạn được yêu cầu cung cấp mật khẩu cho người dùng siêu quản trị (superuser) của cơ sở dữ liệu PostgreSQL có tên là “postgres”.
Người dùng superuser là người dùng có đặc quyền cao nhất trong hệ thống PostgreSQL. Mật khẩu của người dùng superuser được sử dụng để xác thực và quản lý toàn quyền truy cập vào cơ sở dữ liệu, bao gồm tạo và quản lý người dùng, cơ sở dữ liệu, bảng, chỉ mục và thực thi các tác vụ quản trị khác.
Đây là lựa chọn một TCP port để PostgreSQL lắng nghe.
Khi bạn chạy PostgreSQL và được yêu cầu thiết lập “Select the locale to be used by the new database cluster”, tùy chọn “Locale [Default locale]” thường được sử dụng để sử dụng cấu hình ngôn ngữ và địa phương mặc định của hệ thống.
“Default locale” (locale mặc định) thường được đặt theo cấu hình hệ thống và được sử dụng để xác định các quy tắc và định dạng cho ngôn ngữ, vùng và các thông tin liên quan khác. Nó ảnh hưởng đến cách các ký tự, số và các thành phần ngôn ngữ khác được hiển thị và xử lý trên hệ thống.
Khi bạn chọn tùy chọn “Locale [Default locale]”, PostgreSQL sẽ sử dụng cấu hình locale mặc định của hệ thống và áp dụng nó cho cụm cơ sở dữ liệu mới.
Tuy nhiên, bạn cũng có thể chọn các tùy chọn khác để thiết lập locale tùy chỉnh cho cụm cơ sở dữ liệu nếu bạn muốn áp dụng quy tắc và định dạng khác nhau. Chỉ cần chọn tùy chọn khác và nhập locale tương ứng khi được yêu cầu.
Lựa chọn “Locale [Default locale]” sẽ sử dụng cấu hình locale mặc định của hệ thống, điều này thường là lựa chọn phổ biến và hợp lý trong hầu hết các trường hợp sử dụng.
Và tiếp theo là phần tóm tắt các thiết lập.
Lời nhắc bạn đã chắc chắn cài đặt, nếu không còn gì lăn tăn hãy bấm Next.
Quá trình cài đặt bắt đầu.
Thông báo “Completing the PostgreSQL Setup Wizard” yêu cầu bạn quyết định xem bạn có muốn khởi chạy Stack Builder sau khi hoàn thành cài đặt PostgreSQL trên máy tính của bạn hay không.
Stack Builder là một công cụ kèm theo PostgreSQL, cho phép bạn tải xuống và cài đặt các công cụ, trình điều khiển và ứng dụng bổ sung để bổ sung cài đặt PostgreSQL của bạn. Các công cụ này có thể là các ứng dụng quản lý cơ sở dữ liệu, trình điều khiển ODBC/JDBC, công cụ giám sát, công cụ sao lưu và khôi phục dữ liệu, và nhiều phần mềm khác liên quan đến PostgreSQL.
Thông báo hỏi bạn có muốn khởi chạy Stack Builder là để cung cấp cho bạn khả năng tải xuống và cài đặt các công cụ và ứng dụng bổ sung mà bạn có thể muốn sử dụng với PostgreSQL. Nếu bạn muốn khám phá và cài đặt các công cụ và ứng dụng bổ sung, bạn có thể chọn “Yes” để khởi chạy Stack Builder sau khi cài đặt hoàn tất. Nếu bạn không quan tâm hoặc không cần thiết sử dụng các công cụ và ứng dụng bổ sung này, bạn có thể chọn “No” và kết thúc quá trình cài đặt PostgreSQL.
Trường hợp của mình không cần dùng đến công cụ Stack Builder nên mình sẽ không tích vào nó và bấm Finish để kết thúc cài đặt.
Vào run và gõ mmc comexp.msc
để vào Component Services và kiếm tra xem dịch vụ PostgreSQL đã có và running hay chưa, nếu đã running thì PostgreSQL đã sẵn sàng để sử dụng.
Để cho phép các máy chủ khác remote vào PostgreSQL thì bạn hãy vào C:\Program Files\PostgreSQL\15\data\pg_hba.conf
với 15 là phiên bản của PostgreSQL. Chỉnh sửa như dưới cho mình và lưu lại, ý nghĩa của nó là lúc đầu chỉ cho phép chính máy localhost login nhưng nếu mình thay thế bằng 0.0.0.0/0 thì tất cả các Server đều có thể kết nối vào. Bạn cũng có thể fix cứng bằng 1 hoặc nhiều IP cụ thể nhé.
Trên hệ điều hành Windows, tài khoản người dùng mặc định của PostgreSQL là “postgres”. Khi bạn cài đặt PostgreSQL trên Windows, người dùng “postgres” được tạo ra và trở thành người dùng siêu quản trị (superuser) trong cơ sở dữ liệu PostgreSQL.
Do đó, khi bạn đăng nhập vào PostgreSQL trên Windows, bạn thường sử dụng tên người dùng “postgres” để truy cập và quản lý cơ sở dữ liệu.
Và đây là kết quả mình test trên Navicat.
Login thành công theo thông tin đã khai báo ở trên.
Hoặc bạn cũng có thể login bằng dòng lệnh bằng cách vào thư mục C:\Program Files\PostgreSQL\15\bin\
.
Tại thư mục này bạn vào Windows PowerShell as administrator
.
Tiếp theo bạn có thể sử dụng các lệnh của PostgreSQL như trên Linux nhé. Dưới đây là hình ảnh login vào PostgreSQL bằng lệnh psql -U postgres -h localhost -p 5432
thành công.