首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysqli::query():(HY000/1194)

问mysqli::query():(HY000/1194)
EN

Database Administration用户
提问于 2018-06-18 14:04:47
回答 1查看 786关注 0票数 0

我在Azure上有一个带有MySQL数据库的服务器,我们在那里有两个应用程序,有时我们会在代码上看到这个错误:

警告: mysqli::query():(HY000/1194):表'noticia‘标记为崩溃,应在第122行的D:\home\site\wwwroot\classes\ConnectionFactory.php中进行修复

一些问题:

  1. 什么样的事情会导致这个错误?
  2. 为了找出错误的原因,我可以在哪里找到日志?
  3. 这会不会是PHP的问题?

这太奇怪了,因为几年来我一直使用同一个ConnectionFactory类连接到数据库,这是我们第一次收到这个错误。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2018-06-18 20:59:52

我猜想这是一个MyISAM表。这些都不安全。另一方面,InnoDB表是。

  1. 可能有几个原因,例如:
    • 磁盘故障
    • VM重新启动或崩溃
    • mysql守护进程崩溃-如果mysql守护进程崩溃,打开的MyISAM表可能崩溃。

另见:为什么MySQL表会崩溃?我该怎么预防呢?

  1. 默认情况下,MySQL错误日志位于datadir中。默认情况下,文件名是带有后缀‘..err’的主机的名称。
  2. 我不这么认为,除非PHP设法使mysql守护进程崩溃。

您可以通过发出如下所示的修理桌子命令来实现mysql:

代码语言:javascript
复制
REPAIR TABLE your_database_name.noticia;

或者,在命令shell中,您可以运行类似的命令来检查和修复所有表:

代码语言:javascript
复制
mysqlcheck -u root -p --auto-repair --check --all-databases
票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/209930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档