2014-01-11 185 views
0

我正在从事Symfony2项目,并在symfony初学者工作框架。我使用XAMPP作为网络服务器。一切正常,直到系统重新启动。当我重新启动计算机时,由symfony项目使用的mysql数据库表会自动损坏。重新启动PC后Mysql表损坏

我使用的是Windows 7 Professional 32位操作系统,所以在mysql有没有什么问题?

回答

0

由于多种原因,如MySQL中的硬件 故障,操作系统错误,病毒和错误,MySQL表可能会损坏。 hMailServer 本身不会导致损坏的MySQL表。 hMailServer使用标准化语言通过TCP/IP与MySQL通信 。

此语言中没有任何内容会导致表损坏。

如果MySQL表损坏,您需要修复它。请注意,修复损坏的MySQL表可能会导致数据丢失。因此创建系统备份非常重要。

你怎么知道表是否损坏?

检查hMailServer错误日志。如果在执行SQL语句消息时看到很多错误,那么很可能是一个或多个表损坏了。如果您不确定,请随时在论坛中提问。

1步:确定的MySQL密码

如果你正在使用MySQL的外部版本,你应该已经知道你的MySQL密码。 如果您使用hMailServer附带的内置MySQL版本,则可能不知道密码。要确定它,请按照下列步骤操作:

  1. 运行脚本hMailServer/Addons/Utilities/DecryptBlowfish.vbs。
  2. 输入您的主要hMailServer管理员密码。这是您在安装hMailServer时首次安装 时指定的密码 。点击确定。
  3. 打开hMailserver.ini,位于您的Windows目录或 hMailServer bin目录中。

  4. 将数据库密码从hMailServer.ini复制到“输入 加密密码”对话框。在hMailServer.ini中,您应该看到一条如下所示的 行:[Database] ...
    password = c85dae3cb73394ab 在此示例中,c85dae3cb73394ab是加密的密码。

  5. 单击DecryptBlowfish OK查看您的密码

DecryptBlowfish现在会显示您的密码。保持对话框打开或记住密码。

第2步:连接到服务器

为了能够修复你的表,你需要连接到使用MySQL客户端MySQL服务器。你可以使用SQLyog来做到这一点。

下载并安装SQLyog的

  1. 创建一个新的连接。
  2. 输入您的MySQL服务器的连接信息。如果你使用内置的服务器是 ,你应该输入主机名:本地主机, 用户:root,密码:密码由DecryptBlowfish,端口:3307
  3. 单击连接连接到数据库服务器

步骤3:修复表

按照以下步骤运行SQL语句来修复表。

  1. 在左边的树中,单击hmailserver数据库。
  2. hMailServer数据库现在将处于活动状态。
  3. 在SQLyog窗口的右侧部分,单击查询选项卡。 输入REPAIR TABLE表名,例如REPAIR TABLE hm_messages。
  4. 单击工具栏中的执行当前查询按钮(或选择 编辑 - >执行查询 - >执行当前查询或按F5键)。

MySQL现在应该修复表。表修复后,重新启动MySQL,然后重新启动hMailServer服务。根据哪个表损坏,可能不需要重新启动服务,但我们建议您始终这样做。

Source

+1

您是从某处复制/粘贴这段摘录的吗?如果是这样,请包括来源并避免抄袭。 –

+0

@Vignesh Kumar但是表格损坏了,我在symfony项目中使用过,另一张表仍然保留,因此symfony项目中可能存在任何错误。 –

+0

我已更新源代码。请参阅 –