sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man ställer in psycopg2 med Google App Engine PostgreSQL-databas

Det är lite knepigt, men här är vad som fungerade för mig. Jag hjälper dig att ställa in Quickstart App Engine med psycopg2 och efter det kommer du att få idén.

Använd snabbstart för Python i App Engine Flexible Environment dokumentation för att konfigurera och distribuera din app.

Använd Ansluta från App Engine dokumentation för att ansluta till din App Engine-app till Cloud SQL Postgre SQL.

Jag har gjort lite ändringar för att få det att fungera:

I app.yaml lägg till:

beta_settings:
  cloud_sql_instances: [INSTANCE_CONNECTION_NAME]=tcp:5432
#[INSTANCE_CONNECTION_NAME] = [PROJECT_NAME]:[INSTANCE_ZONE]:[INSTANCE_NAME]
#[INSTANCE_CONNECTION_NAME] can be found at Google Cloud Console Cloud SQL's instance page, under "Instance connection name".

I requirements.txt lägg till:

psycopg2
psycopg2-binary

I main.py lägg till:

@app.route('/connect')
def connect():
    try:
        #host='172.17.0.1' is the defult IP for the docker container that it is being created during the deployment of the App Engine
        conn = psycopg2.connect("dbname='postgres' user='postgres' host='172.17.0.1' password='test'")
        return "Connection was established!"
    except:
        return "I am unable to connect to the database"

Använd gcloud app deploy kommando för att distribuera din app.

Efter implementeringen använder du gcloud app browse kommandot för att öppna appen i webbläsaren.

När du kommer åt länken https://[PROJECT_ID].appspot.com/connect Den ska svara med Connection was established!




  1. Visa MYSQL-data från en meny

  2. Ordningsföljd för SQL-frågan

  3. Django hur man återansluter efter DatabaseError:fråga timeout

  4. Session fungerar korrekt i Localhost men inte i CPANEL