PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Vai trò không tồn tại và không thể tạo cơ sở dữ liệu khi sử dụng PostgreSQL

Thêm tên người dùng vào database.yml của bạn , cũng có thể sử dụng tên ứng dụng của bạn (hoặc một số biến thể của tên) làm tên người dùng, tôi sẽ sử dụng app_name như một trình giữ chỗ:

development:
  adapter: postgresql
  encoding: utf8
  database: app_development
  pool: 5
  username: app_name
  password:

Sau đó, tạo người dùng (AKA "role") bên trong PostgreSQL bằng cách sử dụng psql.exe :

$ psql -d postgres
postgres=# create role app_name login createdb;
postgres=# \q

Dòng đầu tiên nằm trong thiết bị đầu cuối của bạn, hai dòng tiếp theo nằm bên trong psql . Sau đó thực hiện rake db:create của bạn .

Người dùng User người dùng có thể là mặc định nhưng user đã được sử dụng cho các mục đích khác trong PostgreSQL, vì vậy bạn phải trích dẫn nó để bảo vệ trường hợp nếu bạn muốn sử dụng User làm tên người dùng:

postgres=# create role "User" login createdb;

Tốt hơn hết bạn nên tạo một người dùng cho mỗi ứng dụng.

Bạn sẽ muốn thực hiện những điều tương tự cho test của mình mục nhập trong database.yml nữa.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mười cách để mở rộng chức năng của PostgreSQL

  2. Hệ thống lại khóa ngoại cho các trường

  3. Mẫu &Công cụ sửa đổi mẫu cho Định dạng số trong PostgreSQL

  4. Triển khai &Cấu hình PostgreSQL với Con rối

  5. Khi nào tên cột hoặc bảng Postgres cần dấu ngoặc kép và khi nào thì không?