2017-12-11 3 views
-1

시간 초과 나는 데이터베이스와 항상이 오류 점점 GAE 임에 서버에 업로드하려고 할 때 :GAE 클라우드 SQL 연결

OperationalError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'xx.xxx.xx.xx' ([Errno 110] connection timed out)") 

내 로컬 컴퓨터에서 mysql을 실행하지 않아도 안정적인 연결을 수행하려고합니다.

도움을 주신 분께 감사드립니다.

답변

0

MySQL 인스턴스를 직접 실행하지 않고도 App Engine의 Cloud SQL을 사용할 수 있습니다. 그렇게하려면 official documentation에있는 정보를 살펴보십시오.

해당 페이지의 corresponding section에서 설명한대로 app.yaml 구성 파일에서 직접 환경 변수를 구성하고 MySQLdb 라이브러리를 가져와야합니다.

개발 및 프로덕션 환경에서 응용 프로그램을 테스트하는 방법에 대한 몇 가지 샘플 코드와 추가 정보를 찾을 수 있습니다.

+0

SQL Alchemy와 함께 플라스크 프레임 워크에서 그렇게 할 수 있습니까? 미안하지만 그 말은 깜빡 했어. 플라스크 및 SQL 연금술을 사용하는 방법에 대한 설명서를 보았지만 "SQLALCHEMY_DATABASE_URI = mysql + pymysql : // [USER_NAME] : [암호] @ 127.0.0.1 : 3306/[DATABASE_NAME]"" 어디에 넣어야하는지 이해하십시오. 링크 : https://cloud.google.com/appengine/docs/flexible/python/using-cloud-sql#setting_up_your_local_environment – Erik17

+0

사실 [App Engine Flexible 문서] (https://cloud.google.com/appengine/docs/flexible/python/using-cloud-sql#setting_connection_strings_and_adding_a_library)에서는 ** Flask ** 및 *를 사용하여 동일한 예를 제안합니다. * SQLAlchemy **. – dsesto

+0

마지막 편집을 보았습니다. 언급 한 명령은 SQLAlchemy를 사용하여 DB에 액세스하기 위해 URI가 포함 된 환경 변수를 내보내는 데 사용됩니다. 대괄호 사이의 항목은 해당 속성으로 대체해야합니다. – dsesto

관련 문제