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

Django:quyền bị từ chối khi cố gắng truy cập cơ sở dữ liệu sau khi khôi phục (di chuyển)

Hóa ra là bạn nên cấp quyền sở hữu rõ ràng tất cả các đối tượng trong cơ sở dữ liệu cho chủ sở hữu sau khi khôi phục. Chủ sở hữu không phải là một superuser. Chỉ đặt chủ sở hữu tại thời điểm tạo cơ sở dữ liệu là không đủ. Giải pháp cuối cùng cho việc di chuyển diễn ra như sau:

trên máy khách:

Cơ sở dữ liệu
pg_dump -f dump.sql -Ox database

trên máy chủ:

su postgres    
dropdb database
createdb database -O user
psql database -f dump.sql

và sau đó để đặt các đặc quyền:

psql database -c "GRANT ALL ON ALL TABLES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL SEQUENCES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL FUNCTIONS IN SCHEMA public to user;"

Lưu ý rằng chúng ta có thể chạy lệnh sql trong bảng điều khiển psql nhưng biểu mẫu này có thể dễ dàng nhúng vào các tập lệnh và như vậy.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails 4 session. Thỉnh thoảng là con số không

  2. Mệnh đề KIỂM TRA cho các chế độ xem có thể cập nhật

  3. Có thể chỉ định lược đồ khi kết nối với postgres với JDBC không?

  4. PostgreSQL không chấp nhận bí danh cột trong mệnh đề WHERE

  5. Phạm vi đường ray - nơi khớp chính xác