在config/main.php中有一个'db'组件,带有参数等,所以在我的应用中它是通过Yii::app()-〉db访问的。到目前为止,它是相当标准的。现在,问题是-我如何在Yii 1中重新初始化它?
问题是我正在使用一个CRON脚本,在这个脚本中我使用ftp在另一个服务器上传输文件。在某个点上,这需要很多时间。在这之后,脚本试图执行一些db操作,并得到一个db连接消失的错误。由于这个-〉db属性是只读的,我不能打开一个新的并重新分配它。
错误:异常“CDbException”,消息为“CDbCommand无法执行SQL语句:SQL状态[HY 000]:一般错误:2006 MySQL服务器已消失。
到目前为止,我的解决方法是当我需要做一些sql时,我只是使用创建一个新的连接。但应该有一个适当的方法,对吗?
同样,问题是,我如何使用配置文件中指定的参数重新打开默认的数据库连接?
我有急事,请帮帮我。
1条答案
按热度按时间ffvjumwh1#
在Yii1.Yii中使用这行代码::app()-〉db-〉setActive(false); Yii::应用程序()-〉数据库-〉setActive(真);它的工作。