PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách thiết lập psycopg2 với cơ sở dữ liệu PostgreSQL của Google App Engine

Nó có một chút khó khăn, nhưng đây là những gì đã làm việc cho tôi. Tôi sẽ giúp bạn thiết lập Quickstart App Engine với psycopg2 và sau đó bạn sẽ có được ý tưởng.

Sử dụng Khởi động nhanh cho Python trong Môi trường linh hoạt của App Engine tài liệu để thiết lập và triển khai ứng dụng của bạn.

Sử dụng Kết nối từ App Engine tài liệu để kết nối với ứng dụng App Engine của bạn với Cloud SQL Postgre SQL.

Tôi đã thực hiện một số sửa đổi nhỏ để làm cho điều đó hoạt động:

Trong app.yaml thêm:

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

Trong requirements.txt thêm:

psycopg2
psycopg2-binary

Trong main.py thêm:

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

Sử dụng gcloud app deploy lệnh triển khai ứng dụng của bạn.

Sau khi triển khai, hãy sử dụng gcloud app browse lệnh để mở ứng dụng trong trình duyệt.

Khi truy cập liên kết https://[PROJECT_ID].appspot.com/connect Nó sẽ phản hồi với Connection was established!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đường ray 3.1. Heroku PGError:không tồn tại toán tử:ký tự thay đổi =số nguyên

  2. lựa chọn lồng nhau bằng cách sử dụng số đếm để kiểm đếm từng hàng trong Postgres

  3. Phạm vi đường ray được tạo trong tháng

  4. Tại sao bộ điều hợp PostgreSQL psycopg2 không thành công trong Google App Engine dev_appserver.py?

  5. sqlalchemy, lọc một cột json chứa một mảng