2012-03-02 54 views

Trả lời

2

Trong quá trình cài đặt, bạn đã có thể bỏ qua bước sau:

Bây giờ chúng ta cần phải thiết lập lại mật khẩu cho tài khoản quản trị của postgres 'cho máy chủ, vì vậy chúng tôi có thể sử dụng cho tất cả các quản trị hệ thống nhiệm vụ. Gõ lệnh sau tại dòng lệnh (thay thế trong mật khẩu mà bạn muốn sử dụng cho tài khoản quản trị của bạn):

sudo su postgres -c psql template1 
template1=# ALTER USER postgres WITH PASSWORD 'password'; 
template1=# \q 

Đó làm thay đổi mật khẩu cho trong cơ sở dữ liệu, bây giờ chúng ta cần phải làm như vậy cho người sử dụng unix 'postgres':

sudo passwd -d postgres 
sudo su postgres -c passwd 

Bây giờ nhập cùng một mật khẩu mà bạn đã dùng trước đó.

http://hocuspokus.net/2008/05/install-postgresql-on-ubuntu-804/

+0

ivan @ ivan-Inspiron-N5110: ~ $ sudo su postgres -c psql template1 [sudo] mật khẩu cho ivan: Mật khẩu: –

+0

psql: FATAL: xác thực mật khẩu không thành công ed cho người dùng "postgres" –

42

Không có tên mặc định và mật khẩu mà bạn không tạo ra một. Việc thiết lập đơn giản nhất có thể là làm theo các bước sau để thiết lập người dùng của riêng bạn làm siêu người dùng.

Tại dấu nhắc terminal, tạo một người dùng postgres với username của riêng bạn

sudo -u postgres createuser --superuser $USER 

Bắt đầu lệnh postgresql nhắc như tên người dùng của bạn, nhưng chạy bằng root vì bạn đã không đặt mật khẩu chưa;

sudo -u postgres psql 

Tại dấu nhắc postgresql, hãy đặt mật khẩu của bạn;

\password $USER 

Sau đó, bạn sẽ có thể đăng nhập tốt.

Thiết lập được tài liệu kỹ lưỡng hơn here.

EDIT:

Nếu bạn gặp khó khăn không có khả năng xác thực tự động khi người dùng postgres, bạn có thể muốn so sánh /etc/postgresql/9.1/main/pg_hba.conf (tức là tập tin cấu hình xác thực) của bạn với các dòng sau từ mỏ làm việc; bạn có thể lấy những hình ảnh chưa được xử lý bằng cách sử dụng

grep -v ^# pg_hba.conf 

Dòng "cục bộ" phải là dòng cần thiết trong trường hợp này vì bạn không thể xác thực ngay cả từ cùng một máy;

local all    postgres        peer 
local all    all          peer 
host all    all    127.0.0.1/32   md5 
host all    all    ::1/128     md5 
+0

$ sudo -u postgres createuser --superuser $ USER Mật khẩu: createuser: không thể kết nối với cơ sở dữ liệu postgres: FATAL: xác thực mật khẩu không thành công cho người dùng "postgres" –

+0

@ IvanZ.Horvat Rất kỳ quặc, bởi mặc định trong Ubuntu, Postgresql được cấu hình để sử dụng xác thực 'ident sameuser' cho bất kỳ kết nối nào từ cùng một máy, có nghĩa là bạn không cần phải sử dụng mật khẩu khi bạn đăng nhập với tư cách người dùng đó trong hệ điều hành. Chỉ cần xác minh bằng cách sử dụng Ubuntu 11,10 của tôi mà tôi chỉ có thể đăng nhập như thế trên một cài đặt mới. –

+0

@ IvanZ.Horvat Đã thêm một số thông tin về hba.conf (tệp cấu hình xác thực) vào câu trả lời của tôi. –

-1

Có thể bạn nên thử đăng nhập bằng người dùng + mật khẩu của người dùng đã cài đặt.

Các vấn đề liên quan