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

Cách khởi động Máy chủ PostgreSQL trên Mac OS X qua Homebrew

Cài đặt PostgreSQL qua Homebrew

Có vẻ như hầu hết người dùng OS X đều biết về Homebrew , nhưng Homebrew là trình quản lý gói cho OS X cho phép bạn dễ dàng cài đặt và chạy một thư viện ứng dụng và tiện ích khổng lồ một cách dễ dàng.

Chúng tôi sẽ không xem qua toàn bộ quy trình cài đặt (mặc dù ngắn) của Homebrew, nhưng nếu bạn muốn cài đặt Homebrew và sử dụng nó để quản lý PostgreSQL, hãy xem lệnh cài đặt trên tài liệu chính thức. Nếu bạn không chắc liệu Homebrew đã được cài đặt hay chưa, hãy thử which brew lệnh từ thiết bị đầu cuối để xác minh.

Sau khi cài đặt xong Homebrew, bạn có thể cài đặt PostgreSQL bằng cách đưa ra các lệnh sau trong thiết bị đầu cuối của mình:

$ brew update
$ brew doctor
$ brew install postgres

Hai lệnh đầu tiên được sử dụng để cập nhật Homebrew và báo cáo bất kỳ sự cố tiềm ẩn nào (nếu cần). Sau đó, tất nhiên, brew install postgres là lệnh một dòng để cài đặt PostgreSQL.

Bạn sẽ thấy rất nhiều thông tin hữu ích trong đầu ra trong quá trình cài đặt, phần lớn trong số đó sẽ được sao chép lại để sử dụng trong các phần tiếp theo.

Sử dụng LaunchAgent và plist để khởi chạy PostgreSQL khi khởi động

Trong hầu hết các trường hợp, bạn có thể sẽ muốn khởi chạy PostgreSQL khi khởi động hệ thống của mình, vì vậy bạn cần cho máy tính biết đây là mong muốn của bạn.

Trước tiên, bạn cần tạo một thư mục cho LaunchAgents của mình cư trú (nếu thư mục chưa tồn tại). LaunchAgents trong OS X là các tập lệnh đơn giản được launchd sử dụng khiến hệ thống chạy các chương trình hoặc mã trong khi khởi động.

Tạo user của bạn -specific LaunchAgents thư mục bằng lệnh này, nếu cần:

$ mkdir -p ~/Library/LaunchAgents

Bây giờ, bạn sẽ cần tạo một liên kết tượng trưng từ tập lệnh thực sự cho phép Postgres chạy đến LaunchAgents danh mục. Một liên kết tượng trưng tương tự như việc tạo một bản sao mới của tệp để sử dụng trong một thư mục khác, nhưng vì liên kết là 'tượng trưng', liên kết chỉ là một địa chỉ chuyển tiếp:bất kỳ yêu cầu nào được thực hiện đến vị trí liên kết tượng trưng đó thực sự được "chuyển tiếp" hoặc được chuyển hướng đến nơi thực tệp thực sự cư trú.

Liên kết đến plist (danh sách thuộc tính) tệp được tạo bởi Homebrew và đặt liên kết tượng trưng mới đó trong LaunchAgents với lệnh này:

$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

Lưu ý:Kiểm tra kỹ xem lệnh có đúng không:Nó phải là một phần của đầu ra cài đặt được đề cập ở trên khi Homebrew cài đặt Postgres ban đầu.

Cuối cùng, chúng tôi tải liên kết tượng trưng mới LaunchAgent sử dụng launchctl load , đó là lệnh cụ thể thông báo cho máy tính chạy tập lệnh này và khởi động Postgres khi máy tính khởi chạy. Một lần nữa, lệnh chính xác cần nhập để cài đặt của riêng bạn sẽ là một đầu ra trong quá trình cài đặt Homebrew’s Postgres, nhưng nó sẽ giống như sau:

$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

Khởi động PostgreSQL theo cách thủ công

Để khởi động Postgres theo cách thủ công mà không cần khởi động lại, bạn sẽ có thể sử dụng lệnh được xuất ra trong quá trình cài đặt, như sau:

$ postgres -D /usr/local/var/postgres

Điều này sẽ cố gắng khởi chạy Postgres trong daemon , có nghĩa là nó sẽ chạy như một quy trình nền mà không tiếp quản thiết bị đầu cuối của bạn.

Bắt đầu / Dừng PostgreSQL mà không cần Homebrew

Trong trường hợp bạn không có (hoặc không muốn sử dụng) Homebrew cho Postgres, nhưng bạn đã cài đặt Postgres, bạn cũng có thể khởi động nó theo cách thủ công với pg_ctl , là tiện ích khởi chạy do chính Postgres cung cấp.

Điều này sẽ khởi động Postgres (giả sử là thư mục mặc định):

$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

Và điều này sẽ dừng Postgres:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

Khắc phục sự cố Khởi động:Bạn đã Chạy initdb ?

Trong một số trường hợp, nếu bạn gặp sự cố khi chạy Postgres, hãy đảm bảo rằng bạn đã thực thi initdb lệnh một lần, khiến Postgres khởi tạo cụm cơ sở dữ liệu để cài đặt mới và cho phép bạn kết nối với postgres mặc định người dùng.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Multi-DC PostgreSQL:Thiết lập nút chờ tại một vị trí địa lý khác qua VPN

  2. Làm cách nào để hợp nhất các cột từ hai bảng thành một đầu ra?

  3. Cách chọn bản ghi từ 24 giờ qua trong PostgreSQL

  4. Giảm tham số postgresql.conf tại một thời điểm

  5. Kiểm tra PostgreSQL bằng pgAudit