Thứ Năm, 27 tháng 7, 2023

Cài đặt PostgreSQL và pgAdmin trên CentOS 8


PostgreSQL là một cơ sở dữ liệu mã nguồn mở mạnh mẽ và hướng đối tượng được sử dụng rộng rãi trên nhiều nền tảng, Kiến trúc của nó được biết đến với độ tin cậy và khả năng mở rộng dễ dàng
pgAdmin là một công cụ mã nguồn mở dựa trên nền web hỗ trợ quản lí máy chủ cơ sở dữ liệu PostgreSQL. Trong bài này tôi sẽ hướng dẫn các bạn cài đặt PostgreSQL 12 và pgAdmin 4 trên CentOS 8

Mục lục 

  • 1. Cài đặt PostgreSQL trên CentOS 8
  • 2. Cấu hình và bảo mật PostgreSQL Database
  • 3. Cài đặt pgAdmin4 trên CentOS 8
  • 4. Cấu hình pgAdmin4 trên CentOS 8
  • 5. Truy cập vào giao diện web của pgAdmin

1. Cài đặt PostgreSQL trên CentOS 8

B1: Tắt Module PostgreSQL có sẵn bằng câu lệnh dnf

dnf -qy module disable postgresql

B2: Kích hoạt PostgreSQL Yum Repository bằng câu lệnh

dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

B3: Cài đặt các packages PostgreSQL 12 client và server

dnf install postgresql12 postgresql12-server


B4: Sau khi quá trình cài đặt thành công, khởi tạo cơ sở dữ liệu PostgreSQL, sau đó khởi chạy service và kích hoạt tự động khởi động khi boot. Sau đó kiểm tra service đã kích hoạt chưa lại bằng những câu lệnh dưới đây

/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl start postgresql-12
systemctl enable postgresql-12
systemctl status postgresql-12
systemctl is-enabled postgresql-12

2. Cấu hình và bảo mật PostgreSQL Database

B5: Tiếp theo chúng ta sẽ bảo mật cho tài khoản Postgres và tài khoản quản trị CSDL. Bắt đầu bằng việc tạo Password dùng công cụ passwd như dưới

passwd postgres


B6: Sau đó chuyển sang tài khoản hệ thống của Postgres và tạo một mật khẩu đủ an toàn cho tài khoản quản trị PostgreSQL như dưới

su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'securep@sshere';"
exit


B7: Giờ chúng ta sẽ cấu hình để Postgres server sẽ xác thực các clients như pgAdmin. Bạn có thể dùng 3 phương thức xác thực như md5, crypt hoặc password
Trong hướng dẫn này, chúng tôi sẽ cấu hình phương thức xác thực md5 trong files /var/lib/pgsql/12/data/pg_hba.conf.

vi /var/lib/pgsql/12/data/pg_hba.conf

Tìm những dòng sau và sửa phương thức xác thực sang md5

host all all 127.0.0.1/32 md5
host all all ::1/128 md5


B8: Sau khi lưu files, khởi chạy lại Services Postgres

systemctl restart postgresql-12

3. Cài đặt pgAdmin4 trên CentOS 8

B9: Bây giờ chúng ta sẽ cài pgAdmin4 để quản lí CSDL PostgreSQL từ nền web. Đâu ftiên bạn sẽ cần kích hoạt các repositories là EPEL và PowerTools

dnf install epel-release
dnf --enablerepo=PowerTools install pgadmin4


B10: Kích hoạt dịch vụ httpd và cho nó khởi động cùng hệ thống

systemctl start httpd
systemctl enable httpd
systemctl status httpd

4. Cấu hình pgAdmin4 trên CentOS 8

B11: Bây giờ chúng ta sẽ tạo một file cấu hình pgAdmin4 dưới dạng file cấu hình của httpd. Tạo một file cấu hình mới từ file mẫu sử dụng câu lệnh dưới

cp /etc/httpd/conf.d/pgadmin4.conf.sample /etc/httpd/conf.d/pgadmin4.conf

B12: Kiểm tra các cú pháp đều không gặp lỗi gì và khởi chạy lại service httpd

httpd -t
systemctl restart httpd


B13: Tạo một các thư mục chứa logs và thư viện cho pgAdmin sử dụng các câu lệnh dưới

mkdir -p /var/lib/pgadmin4/
mkdir -p /var/log/pgadmin4/

B14: Khai báo đường dẫn của log files, SQLite database, session database and storage trong file cấu hình Python của pgAdmin

vi /usr/lib/python3.6/site-packages/pgadmin4-web/config_distro.py

Thêm các dòng sau

LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'


B15: Tạo một tài khoản để đăng nhập trên nền web và tạo một database chứa các cấu hình

python3 /usr/lib/python3.6/site-packages/pgadmin4-web/setup.py


B16: Thiết đặt quyền cho các Folder chứa pgAdmin

chown -R apache:apache /var/lib/pgadmin4
chown -R apache:apache /var/log/pgadmin4

B17: Cấu hình SELinux nếu cần

chcon -t httpd_sys_rw_content_t /var/log/pgadmin4 -R
chcon -t httpd_sys_rw_content_t /var/lib/pgadmin4 -R
setsebool -P httpd_can_network_connect 1

B18: Khởi chạy lại dịch vụ HTTPD

systemctl restart httpd

B19: Nếu bạn sử dụng firewalld thì bạn cần mở port 80 và 443

firewall-cmd --permanent --zone public --add-port 80/tcp
firewall-cmd --permanent --zone public --add-port 443/tcp
firewall-cmd --reload

5. Truy cập vào giao diện web của pgAdmin

B20: Bạn truy cập vào địa chỉ http://SERVER_IP/pgadmin4 hoặc http://localhost/pgadmin4
B21: Đăng nhập bằng tài khoản bạn vừa tạo ở bước 15

B22: Thêm một Server mới bằng cách click “Add New Server”

B23: Tại tab General, bạn đặt tên và comment nếu muốn

B24: Tại Tab Connection, bạn chỉ ra những thiết đặt ở dưới đây

  • Host: Host hoặc địa chỉ IP của PostgreSQL server.
  • Port: Mặc định là 5432
  • Maintenance Database: mặc định nên đặt là Postgres
  • Username/Password: Tên đăng nhập và mật khẩu của user quản lí database. Ban có thể dùng tài khoản Postgres


B25: Server được thêm vào sẽ xuất hiện trong hình dưới

B26: Khi click vào tên server sẽ show ra một dashboard như hình dưới

Chia sẻ
=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
Cài đặt PostgreSQL và pgAdmin trên CentOS 8, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master