我使用此 gramex.yaml
設(shè)定連接到 OTP 的 MySQL 資料庫(kù):
otp: url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB' table: $TABLE
當(dāng) Gramex 啟動(dòng)時(shí),它會(huì)報(bào)告異常:
InternalError: (pymysql.err.InternalError) (3159, 'Connections using insecure transport are prohibited while --require_secure_transport=ON.')
這個(gè)答案建議傳遞一個(gè)虛擬的 ssl:
字典。
如何將其傳遞給 Gramex 的 FormHandler?
有兩種可能性。如果您沒(méi)有用於連接資料庫(kù)的 SSL 證書(shū),請(qǐng)使用:
otp: url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB' table: $TABLE connect_args: ssl: fake_flag_to_enable_tls: true
如果您有 PEM 格式的 SSL CA 證書(shū),請(qǐng)使用:
otp: url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB' table: $TABLE connect_args: ssl_ca: /path/to/ca-certificate.pem
您可以將任何其他參數(shù)傳遞給 pymysql 連接物件 .