Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Các tác vụ Postgres phổ biến trên CentOS 7

Hướng dẫn này sẽ hướng dẫn bạn một số tác vụ phổ biến xung quanh máy chủ Postgres. Trong hướng dẫn này, chúng tôi sẽ đề cập đến việc cài đặt Postgres, tạo cơ sở dữ liệu và người dùng mới, sao lưu cơ sở dữ liệu và hơn thế nữa! Hãy cùng tìm hiểu!

Lưu ý:Phần còn lại của hướng dẫn này yêu cầu bạn phải có root đặc quyền. Bắt đầu bằng cách đăng nhập với quyền root hoặc đặt tiền tố các lệnh này bằng sudo .

Cài đặt PostgreSQL

Cài đặt Postgres rất đơn giản trong máy chủ CentOS VPS của chúng tôi, nhờ trình quản lý gói YUM. Chạy lệnh sau để cài đặt Postgres trên hệ thống của bạn:

yum install -y postgres-server

Định cấu hình PostreSQL

Bây giờ Postgres đã được cài đặt, đã đến lúc cấu hình dịch vụ. Đầu tiên, Postgres yêu cầu bạn khởi tạo cơ sở dữ liệu trước khi nó có thể được sử dụng. May mắn thay, họ cung cấp một lệnh để giúp chúng tôi thực hiện bước này dễ dàng:

postgres-setup initdb

Chúng tôi sẽ đặt Postgres tự động khởi động khi máy chủ của bạn được khởi động. Chạy lệnh sau để bật dịch vụ khi khởi động:
systemctl enable postgres

Tiếp theo, chúng tôi sẽ bắt đầu dịch vụ. Lệnh sau sẽ khởi động Postgres nếu nó chưa chạy:
systemctl start postgres

Cuối cùng, chúng tôi kiểm tra để đảm bảo Postgres đang chạy sau khi khởi động lại:
service postgres status

Đầu ra sẽ hiển thị hoạt động (đang chạy) cho biết dịch vụ đã hoạt động và chúng tôi đã sẵn sàng tiếp tục!

Tạo cơ sở dữ liệu mới và thêm người dùng mới

Postgres chạy với tư cách người dùng “postgres” trên hệ thống CentOS Linux của bạn, không phải là “root”. Điều này quan trọng cần lưu ý vì bạn không thể tương tác với Postgres với tư cách là người chủ.

Trước tiên, hãy chuyển sang “ postgres " người dùng. Người dùng này được tạo tự động trong hệ thống của bạn khi chúng tôi cài đặt Postgres.
su - postgres

Tiếp theo, chúng tôi sẽ tạo một cơ sở dữ liệu mới. Chúng tôi gọi nó là “ mydatabase ”Trong ví dụ của chúng tôi, nhưng vui lòng đặt tên này bất kỳ tên nào bạn thích.
createdb mydatabase

Bây giờ, chúng tôi sẽ thêm một người dùng mới cho cơ sở dữ liệu đó. Trong ví dụ này, chúng tôi đang sử dụng tên người dùng “ myusername ”, Nhưng bạn có thể đặt tên này bất cứ thứ gì bạn thích.
createuser myusername

Cấp quyền cho Cơ sở dữ liệu PostgreSQL

Cho đến nay, chúng tôi đã cài đặt Postgres, tạo cơ sở dữ liệu mới và tạo người dùng mới để truy cập cơ sở dữ liệu. Chỉ còn một bước nữa, đó là cấp quyền để người dùng mới của chúng ta được phép truy cập vào cơ sở dữ liệu. Để bắt đầu quá trình này, trước tiên chúng ta phải nhập “postgres shell”. Nhập lệnh sau:
psql

Sau khi nhấn enter, bạn sẽ thấy dấu nhắc lệnh của mình đã thay đổi, cho biết bạn hiện đang ở trong trình bao Postgres.
psql (9.2.24)
Type “help” for help.
postgres =#

Từ đây, bây giờ chúng ta có thể thêm quyền cho người dùng mới của chúng ta để truy cập cơ sở dữ liệu. Nhập lệnh sau để đặt mật khẩu cho người dùng của chúng tôi. Có một số điều cần lưu ý. Đầu tiên, các dấu ngoặc kép xung quanh mật khẩu là bắt buộc! Thứ hai, hãy đảm bảo thay thế ví dụ my_secure_password cho một mật khẩu an toàn hợp pháp! Cuối cùng, hãy đảm bảo bao gồm dấu chấm phẩy ở cuối câu lệnh. Rất dễ bỏ sót!
alter username myusername with encrypted password ‘my_secure_password’;
Postgres sẽ trả lời bằng văn bản sau cho bạn biết đã thành công.
ALTER ROLE

Bây giờ mật khẩu đã được tạo, chúng tôi sẽ thiết lập quyền trên cơ sở dữ liệu. Điều này sẽ cho phép tên người dùng của tôi truy cập vào mydatabase.
grant all privileges on database mydatabase to myusername;
Postgres sẽ trả lời bằng văn bản sau nếu lệnh thành công.
GRANT

Hãy kiểm tra kỹ công việc của chúng tôi và xác minh cơ sở dữ liệu hiển thị trong Postgres. Từ shell, chạy \ list lệnh và quan sát đầu ra một cách cẩn thận. Bạn sẽ thấy “ mydatabase ”Trong danh sách cơ sở dữ liệu.

Đã được thực hiện! Nhập lệnh sau để rời khỏi trình bao Postgres.
\quit

Cách sao lưu cơ sở dữ liệu PostgreSQL

Có một số cách để sao lưu cơ sở dữ liệu Postgres. Đối với ví dụ của chúng tôi ngày hôm nay, chúng tôi sẽ chỉ cho bạn cách sử dụng “ pg_dump ”, Xuất toàn bộ cơ sở dữ liệu của bạn dưới dạng một tệp duy nhất. Tạo bản sao lưu chỉ trong tích tắc! Chạy lệnh sau để sao lưu cơ sở dữ liệu của chúng tôi. Lưu ý rằng chúng tôi đã sử dụng tên “ mydatabase.bak ”Trong ví dụ của chúng tôi, nhưng bạn có thể đặt tên tệp sao lưu của mình theo ý muốn.
pg_dump mydatabase > mydatabase.bak

Giờ đây, bạn có thể dễ dàng sao chép hoặc di chuyển tệp này đến bất cứ nơi nào bạn muốn để lưu trữ các bản sao lưu. Theo phương pháp hay nhất, chúng tôi thực sự khuyên bạn nên lưu trữ các bản sao lưu của mình trên một đĩa sao lưu chuyên dụng, tách biệt với ổ đĩa hệ điều hành của bạn. Bằng cách này, các bản sao lưu của bạn an toàn và ổn định, ngay cả trong trường hợp không may xảy ra sự cố hệ thống.

Cách xóa cơ sở dữ liệu PostgreSQL

Xóa cơ sở dữ liệu là một quá trình đơn giản. Nó yêu cầu bạn truy cập shell Postgres trước. Lời nhắc nhanh rằng bạn có thể truy cập trình bao Postgres bằng lệnh sau:
psql
Từ đây, nó là một lệnh duy nhất để xóa cơ sở dữ liệu. Hãy xóa cơ sở dữ liệu mẫu của chúng tôi.
drop database mydatabase
Postgres sẽ xác nhận thành công với thông báo sau:
DROP DATABASE
Lưu ý:Nếu bạn chỉ định cơ sở dữ liệu không tồn tại, Postgres sẽ trả lời với lỗi sau:
ERROR: database “my_other_database” does not exist
Bạn có thể xác minh rằng cơ sở dữ liệu đã bị xóa bằng cách sử dụng \ list lệnh trong trình bao Postgres. Quan sát đầu ra và bạn sẽ nhận thấy rằng “ mydatabase ”Đã bị xóa khỏi danh sách cơ sở dữ liệu.

Cách khôi phục cơ sở dữ liệu PostgreSQL từ bản sao lưu

Bây giờ chúng tôi đã xóa cơ sở dữ liệu có tên “ mydatabase ”, Hãy xem cách khôi phục cơ sở dữ liệu đó từ bản sao lưu mà chúng tôi đã tạo. Đầu tiên, chúng ta cần sử dụng một mẫu trống để chứa cơ sở dữ liệu đã được khôi phục. Đảm bảo chạy lệnh sau với tư cách là người dùng Postgres của bạn và từ trình bao BASH, (không phải trình bao Postgres!)
createdb -T template0 mydatabase

Bây giờ chúng ta đã có trình giữ chỗ mẫu, chúng ta có thể nhập dữ liệu.
psql mydatabase < /path/to/mydatabase.bak Cơ sở dữ liệu
hiện đã được khôi phục. Nếu bạn chạy \ list một lần nữa từ shell Postgres, bạn sẽ thấy “mydatabase” một lần nữa xuất hiện trong danh sách cơ sở dữ liệu của chúng tôi!

Chúc mừng bạn đã hoàn thành phần cuối của phần này. Chúng tôi đã đề cập rất nhiều điều trong hướng dẫn này! Chúng tôi mới chỉ sơ lược về bề nổi của chủ đề này và bạn đã có thể bắt đầu hiểu lý do tại sao quản trị viên cơ sở dữ liệu lại giữ các vị trí chuyên trách trong nhiều công ty! May mắn thay, Liquid Web ở đây để giúp bạn với tất cả các nhu cầu về cơ sở dữ liệu của bạn. Đội ngũ chuyên gia của chúng tôi có thể giúp tư vấn và quản lý cơ sở dữ liệu của bạn. Hãy gửi cho chúng tôi nếu bạn có bất kỳ câu hỏi nào và cảm ơn bạn đã đọc!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nghệ thuật tổng hợp dữ liệu trong SQL từ các tổng hợp đơn giản đến trượt

  2. Sử dụng bảng JavaFX để sắp xếp dữ liệu

  3. Cầu nối RDBMS và NoSQL:Giới thiệu về cụm giao diện người dùng 2DX

  4. Dịch dữ liệu Salesforce sang định dạng EDI

  5. Chuyển đổi ngầm bên cột đắt như thế nào?