2016-12-07 14 views
5

Tôi có thể kết nối với cơ sở dữ liệu protomolecule với các thông tin xác thực chính xác này thông qua tập lệnh PHP. Cố gắng thiết lập nó trong PhpStorm không thành công như bạn thấy trong hình.PhpStorm nói rằng cơ sở dữ liệu PostgreSQL không tồn tại?

Nếu tôi thay đổi cơ sở dữ liệu protomolecule thành mặc định postgres cơ sở dữ liệu, nó kết nối tốt trong PhpStorm. Tôi không thể tìm ra lý do tại sao người dùng chỉ có thể kết nối với postgres và không có gì khác.

Tôi đã thử thiết lập người dùng mới và cơ sở dữ liệu mới không có kết quả.

PhpStorm Data Sources and Drivers window

Sửa: Thêm các thiết lập PHP kịch bản làm việc dưới đây, theo yêu cầu.

array(
    'database' => 'protomolecule', 
    'driver' => 'Pgsql', 
    'hostname' => 'localhost', 
    'username' => 'postgres', 
    'password' => 'xxxxxxxxxxxxx', 
    'port' => '5432' 
) 
+0

Người dùng đang chạy tập lệnh PHP và chạy PHPStorm có giống nhau không? Nếu không, tôi đoán bạn có vấn đề về quyền. Bạn có thể hiển thị tập lệnh PHP nơi kết nối hoạt động không? – BlueZed

+0

Kịch bản lệnh PHP là một kết nối PDO đơn giản với PostgreSQL sử dụng cùng các thông tin bạn thấy trong ảnh chụp màn hình ở trên cho PhpStorm. Tôi đồng ý nó có thể được cấp phép, cho phép về những gì mặc dù? Người sử dụng postgres sở hữu cơ sở dữ liệu protomolecule. Cảm ơn. – Glyph

+0

kiểm tra cài đặt tường lửa của bạn. Có thể bị PHPStorm cấm! –

Trả lời

1

Trong hình ảnh có url được cung cấp. Nó nói rằng điều này "ghi đè cài đặt ở trên". Trong url không có tên người dùng/mật khẩu. Bạn có thể thử thêm tên người dùng (và có thể cả mật khẩu nữa) vào url - hoặc bỏ trống trường url.

1

Kiểm tra nếu

  1. Bạn có thể xem cơ sở dữ liệu Postgres của bạn từ một bảng điều khiển (như phpmyadmin)
  2. bạn đã kiểm tra quyền của bạn trên bảng? bình thường nếu trong mã nó kết nối không có vấn đề, sau đó nó sẽ làm việc trong phpstorm. Nhưng url của bạn có vẻ lạ, hãy thử thay đổi nó bằng localhost:5432/protomolecule
Các vấn đề liên quan