簡體   English   中英

在Heroku中,如何從其他服務器連接PostgreSQL?

[英]In Heroku, how I connect PostgreSQL from another server?

我在Heroku中創建了一個App Python:Django,在設置中,我從Amazon WS建立了一個數據庫,因此當Deploy完成時,將出現另一個配置。

我的設置

DATABASES = {  
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'myAppDb',
        'USER': 'UserAppDb',                     
        'PASSWORD': 'some_password',                 
        'HOST': 'myAppDb.cohkbwwvlbxi.us-west-2.rds.amazonaws.com',                    
        'PORT': '7878',
    }
}

在控制台heroku中,我有這個:

heroku run bash
python
from myapp import settings
setting.DATABASES
{'default': {'NAME': 'd7kqa751lkhqo6', 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'ec2-74-75-228-85.eu-west-1.compute.amazonaws.com', 'USER': 'hzhpegboxtikxk', 'PORT': 5432, 'PASSWORD': 'XfiPl1tJZB9Znk22b5UQmeYD2u', 'CONN_MAX_AGE': 500}}

在這種情況下: NAMEHOSTUSERPORT´, PASSWORD完全不同,然后我進行設置。

我做錯了還是沒有做?

您正在使用從dj_database_url獲得的值覆蓋數據庫。 這是從Heroku注入的環境變量DATABASE_URL提取的。 在命令行中,運行heroku config來查看它的設置-它會與您在控制台會話中看到的內容匹配。

您可以1)覆蓋該變量(通過heroku config:set )或2)創建新變量(也通過heroku config:set )並通過dj_database_url.config(env='MY_ENV_VAR')告訴dj_database_url使用該變量dj_database_url.config(env='MY_ENV_VAR')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM