问题标签 [mysqlcheck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
840 浏览

mysql - mysqlcheck 返回错误

我有 4 个MySQL数据库虚拟机,都具有相同的 HD/RAM 架构。服务器版本:5.6.27 - MySQL 社区服务器 (GPL)

mysqlcheck在每台机器上运行命令:

$ mysqlcheck -u 用户名 -pPASSWORD --auto-repair --check --all-databases

顺便说一句,这些机器上只存在 MyISAM 表。4 台机器中有 3 台看起来不错。但是,一台机器给了我以下响应:

这个特定的 MySQL 服务还没有数据库(减去典型的mysql, information_schema, performance_schema)。考虑到我从第一个虚拟机中克隆了每个虚拟机,我没想到会有任何真正的差异。

这是一个独特的宇宙怪事,我需要重新开始吗?或者以前有没有人遇到过mysqlcheck命令的这种反应?

0 投票
1 回答
1364 浏览

mysql - 如何在 mysqlcheck 中跳过数据库

有一个命令可以优化和修复所有数据库

如何从此过程中跳过数据库?--skip-database=DATABASE_NAME 似乎不起作用

0 投票
1 回答
3781 浏览

mysql - 如何修复有问题的 MySQL InnoDB 表?

我们公司正在将 SailPoint IIQ 用于其 IAM 解决方案。

尝试运行时: delete IdentityRequest *

我得到一个错误sailpoint.tools.GeneralException: null index column for collection: sailpoint.object.IdentityRequest.items

执行 aselect * from spt_identity_request_item where id is null;不会返回任何结果。

我正在伸手去拿吸管,并试图修理桌子,以防万一是导致问题的原因。他们用于数据库的表类型是 innodb。

repair table spt_identity_request_item;产生一个注释The storage engine for the table doesn't support repair

我也试过这个命令:

sudo mysqlcheck --repair --databases identityiq -u identityiq -p

当它运行时,它给出了一堆注释:

note : The storage engine for the table doesn't support repair

该命令实际上是否在修复问题?如果没有,有没有办法修复这个以及如何修复?

0 投票
1 回答
114 浏览

mysql - 检查/修复崩溃的 MySQL 表所需的最低权限是多少

我正在将 mysqlcheck 命令用于自动化脚本。我想为运行脚本的用户提供能够使用 --all-databases 和 --repair 参数成功运行命令所需的最低权限。

0 投票
1 回答
1077 浏览

mysql - mysqldump / mysqlcheck时MySQL崩溃

每次我尝试备份或检查 Windows 服务器 2012 上的所有表 mysql 服务器崩溃时,我都在我的开发环境中使用 XAMPP 堆栈。数据库加密在 DB 中有 1100 多个表。我包括下面的日志。

InnoDB:页面转储结束 2017-09-24 13:58:35 7dc InnoDB:未压缩页面,在字段 1 中存储校验和 2521749199,为字段 1 计算校验和:crc32 2344073126,innodb 1121903210,无 3735928559,在字段 2 中存储校验和 0,计算校验和对于 field2:crc32 2344073126,innodb 2892594725,无 3735928559,页面 LSN 0 2936733816,页面末尾 0 的 LSN 低 4 字节,页码(如果已存储到页面)34,空间 id(如果使用 >= MySQL-4.1 创建。 1 并已存储)1767 InnoDB:页面类型 17855 含义 INDEX InnoDB:页面可能是索引页,其中索引 id 为 1522 InnoDB:(表“crypto”的索引“PRIMARY”。“300-token”)2017-09-24 2012 年 13:58:35 [错误] InnoDB:您的操作系统也可能损坏了自己的文件缓存。2017-09-24 13:58:35 2012 [错误] InnoDB:并重新启动计算机会消除错误。2017-09-24 13:58:35 2012 [错误] InnoDB:如果损坏的页面是索引页面,您也可以尝试 2017-09-24 13:58:35 2012 [错误] InnoDB:通过转储修复损坏,删除并重新导入 2017-09-24 13:58:35 2012 [错误] InnoDB:损坏的表。您可以使用 CHECK 2017-09-24 13:58:35 2012 [ERROR] InnoDB: TABLE 来扫描您的表是否损坏。2017-09-24 13:58:35 2012 [错误] InnoDB:另请参阅http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html关于强制恢复。2017-09-24 13:58:35 7dc InnoDB:文件 buf0lru.cc 第 2394 行中线程 2012 中的断言失败 InnoDB:断言失败:bpage->buf_fix_count == 0 InnoDB:我们故意生成内存陷阱。InnoDB:向http://bugs.mysql.com提交详细的错误报告。InnoDB:如果你得到重复的断言失败或崩溃,即使是 InnoDB: 在 mysqld 启动后立即,也可能存在 InnoDB: InnoDB 表空间损坏。请参考 InnoDB:http ://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html InnoDB:关于强制恢复。170924 13:58:35 [错误] mysqld 出现异常 0x80000003 ;这可能是因为您遇到了错误。此二进制文件或与之链接的库之一也可能已损坏、构建不正确或配置错误。此错误也可能是由硬件故障引起的。

要报告此错误,请参阅https://mariadb.com/kb/en/reporting-bugs

我们将尽最大努力收集一些信息,希望能帮助诊断问题,但由于我们已经崩溃,肯定有问题,这可能会失败。

服务器版本:10.1.22-MariaDB key_buffer_size=16777216 read_buffer_size=262144 max_used_connections=1 max_threads=1001 thread_count=1 mysqld可能最多使用key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 787106 K字节内存 希望没问题; 如果不是,减少方程中的一些变量。

线程指针:0x0 正在尝试回溯。您可以使用以下信息找出 mysqld 死在哪里。如果您在此之后没有看到任何消息,则说明出现了严重错误... mysqld.exe!my_parameter_handler() mysqld.exe!my_wildcmp_mb_bin() mysqld.exe!?save_in_result_field@Item@@UAEX_N@Z() mysqld.exe!?save_in_result_field @Item@@UAEX_N@Z() mysqld.exe!?save_in_result_field@Item@@UAEX_N@Z() mysqld.exe!?save_in_result_field@Item@@UAEX_N@Z() mysqld.exe!?save_in_result_field@Item@@UAEX_N @Z() KERNEL32.DLL!BaseThreadInitThunk() ntdll.dll!RtlInitializeExceptionChain() ntdll.dll!RtlInitializeExceptionChain() http://dev.mysql.com/doc/mysql/en/crashing.html的手册页包含信息这应该可以帮助您找出导致崩溃的原因。

我希望有人能帮助我谢谢。

0 投票
1 回答
413 浏览

mysql - MySQL:mysqlcheck 占用太多磁盘空间来执行操作

每个星期六早上 8 点,我都会编写以下sh脚本来维护我的所有数据库。我mysqlcheck--check,--optimize--analyze.

这是脚本:

问题是,当它.sh运行时,它会占用大量磁盘空间。这是我的 Amazon RDS 可用磁盘空间的屏幕截图:

在此处输入图像描述

这三个命令中的哪一个占用了这么多磁盘空间来制作它们mysqlchecks--check,--optimize--analyze? 还是他们三个?

我在官方文档中找不到任何关于此的内容。

提前致谢。

0 投票
1 回答
4201 浏览

mysql - mysqlcheck 返回错误信息 mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) 尝试连接时

我正在执行 mysqlcheck 命令,例如root@com-dev:/var/lib/mysql# mysqlcheck databasedirectory,您会认为 root 可以访问任何文件系统,但它返回此错误消息,不知道该怎么做。

mysqlcheck:得到错误:1045:尝试连接时用户'root'@'localhost'的访问被拒绝(使用密码:NO)

如何克服这个错误?

0 投票
1 回答
31 浏览

mysql - 如何验证一个表的每一行是否与 MySQL 中另一个表的至少一行相关联?

我正在尝试验证在我的数据库的表中,每一行都与另一个表的至少一行相关联。

特别是我有这3张桌子:

好的!因此,“Product_Personage”表表达了产品和人物之间的多对多关系。我想检查如果产品表中的一行将“类别”属性设置为“漫画”,那么该产品必须在 Product_Personage 表中至少出现一次。

在代码中,我在产品表中留下了我认为正确的做法。那就是检查。

我正在使用 MySQL,执行此代码时出现错误:

做这样的检查是否有意义,如果是这样,像我一样写它是否正确?谢谢大家!

0 投票
0 回答
196 浏览

mysql - mysqlcheck 不会修复表 (errno: 2)

我正在尝试通过 mysqlcheck 命令修复一些损坏的表,但它返回以下“errno 2”错误:

我什至不需要存储在我无法修复的表中的信息,只要我可以修复没有信息的表就可以了。

您是否碰巧知道是否有任何方法可以修复损坏的表?

0 投票
1 回答
124 浏览

mysql - WP CLI 声称数据库需要修复,但 WP 本身可以工作

我在部署/升级脚本中使用 wp-cli。我目前收到以下错误wp core is-installed(我的脚本使用 wp cli 执行的第一个命令)

错误:一个或多个数据库表不可用。数据库可能需要修复。

所以我跑去mysqlcheck --all-databases --check --extended查看数据库错误是什么,但它报告所有表都正常!

此外,该站点本身似乎可以正常工作(可以登录管理员、查看页面等),因此一方面感觉这是一个 wp-cli 问题,但另一方面来自 wp 核心或数据库。

有没有人有任何想法我可以开始寻找?除了我们经常收到的一些警告外,apache 日志中没有任何内容。

运行 WordPress 5.4.2 和 wp-cli 2.4.0。第一次出现错误时,我们在较早更新 WP 版本后没有运行“升级”例程,但我进入管理员并单击“升级网络”。这成功了,但 cli 仍然失败。

数据库为 10.4.13-MariaDB,PHP 版本为 7.3.19。在 CentOS Linux 上运行。

检查了 mariadb.log(感谢@nbk)。运行站点或 wp-cli 命令时没有任何反应。但是,当我运行mysqlcheck命令时,会出现一些错误,例如:

option_name[错误] InnoDB:表中的索引记录顺序错误myschemawp_options

我想我会尝试导出/重新导入整个架构