“MySQL服务器已经消失”的奇怪原因

时间:2016-01-06 13:29:04

标签: php mysql database

尽管有许多关于MySQL错误的问题,但我还没有找到解决问题的方法。

我的(PHP)应用程序需要生成DAL(数据库访问层)。这是通过从命令行调用的php脚本完成的。此脚本从信息模式中读取所有表,并根据该模式生成文件。

直到最近,这一直是我记忆中的工作。每次我开始这个生成过程时,我的“普通”应用程序都会丢失与MySQL服务器的连接。

奇怪的是,我可以使用Sequel Pro等程序连接到数据库。相同的数据库,相同的连接设置,相同的机器

此外,当我尝试使用sudo /usr/local/mysql/support-files/mysql.server restart在命令行上重启MySQL时出现错误:

ERROR! MySQL server PID file could not be found

然后在我杀死之前启动MySQL需要永远。我找到的唯一解决方案是完全重启我的电脑。然后它再次正常工作,直到我重新运行生成脚本。

所以,简历,我有两个问题:

  1. 当我使用信息架构运行脚本时,我的普通应用程序失去了连接MySQL服务器的能力,而其他应用程序仍然可以。
  2. 当发生这种情况时,我无法重启MySQL来解决问题。
  3. 第二个问题显然不如第一个问题重要。我根本不需要重启MySQL。

    生成脚本的作用:

    首先:

    SELECT *
                    FROM INFORMATION_SCHEMA.TABLES
                    WHERE
                        TABLE_SCHEMA=DATABASE() %s AND SUBSTRING(TABLE_NAME, 1, 1)!='_'"
    

    然后在PHP中循环遍历所有表。

    然后这个:

    SELECT * 
                    FROM INFORMATION_SCHEMA.COLUMNS
                    WHERE
                        TABLE_SCHEMA=DATABASE()
                    AND TABLE_NAME=:tableName
    

    然后,脚本的其余部分将根据该信息生成PHP文件。

0 个答案:

没有答案