Django 1.10.5およびPostgreSQL 9.5を使用して、アプリケーションサーバからリモートDBサーバへの移行を試みています。これらは別々のUbuntu 16.04 EC2インスタンスです。私は、アプリケーションサーバーではなく、リモートDBサーバーにPostgreSQLをインストールしました。Djangoを使用したリモートデータベースへの移行
私は、DBサーバー上でグローバルにPostgreSQLのインストール:
:私は私のpostgresql.confファイルリッスンアドレスを設定host all all 10.0.59.0/24 trust
:私はpg_hba_confファイルを更新
sudo apt-get update
sudo apt-get install libpq-dev postgresql postgresql-contrib
listen_addresses = '*'
Djangoは、アプリケーションサーバーのconda環境に存在します。私はpsycopg2 == 2.6.2をconda環境にインストールしました。私はpsycopg2をdbサーバにインストールしませんでした。ここで
は私のDjangoのデータベース設定であり、どこのホストは、「DBサーバのIPアドレスです:実行した後
DATABASES: {
"default": {
"ENGINE": "django.contrib.gis.db.backends.postgis",
"NAME": "mysite",
"USER": "postgres",
"PASSWORD": "",
"HOST": "10.0.59.134",
"PORT": "5432"
},
}
:
python manage.py migrate
私は次のエラーを取得:
をTraceback (most recent call last):
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 199, in ensure_connection
self.connect()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 171, in connect
self.connection = self.get_new_connection(conn_params)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/postgresql/base.py", line 176, in get_new_connection
connection = Database.connect(**conn_params)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/psycopg2/__init__.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
psycopg2.OperationalError: could not connect to server: Connection refused
Is the server running on host "10.0.59.134" and accepting
TCP/IP connections on port 5432?
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "manage.py", line 21, in <module>
execute_from_command_line(sys.argv)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
utility.execute()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/core/management/__init__.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/core/management/base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/core/management/base.py", line 345, in execute
output = self.handle(*args, **options)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 81, in handle
connection.prepare_database()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/contrib/gis/db/backends/postgis/base.py", line 24, in prepare_database
with self.cursor() as cursor:
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 231, in cursor
cursor = self.make_debug_cursor(self._cursor())
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 204, in _cursor
self.ensure_connection()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 199, in ensure_connection
self.connect()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/utils.py", line 94, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/utils/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 199, in ensure_connection
self.connect()
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/base/base.py", line 171, in connect
self.connection = self.get_new_connection(conn_params)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/django/db/backends/postgresql/base.py", line 176, in get_new_connection
connection = Database.connect(**conn_params)
File "/home/ubuntu/anaconda3/envs/mysite/lib/python3.6/site-packages/psycopg2/__init__.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
django.db.utils.OperationalError: could not connect to server: Connection refused
Is the server running on host "10.0.59.134" and accepting
TCP/IP connections on port 5432?
両方のEC2インスタンスがカスタムVPCのプライベートサブネットにあります。インバウンドルールとアウトバウンドルールのセキュリティグループ設定は、いずれかのマシンがどのような形式のトラフィックでも許可されるように設定されています。
これはプライベートサブネットのテストサイトなので、パスワードやユーザーはいませんが、今のところはありません。
私はここで何が欠けていますか?
あなたはあなたがそのエラーを得るために何をしているのか言わなかったので、わかりません。あなたがしたことと完全なエラーメッセージを正確に表示してください。 –
こんにちはダニエル。謝罪いたします。私はそれに応じて質問を更新しました。ありがとう。 –