Day: January 21, 2014

  • FreePBX alpha-6.12.65 DB Error: connect failed

    FreePBX alpha-6.12.65 (已升级至 release 3)两天两次出现这样的错误,我想有必要做一下笔记,解决方法很简单,但找解决方法花了不少时间。

    FATAL ERROR
    DB Error: connect failed
    Trace Back
    /var/www/html/admin/libraries/db_connect.php:63 die_freepbx()
    [0]: DB Error: connect failed
    
    /var/www/html/admin/bootstrap.php:103 require_once()
    [0]: /var/www/html/admin/libraries/db_connect.php
    
    /etc/freepbx.conf:9 require_once()
    [0]: /var/www/html/admin/bootstrap.php
    
    /var/www/html/admin/config.php:111 include_once()
    [0]: /etc/freepbx.conf
    
    
    FreePBX DB Error screenshot
    FreePBX DB Error screenshot

    解决方法就是删除 MySQL socket 文件。

    rm /var/lib/mysql/mysql.sock
    

    如果觉得每次发生 DB error 去删除 socket 文件比较麻烦,可以参考一个一劳永逸的办法:Change MySQL socket path for FreePBX

    还有一点值得注意,如果发生这个错误,外网访问是看不到这个错误提示的,甚至内网的子内网也看不到,看上去就像 httpd 未启动。而且,发生了这个错误后,启动时其他服务也受影响,sshd 就不再启动(在我看来逻辑不应该是这样)。