После восстановления PostgreSQL я получаю «разрешение отклонено для отношения django_session» - PullRequest
10 голосов
/ 20 февраля 2010

В настоящее время я использую свой сайт Django 1.1.1 с PostgreSQL 8.4.2 как на живом сервере, так и локально. Когда я пытаюсь восстановить одну из моих резервных копий с живого сервера на моем локальном компьютере, я получаю следующую ошибку при локальном доступе к моему сайту (http://localhost:8000):

Exception Type: ProgrammingError at /
Exception Value: permission denied for relation django_session

Я также получаю похожую ошибку при доступе ко всему содержимому одной из моих моделей:

$ python manage.py shell
Python 2.6.4 (r264:75706, Dec  7 2009, 18:45:15) 
[GCC 4.4.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from myapp.models import MyModel
>>> MyModel.objects.all()
...
ProgrammingError: permission denied for relation myapp_mymodel

Я использовал pg_dump для резервного копирования на работающем сервере и сбрасывал локальную базу данных, а затем psql dbname < infile для восстановления. Кто-нибудь знает в чем дело?

Ответы [ 3 ]

13 голосов
/ 20 февраля 2010

Вы получаете ту же ошибку при соединении с psql как тот же пользователь (пользователь Django соединяется как)? Или у вас есть те же пользователи PostgreSQL на вашем сайте и на вашем локальном компьютере? Если нет, вы должны сбросить / перезагрузить с параметром -Ox (или --no-owner), чтобы пропустить команды владельца.

0 голосов
/ 21 июня 2018

Я стараюсь со всеми вашими ролями для пользователя с атрибутом SUPERUSER. Это работает.

ALTER ROLE your_role SUPERUSER;
0 голосов
/ 16 января 2018

1) Создать базу данных дампа

$ pg_dump -Fc mydb > db.dump

2) Удалить базу данных

$ dropdb mydb

3) Воссоздать его из свалки

$ pg_restore -C -d postgres db.dump
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...