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
Таблица.
Используйте того же пользователя базы данных, что и веб-приложение.