sql >> データベース >  >> RDS >> PostgreSQL

Google AppEnginePostgreSQLデータベースを使用してpsycopg2をセットアップする方法

    少し注意が必要ですが、これが私にとってうまくいったことです。 psycopg2を使用してQuickstartAppEngineをセットアップするのを手伝い、その後、アイデアを得ることができます。

    AppEngineフレキシブル環境でのPythonのクイックスタート を使用します アプリをセットアップしてデプロイするためのドキュメント。

    AppEngineから接続 を使用します AppEngineアプリをCloudSQLPostgreSQLに接続するためのドキュメント。

    それを機能させるために、少し変更を加えました:

    app.yaml内 追加:

    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".
    

    requirements.txt内 追加:

    psycopg2
    psycopg2-binary
    

    main.py内 追加:

    @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"
    

    gcloud app deployを使用します アプリをデプロイするコマンド。

    デプロイ後、gcloud app browseを使用します ブラウザでアプリを開くコマンド。

    リンクにアクセスするときhttps://[PROJECT_ID].appspot.com/connect Connection was established!で応答する必要があります




    1. Django開発データベースをデフォルトのSQLiteからPostgreSQLに変更する

    2. Oracleデータベースに保持しながら同時リクエストを処理しますか?

    3. T-SQLを使用してデータベースの互換性レベルを変更する方法

    4. ランダムタプルを取得するためのTablesampleおよびその他の方法