2012-12-24 46 views
40

Xin chào, tôi đang gặp sự cố với postgres. Tôi không nhớ mật khẩu postgres của mình và không biết cách thay đổi mật khẩu. Tôi đoán tôi nên thay đổi các thiết lập mật khẩu md5 tôi thiết lập một tháng trước, nhưng tôi không biết làm thế nào để tìm tập tin và mở nó bằng cách sử dụng thiết bị đầu cuối của tôi. Ai đó có thể giúp đỡ?Postgresql: Cách tìm tệp pg_hba.conf bằng Mac OS X

Trả lời

73

Một cách khác tôi đã học gần đây là để đi đến các terminal và gõ:

ps aux | grep postgres

hiển thị tất cả các tiến trình đang chạy postgres trên máy tính của bạn. Từ danh sách bạn sẽ thấy một với định dạng ... -D .... E.G:

root 4155 0.0 0.0 2432908 68 ?? S 6May13 0:00.01 sudo su postgres -c /opt/local/lib/postgresql84/bin/postgres -D /opt/local/var/db/postgresql84/defaultdb -p 5432

thư mục -D có nghĩa là. Trong terminal, thực hiện sudo su và sau đó cd vào thư mục đó, và bạn sẽ tìm thấy tệp pg_hba.conf.

Và một cách hơn:

Đến terminal và gõ của bạn: locate pg_hba.conf. Nên có một vài kết quả.

+1

Cảm ơn hữu ích .. [link] (http://scratching.psybermonkey.net/2009/06/postgresql-how-to-reset-user-name.html) cho tương lai .. –

+4

Trong Postgres 9.x mới nhất nó sẽ được tìm thấy trong/data/directory như /Library/PostgreSQL/9.4/data/pg_hba.conf – Saad

45

Nếu bạn có thể kết nối, hãy sử dụng SHOW hba_file;.

Nếu bạn không thể kết nối, bạn cần tìm thư mục dữ liệu. Điều đó sẽ được hiển thị dưới dạng đối số -D cho lệnh postgres hoặc pg_ctl bắt đầu PostgreSQL, vì vậy, bạn thường có thể tìm thấy nó bằng ps -ef | grep postgres.

+4

Kết quả ví dụ trên Mountain Lion Mac của tôi với Postgres 9.2 được cài đặt bởi trình cài đặt EnterpriseDB.com: '/ Library/PostgreSQL/9.2/data/pg_hba.conf'. –

+1

Đây là cách nhanh chóng hoàn hảo để tìm thấy nó, cảm ơn! –