我有一个python应用程序,在其中,应用程序连接到一个远程数据库。
应用程序: flask+uwsgi+nginx .
数据库:mysql (远程)。应用程序公开从远程数据库为其提供数据的rest。
每天在数据库恢复之后,mysql服务都会在远程数据库中重新启动。我的应用程序与远程数据库之间的连接中断,并开始抛出错误消息。
MySQL server has gone away.
直到我在应用程序中手动重新启动uwsgi服务为止。
sudo service uwsgi restart
远程db中的mysql服务重新启动与我的系统中的uwsgi服务重新启动之间的持续时间是停机时。
我的应用程
当我尝试使用它的远程ip地址连接到本地mysql数据库时,我得到了一个访问被拒绝的消息。当我尝试从外部机器连接到相同的数据库时,它工作正常,没有任何问题。当我使用localhost连接到本地数据库时,它也能很好地工作。例如,如果数据库服务器的ip是1.2.3.4,那么我会得到以下结果:
# From the db server
mysql -u username -h localhost -p #works perfectly
mysql -u username -h 127.0.0.1 -p #works perfectly
mysql -u username -h 1.2.3.4 -p #
需要帮助!我已经从我的ec2安装安全组设置中为mysql (入站和出站端口3306 )设置了远程权限,为mysql数据库中的用户设置了通配符特权(%),在我的/etc/ mysql /my.cnf文件中设置了bind-address=0.0.0.0,仍然无法从我的远程主机连接到mysql。
mysql 5.7版ubuntu 16.04服务器。
我一直在本地设置上做弹性工作,我已经将数据库复制到远程服务器,现在我很难将弹性和a2billing配置到远程数据库,我已经更改了以下文件,但仍然没有连接到远程数据库:
./asterisk/cdr_mysql.conf --> to change for cdr tables
./asterisk/cbmysql.conf --> to change for meetme app
./asterisk/res_mysql.conf --> to change a2billing realtime
./a2billing.conf --> to change main
我连接到MySQL,为我的站点获取动态内容的数据。但是,如果我的远程数据库服务器出现故障,我如何向访问者展示网页缓存或替换呢?
我目前的尝试是从远程FTP服务器加载该页。我将实例化一个试图连接到数据库的类:
public function __construct($cached)
{
$this->con = mysql_connect($host, $user, $pass, $data);
// if we cannot open a connection to mysql then use ftp
if (!