2015-01-13 15 views
5

Tôi có dự án trong Symfony2 với học thuyết. Trong một khoảnh khắc tôi mất khả năng để tạo ra cơ sở dữ liệu/thả qua lệnh console nhưKhông thể tạo cơ sở dữ liệu postgres với Doctrine

app/console doctrine:database:drop --force 
app/console doctrine:database:create 
app/console doctrine:schema:update --force 

Nếu tôi attemp để tạo ra cơ sở dữ liệu, học thuyết cho tôi lỗi tiếp theo:

[Doctrine\DBAL\Exception\ConnectionException]              
    An exception occured in driver: SQLSTATE[08006] [7] FATAL: database "motherhood" does not exist 

Vì vậy, tôi có thể tạo ra cơ sở dữ liệu trong psql với người dùng, được viết bằng cấu hình symfony. Nếu tôi cố gắng để thả cơ sở dữ liệu hiện có qua Doctrine, nó mang lại cho tôi điều này:

SQLSTATE[55006]: Object in use: 7 ERROR: database "motherhood" is being accessed by other users 
DETAIL: There are 1 other session using the database. 

Nhưng không có kết nối tới cơ sở dữ liệu này

+1

tự nhận được lỗi tương tự. doctrine bỏ qua tham số config cho database_name: và nói với tôi rằng một cơ sở dữ liệu với tên của database_user: từ config không tồn tại khi tôi làm như bạn app/console doctrine: database: create. Cũng tự nhiên mà không tồn tại, cơ sở dữ liệu tồn tại là một trong những quy định bởi database_name không database_user. rất bực bội cho người dùng symfony mới – sdjuan

Trả lời

-1

Việc sửa chữa nhanh chóng cho vấn đề là tạo ra một cơ sở dữ liệu với tên giống như người dùng thực thi lệnh, vì PostgreSQL phải kết nối với cơ sở dữ liệu, ngay cả khi tạo một cơ sở dữ liệu mới.

Lỗi khi thả cơ sở dữ liệu phải được khắc phục trong DoctrineBundle 1.4.

Việc không tạo cơ sở dữ liệu sẽ được khắc phục trong giáo lý/dbal trong bản phát hành kế tiếp (2.5.2) như đã đề cập ở đây: https://github.com/doctrine/DoctrineBundle/issues/402. Sự cố sẽ được khắc phục bằng cách luôn kết nối với cơ sở dữ liệu mẫu, không thể bị loại bỏ.

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