在sae上使用sqlalchemy常见问题

  • 2016-02-03 23:55:49
  • 2093
  • 0

1、“MySQL server has gone away”问题。

​       这个问题特别常见,而且每访问几次数据库就报这个错, 刷新又能变正常。其实, sae里面对这个问题官网是有相关说明的,见:http://www.sinacloud.com/doc/sae/python/faq.html#mysql-gone-away-wen-ti

​      解决方法:给sqlalchemy的POOL_RECYCLE变量赋值 SQLALCHEMY_POOL_RECYCLE = 10, 顾名思义就是把连接池的回收时间设成10s,也就是说,sqlalchemy每隔10s就会去重新创建链接。这样一来就跟sae的mysql的配置一致了。

​2、关于sae 共享型mysql数据库连接的字符串,有个用sqlalchemy链接的一个通用方式,代码如下:

​      

import sae.const  
access_key = sae.const.ACCESS_KEY  
secret_key = sae.const.SECRET_KEY  
appname = sae.const.APP_NAME  

SQLALCHEMY_DATABASE_URI = 'mysql://%s:%s@w.rdc.sae.sina.com.cn:3307/app_%s'%(access_key,  secret_key,  appname)

 

​       


发表评论

* *