postgresql, ОШИБКА: отказано в разрешении для отношения django_migrations

У меня проблемы с попыткой сделать скрипт для автоматического резервного копирования моей базы данных моего приложения Django.

Вот как я создаю свою базу данных для моего приложения:

sudo -u postgres psql  
CREATE DATABASE dapp;  
CREATE USER backupu WITH PASSWORD 'pass123';  
ALTER ROLE backupu SET client_encoding TO 'utf8';  
ALTER ROLE backupu SET default_transaction_isolation TO 'read committed';  
ALTER ROLE backupu SET timezone TO 'UTC';  
GRANT ALL PRIVILEGES ON DATABASE dapp TO backupu;  
\q  

И это мой скрипт резервного копирования, backup.sh с chmod 777:

export PGUSER='backupu'  
export PGPASSWORD='pass123'  
TODAY=`date +%Y-%m-%d`  
TIME_NOW=`date +%H:%M`  
ARCH_RESP=$TODAY-$TIME_NOW  
pg_dump dentalapp > /home/backupu/backup/backup_$ARCH_RESP.sql  
find /home/backupu/backup/ -name '*.sql' -mtime +2 -exec rm -f {} \;  
unset PGUSER  
unset PGPASSWORD  

Но когда я запускаю его, я получаю эту ошибку:

pg_dump: [archiver (db)] запрос не выполнен: ОШИБКА: в доступе отказано в отношении django_migrations pg_dump: [archiver (db)] запрос был: LOCK TABLE public.django_migrations В РЕЖИМЕ ДОСТУПА К ДОСТУПА

а также:

Ошибка подключения к базе данных "dapp": FATAL: Ошибка аутентификации Peer для пользователя "backupu"

Я попытался добавить эту строку в мой pg_hba.conf

local   all     backupu     md5

Но ошибка не устранена, возможно, отсутствуют некоторые разрешения или требуется больше шагов при создании базы данных. Я уже проверил некоторые другие посты здесь в stackru, но также безуспешно.

я использую локальный сервер с Ubuntu 14.04, nginx, gunicorn и postgresql 9.3

0 ответов

Происходит то, что вы используете пользователя, который не имеет разрешения на django_migrations Таблица.

Используйте того же пользователя базы данных, что и веб-приложение.

Другие вопросы по тегам