如何在yii2框架下ping mysql服务器

7gs2gvoe  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(473)

我期待能够ping的mysql服务器使用 mysql_ping() ( mysqli_ping() )在yii2框架内。
我现在使用 createCommand() 对于我所有的sql查询,我不太了解如何在这个范围之外使用ping函数。
我甚至不知道如何在go yii中获取sql链接。
我没有任何测试代码,因为我甚至不知道从哪里开始。
任何能帮我指明正确方向的人都将不胜感激。

hgb9j2n6

hgb9j2n61#

yii db组件使用pdo,而pdo没有 mysql_ping() 等价物。你能得到的最接近的东西就是查询 SELECT 1 如果发生异常,请重新连接。

public function ping() {
    try {
        Yii::$app->db->createCommand('SELECT 1')->query();
    } catch (\yii\db\Exception $exception) {
        Yii::$app->db->close();
        Yii::$app->db->open();
    }
}

请注意,如果使用事务,重新连接可能会隐式地导致意外和静默回滚。

相关问题