最近、postgresql データベースをリモート サーバーに移行しました。以前は、Django を実行していたのと同じマシン上にありました。マシンの負荷を軽くするために、私は動くことに決めました。
しかし、私はいくつかのトラブルに遭遇しました。syncdb を実行すると、テーブルがリモート データベースと同期されました。テーブルが実際に同期されているかどうかを確認し、それらがそこにあることを確認しました。テーブル内にはデータがありません。まだデータを入力していません。しかし、Django の管理ページにアクセスすると、なぜかローカル データベースの古いデータが読み込まれます。
この振る舞いは非常に奇妙だと思います。ローカル データベースを削除することにしましたが、次のエラーが発生しました。
FATAL: database "django_db" does not exist
テーブルはすべてリモート データベース上にあるため、これは奇妙です。ローカル データベースとリモート データベースの両方が django_db と呼ばれます。それが問題でしょうか?
これは私のsettings.pyにあるものです
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'django_db', # Or path to database file if using sqlite3.
'USER': 'django_login', # Not used with sqlite3.
'PASSWORD': 'password', # Not used with sqlite3.
'HOST': 'XX.XXX.X.XX', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '5432', # Set to empty string for default. Not used with sqlite3.
},
}