PostgreSQL: Việc khởi tạo cụm cơ sở dữ liệu không thành công


15

Cả hai C:\PostgreSQLC:\PostgreSQL\datapostgresngười dùng với quyền truy cập và quyền quản trị đầy đủ.

Tôi đã chạy postgresql-9.1.2-1-windows.exe từ người dùng postgres với tư cách quản trị viên. Mục tiêuC:\PostgreSQL

Mỗi cách tôi thử, tôi nhận được "Việc khởi tạo cụm cơ sở dữ liệu không thành công."

Câu hỏi

  • Bạn có thể chạy mọi thứ với dịch vụ Windows không?
  • Có cách nào để cài đặt như Windows Service không?

Tôi đang cố gắng thiết lập PostGIS để hoạt động với GeoDjango.

Tôi đã có thể tự cài đặt PostGIS. Mới sử dụng PostgreSQL và tôi đang gặp khủng hoảng về niềm tin đối với tất cả những điều này. Đến từ MySQL đến PostgreSQL lần đầu tiên.


Đầu ra nhật ký thích hợp từ C: \ Users \ Larry \ AppData \ Local \ Temp \ install-postgresql.log:

WScript.Network initialized...
Called IsVistaOrNewer()...
    'winmgmts' object initialized...
    Version:6.1
    MajorVersion:6
Ensuring we can read the path C: (using icacls) to Larry:
    Executing batch file 'radA3CF7.bat'...
    Output file does not exists...
Called IsVistaOrNewer()...
    'winmgmts' object initialized...
    Version:6.1
    MajorVersion:6
Ensuring we can read the path C:\PostgreSQL (using icacls) to Larry:
    Executing batch file 'radA3CF7.bat'...
    Output file does not exists...
Called IsVistaOrNewer()...
    'winmgmts' object initialized...
    Version:6.1
    MajorVersion:6
Ensuring we can read the path C:\PostgreSQL\data (using icacls) to Larry:
    Executing batch file 'radA3CF7.bat'...
    Output file does not exists...
Called IsVistaOrNewer()...
    'winmgmts' object initialized...
    Version:6.1
    MajorVersion:6
Ensuring we can write to the data directory (using icacls) to  Larry:
    Executing batch file 'radA3CF7.bat'...
    Output file does not exists...
Failed to ensure the data directory is accessible (C:\PostgreSQL\data)
    Executing batch file 'radA3CF7.bat'...
    Output file does not exists...
Called Die(Failed to initialise the database cluster with initdb)...
Failed to initialise the database cluster with initdb

Gợi ý?


xem nhật ký cài đặt (nó phải ở đâu đó trên đĩa, có thể bằng% TEMP%)
filiprem

Xin vui lòng xem đầu ra nhật ký thích hợp.
Larry Eitel

Người dùng Windows postgres có đặc quyền đọc và ghi đầy đủ trên dữ liệu C: \ PostgreSQL \ không?
a_horse_with_no_name

Có, VÀ mỗi đề xuất ở nơi khác, tôi đã cấp cho Người dùng Sửa đổi quyền đối với thư mục đó.
Larry Eitel

@LarryEitel: nhưng " Không thể đảm bảo thư mục dữ liệu có thể truy cập được (C: \ PostgreQuery \ data) " dường như chỉ ra điều khác.
a_horse_with_no_name

Câu trả lời:


17

Tôi gặp vấn đề tương tự khi cài đặt 9.1.4 trên Windows 7. Tôi đã tìm được giải pháp trực tuyến hiệu quả .

Các bước tôi làm theo là:

  1. Gỡ cài đặt PostgreSQL
  2. Xóa người dùng postgres nếu nó vẫn tồn tại.

    net user postgres /delete
  3. Tạo người dùng postgres bằng mật khẩu bạn có thể nhớ

    net user /add postgres <password>
  4. Thêm người dùng postgres vào nhóm Quản trị viên

    net localgroup administrators postgres /add
  5. Thêm người dùng postgres vào nhóm Power Users

    net localgroup "power users" postgres /add
  6. Chạy một cửa sổ lệnh như người dùng postgres

    runas /user:postgres cmd.exe
  7. Chạy tệp cài đặt từ trong cửa sổ lệnh.

    C:\Download\postgresql-9.1.4-1-windows.exe

    Điều này sẽ chạy cài đặt thành công.

  8. Xóa người dùng postgres khỏi nhóm Quản trị viên.

    net localgroup administrators postgres /delete

Cảm ơn bạn đã phản hồi. Thật không may, tôi đã chuyển dự án này sang Mongodb. Tôi không ở trong một vị trí tại thời điểm này để xác nhận đề nghị của bạn.
Larry Elist

Tôi muốn xác nhận rằng giải pháp đã làm việc cho tôi. Thiết lập: Postgres 9.1 64 bit và PostGIS 2.0.1 x64
Chris

1
Đây là một vấn đề nổi tiếng với việc cài đặt lại PostgreSQL đang chạy như một dịch vụ và cá nhân tôi đã gặp phải tình huống mà câu trả lời này giải quyết. Trình cài đặt để lại một tài khoản khi xóa hoặc nâng cấp, nhưng cài đặt thứ 2 không tính đến điều này; sự chênh lệch thông tin kết quả giữa các cài đặt tạo ra sự tàn phá. Câu trả lời phổ biến nhất là câu trả lời của Imraan; hủy cài đặt, xóa tài khoản vi phạm, sau đó cài đặt lại.
Avery Payne

@AveryPayne: cách khác: nhớ mật khẩu chính xác cho tài khoản dịch vụ postgres. Tôi đã cài đặt Postgres rất nhiều trên các hệ thống đã cài đặt nó và chưa bao giờ gặp sự cố với tài khoản dịch vụ hiện có. Từ ngữ trong trình cài đặt có thể đã được cải thiện mặc dù (với 9.2 Postgres không sử dụng tài khoản rõ ràng nữa btw)
a_horse_with_no_name

Hãy nhớ rằng, đối với bước 4, administratorsphụ thuộc vào miền địa phương. Ví dụ, trong PT-BR, nó là administradores. Và, trong bước 5, "power users""usuários avançados".
GuiRitter

1

Trong trường hợp của tôi (như tôi thấy từ tệp postgresql.log trong thư mục% temp% của Windows), đó là do trình cài đặt không thể tìm thấy doskey.exe mặc dù đường dẫn đến thư mục c: \ windows \ system32 đã được đưa ra trong đường dẫn biến môi trường của windows.
Vì vậy, tôi đã mở một dấu nhắc lệnh, gõ set PATH=%PATH%;c:\windows\system32và chạy trình cài đặt từ chính dấu nhắc lệnh. Nó đã làm việc! :)


1

Không ai ở trên làm việc cho tôi. Tôi đã không sử dụng postgres.

Vì vậy, tôi đã xóa / gỡ cài đặt mọi thứ. Ran cmd là quản trị viên.

Sau đó chạy trình cài đặt từ dòng lệnh (với tư cách quản trị viên) và chọn một vị trí hoàn toàn mới cho thư mục dữ liệu.

Bây giờ tôi đã thành công cài đặt lại postgres, sau nửa ngày của trò đùa tinh nghịch.


1

Tôi đã có thông báo lỗi tương tự khi cố gắng cài đặt 9.2.4. Vấn đề của tôi là vì mặc dù máy chủ Win2k8 có% HỆ THỐNG% \ system32 như một phần của đường dẫn, không có chương trình nào có thể "nhìn thấy" bất cứ điều gì trong C: \ Windows \ system32. Trình cài đặt sử dụng rất nhiều icacls.exe trong tiến trình init. Vì đường dẫn của tôi đã bị hỏng, trình cài đặt bị ném bom.

Khi tôi đã thêm C: \ Windows \ system32 vào biến môi trường Đường dẫn của HỆ THỐNG và chạy lại trình cài đặt với tư cách quản trị viên, mọi thứ đều hoạt động tốt.


0

Vấn đề này phải làm với quyền ghi trên thư mục. Ví dụ, tạo thư mục / dữ liệu vào PostgreSQL \ 9.2 và cấp quyền đầy đủ cho người dùng. Hãy thử cài đặt lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.