2010-02-20 12 views
10

Şu anda Django 1.1.1 sitemi hem canlı sunucuda hem de yerel olarak PostgreSQL 8.4.2 ile çalıştırıyorum. tüm içeriğini erişirkenBir PostgreSQL geri yüklemesinden sonra, "django_session ilişkisi için izin reddedildi"

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

Ben de benzer bir hatayı alıyor: Ben yerel kutuyu canlı sunucudan benim yedekten birini geri yüklemeye çalıştığınızda yerel sitemi (http://localhost:8000) erişirken, ben şu hatayı alıyorum benim modellerinden birinin:

$ 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 

Ben canlı sunucuda yedekleme için pg_dump kullanılan ve geri yükleme için psql dbname < infile ardından benim yerel db bırakarak. Neyin yanlış olduğunu bilen var mı?

cevap

13

Aynı kullanıcı olarak psql'ye bağlanırken aynı hatayı alıyor musunuz (kullanıcı Django bağlanır)? Veya canlı sitenizde ve yerel makinenizde aynı PostgreSQL kullanıcılarınız var mı? Aksi takdirde, sahiplik komutlarını atlamak için -Ox (veya --no-owner) seçeneğiyle birlikte bırakmalı/yeniden yüklemelisiniz.

+1

Ben aynı PostgreSQL kullanıcısı olmayan) veritabanı

$ dropdb mydb 

3 Sil) dökümü veritabanı

$ pg_dump -Fc mydb > db.dump 

2 oluştur dökümü onu yeniden oluşturun canlı sitem yerel makinem olarak. -Ox ile dökümü/yeniden yüklemeyi denedim, ancak şimdi farklı bir hata alıyorum: "django_site" ilişkisi yok LINE 1: ... "django_site". "Domain", "django_site". "Name" FROM "django_si ... "Burada neler olabileceği hakkında bir fikrin var mı?" Teşekkür ederim! – mkelley33

+0

@ mkelley33: Bu yeni hatayı neden aldığınızı ve nasıl çözeceğinizi öğrendiniz mi? 'Syncdb' çalıştırılarak yapılması gereken bir şey var mı? Şimdi aynı teknede olduğum için herhangi bir ipucu takdir edilecektir. –

0

1)

$ pg_restore -C -d postgres db.dump 
İlgili konular