MySQL 崩溃(“某些指针可能无效并导致转储中止”)

2024-02-25

我有一个名为“tweets”的 5GB MySQL 数据库,我需要从中访问“searchresults”表。但是,当我对其执行查询或创建转储时,MySQL 服务器(在 Windows 10 上运行)始终崩溃,并在同一行出现相同的错误。

例如,如果我尝试使用以下命令转储数据库:

C:\xampp\mysql\bin>mysqldump.exe --user root --force tweets > D:\secondtry.sql

我在 cmd.exe 窗口中反复收到完全相同的行的以下错误消息:

mysqldump.exe: Error 2013: Lost connection to MySQL server during query when dumping table `searchresults` at row: 5222907

mysqldump.exe: Couldn't execute 'SELECT engine FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 'stats'': MySQL server has gone away (2006)

mysqldump.exe: Couldn't execute 'SET SQL_QUOTE_SHOW_CREATE=1': MySQL server has gone away (2006)

mysqldump.exe: Couldn't execute 'SELECT `COLUMN_NAME` AS `Field`, `COLUMN_TYPE` AS `Type`, `IS_NULLABLE` AS `Null`, `COLUMN_KEY` AS `Key`, `COLUMN_DEFAULT` AS `Default`, `EXTRA` AS `Extra`, `COLUMN_COMMENT` AS `Comment` FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE TABLE_SCHEMA = 'tweets' AND TABLE_NAME = 'stats'': MySQL server has gone away (2006)

mysqldump.exe: Couldn't execute 'UNLOCK TABLES': MySQL server has gone away (2006)

在 mysql_error.log 中,我收到以下消息并且服务器关闭:

Server version: 10.1.8-MariaDB <br/> key_buffer_size=16777216 <br/> read_buffer_size=262144 <br/> max_used_connections=1 <br/>  max_threads=1001 <br/> thread_count=1 <br/> It is possible that mysqld could use up to <br/> key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = <br/> 787099 K  bytes of memory Hope that's ok; if not, decrease some <br/> variables in the equation. 

Thread pointer: 0x0x5b93168 <br/> Attempting backtrace. You can use the <br/> following information to find out where mysqld died. If you see no <br/> messages after this, something went terribly wrong... <br/> mysqld.exe!my_parameter_handler() <br/> mysqld.exe!my_mb_ctype_mb()<br/> mysqld.exe!??0Global_read_lock@@QAE@XZ()<br/> mysqld.exe!??0Global_read_lock@@QAE@XZ()<br/> mysqld.exe!?store_record_for_lookup@Stat_table@@IAEXXZ()<br/> mysqld.exe!??0Global_read_lock@@QAE@XZ()<br/> mysqld.exe!??0Global_read_lock@@QAE@XZ()<br/> mysqld.exe!??0Global_read_lock@@QAE@XZ()<br/> mysqld.exe!?store_record_for_lookup@Stat_table@@IAEXXZ()<br/> mysqld.exe!?store_record_for_lookup@Stat_table@@IAEXXZ()<br/> mysqld.exe!?ha_rnd_next@handler@@QAEHPAE@Z()<br/> mysqld.exe!?rr_sequential@@YAHPAUREAD_RECORD@@@Z()<br/> mysqld.exe!?sub_select@@YA? AW4enum_nested_loop_state@@PAVJOIN@@PAUst_join_table@@_N@Z() <br/> mysqld.exe!?setup_end_select_func@@YAP6A?AW4enum_nested_loop_state@@PAVJOIN@@PAUst_join_table@@_N@Z0@Z() <br/> mysqld.exe!?exec_inner@JOIN@@QAEXXZ() <br/> mysqld.exe!?exec@JOIN@@QAEXXZ()<br/> mysqld.exe!?handle_select@@YA_NPAVTHD@@PAULEX@@PAVselect_result@@K@Z()<br/> mysqld.exe!??0Table_scope_and_contents_source_st@@QAE@ABU0@@Z()<br/> mysqld.exe!?mysql_execute_command@@YAHPAVTHD@@@Z()<br/> mysqld.exe!?mysql_parse@@YAXPAVTHD@@PADIPAVParser_state@@@Z()<br/> mysqld.exe!?dispatch_command@@YA_NW4enum_server_command@@PAVTHD@@PADI@Z()<br/> mysqld.exe!?do_command@@YA_NPAVTHD@@@Z()<br/> mysqld.exe!?threadpool_process_request@@YAHPAVTHD@@@Z()<br/> mysqld.exe!?tp_end@@YAXXZ() <br/> KERNEL32.DLL!SetUserGeoID()<br/> ntdll.dll!TpSimpleTryPost() <br/> ntdll.dll!EtwNotificationRegister()<br/> KERNEL32.DLL!BaseThreadInitThunk()<br/> ntdll.dll!RtlUnicodeStringToInteger()<br/> ntdll.dll!RtlUnicodeStringToInteger()<br/>

Trying to get some variables. Some pointers may be invalid and cause<br/> the dump to abort. Query (0x5b9a908): SELECT /*!40001 SQL_NO_CACHE */<br/>
* FROM `searchresults`  <br/> Connection ID (thread ID): 2  <br/> Status: NOT_KILLED<br/>

到目前为止我已经尝试过:

  1. 我将 my.ini 中的 innodb_force_recovery 设置为 1 和 6
  2. 我对 mysqldump.exe 使用了参数“--force”、“--skip-extended-insert”和“--hex-blob”
  3. 我使用 PHPMyAdmin、MySQLWorkbench 甚至尝试使用 Microsoft SQL 迁移工具将数据库转换为 MSSQL 数据库
  4. 我在 my.ini 中增加了 max_allowed_pa​​cket 选项
  5. 我使用十六进制编辑器找到 .idb 文件中的损坏行并将其删除,但我找不到必须删除的内容
  6. 使用我的备份,但错误已经在那里
  7. “修复表”,但我得到以下响应“表的存储引擎不支持修复”
  8. 使用“ALTER TABLE searchresults ENGINE = InnoDB;”重建表但在重建过程中出现错误。
  9. 将 my.ini 中的 innodb_log_file_size 参数设置为最大值 4G 会引发相同的错误。
  10. 使用不同的计算机

我非常确定第 5222907 或 5222908 行中存在损坏的数据集,这就是服务器崩溃的原因。如果我之后可以访问其余数据,那么丢失一行对我来说完全没问题。我什至可能会丢失前 5222908 行。但是当我无法删除损坏的数据时。如果我使用查询

DELETE FROM searchresults LIMIT 5222908

服务器又崩溃了。

我将非常感谢有关此事的任何提示。这些数据对我来说非常重要,因为我的硕士论文需要它,该论文即将到期。

感谢您的时间和努力!

编辑:这是我的表结构(注意,没有键或索引):

CREATE TABLE `searchresults` (
 `id` bigint(20) DEFAULT NULL,
 `user` varchar(50) CHARACTER SET latin1 DEFAULT NULL,
 `createdAt` timestamp NULL DEFAULT NULL,
 `retweetcount` int(11) DEFAULT NULL,
 `favoritecount` int(11) DEFAULT NULL,
 `message` varchar(500) CHARACTER SET latin1 DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci

编辑:我使用了这样的 INSERT INTO :

SELECT id INTO OUTFILE 'C:/Temp/allCount.csv' FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM searchresults;

根据我选择的列(id、转发计数等),我会得到不同数量的行。它们始终低于 5222907,但这意味着问题仍然可能与参数相关,而不是损坏错误。你怎么认为?你知道我可以在 mysql 配置中调整一些额外的参数吗?


您可以考虑修改 mysql 服务器的这些属性:

纳米/etc/mysql/my.cnf

query_cache_size=16M
key_buffer_size=256M

或者甚至可以尝试增加 mysql 客户端查询的允许执行时间:

SET GLOBAL MAX_STATEMENT_TIME=1000;

在执行查询之前。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL 崩溃(“某些指针可能无效并导致转储中止”) 的相关文章

  • 合并两个 MYSQL SELECT 查询[重复]

    这个问题在这里已经有答案了 可能的重复 如何将两个 Post Category 表 MYSQL SELECT 查询合并为一个 https stackoverflow com questions 12972130 how to combine
  • 有没有办法阻止 SQL Express 2008 空闲?

    我使用 SQL Express 2008 作为 Web 应用程序的后端 问题是 Web 应用程序是在工作时间使用的 因此有时在午餐或休息时间 如果 20 分钟内没有用户登录 SQL Express 将进入空闲状态模式并释放其缓存 我知道这一
  • mysql转储到derby

    我正在使用 derby 在 eclipse 中进行开发 是否可以从 MySQL 转储表并以某种方式将其用于 derby 我知道 ddl 和 dml 对于两个 dbms 来说是不同的 但我正在寻找一种除了转储 导出之外的合适方法 我可以找到两
  • 数据库表设计

    我在选择数据库表的变量类型时遇到问题 有人可以给我一些关于如何选择类型的一般准则吗 以下是我的一些问题 用户 ID 应该是什么 INT 看起来很小 因为设计时应该考虑到大量用户 那么如果不是 INT 还有什么呢 大整数 VARCHAR 难道
  • Sequelize.js 中的自定义或覆盖连接

    我需要使用创建自定义连接条件Sequelize js http sequelizejs com使用 MSSQL 具体来说 我需要加入TableB基于一个COALESCE中的列的值TableA and TableB并最终得到这样的连接条件 L
  • 什么时候应该使用 C++ 而不是 SQL?

    我是一名 C 程序员 偶尔使用 MySQL 来处理数据库 但我的 SQL 知识相当有限 但我肯定愿意改变这一点 目前 我正在尝试仅使用 SQL 查询对数据库中的数据进行分析 但我准备放弃了 转而将数据导入到C 中 用C 代码进行分析 我和同
  • 如果 Row1 = 值 1,则更新其他行

    我有一个小的 php 脚本 用于访问 mySql 数据库 我想在数据库中插入新记录之前查看该数字 值 1 是否等于数据库中的记录 这也在第 1 行 所以我想 查看传入的电话号码是否等于数据库中的电话号码 如果是这样 则必须保持电话号码相同的
  • 无法在 Mac 上启动 MySQL

    使用 Brew 安装后 我无法运行 MySQL 我使用的是 OS X El Capitan 版本 10 11 3 和 MySQL Server 版本 5 7 11 当我启动服务器时 我收到 启动 MySQL 错误 服务器退出而不更新 PID
  • 错误代码:1305。函数或过程不存在

    因此 我在 MySQL 中创建一个函数 然后尝试向用户授予使用该函数的权限 但我无法这样做 这就是我正在做的 DELIMITER USE rxhelp36 scbn DROP FUNCTION IF EXISTS businessDayDi
  • MySQL 排序顺序 - 排序规则?

    我在对 MySQL 中的 char 字段进行排序时遇到困难 问题是重音字符与非重音字符混淆 例如 Abc bd Acc 我认为这可能与整理有关 所以我将表格的排序规则更改为utf8 ut8 bin 看完之后这个帖子 https stacko
  • 如何在MYSQL中将整个字符串小写并保持第一个大写[重复]

    这个问题在这里已经有答案了 我的表栏目 我预期的输出会在列中发生变化 Smith Allen Doyle Dennis Baker Waker 这是我尝试过的 但不起作用 UPDATE TABLE employee SET last nam
  • 如何通过Elasticsearch模糊匹配电子邮件或电话?

    我想通过 Elasticsearch 对电子邮件或电话进行模糊匹配 例如 匹配所有以以下结尾的电子邮件 gmail com or 匹配所有电话开头136 我知道我可以使用通配符 query wildcard email gmail com
  • SQL查询查找表的主键?

    我怎样才能找到哪一列首要的关键使用查询来创建表 这是重复的question https stackoverflow com questions 893874 mysql determine tables primary key dynami
  • mysql自动存储记录创建时间戳

    mysql 有什么方法可以在创建记录时自动将时间戳存储在记录行中 我试图使用时间戳 数据类型 和 current timestamp 作为默认值 但后来意识到每次更新记录时都会更新 我只需要一些可以存储创建时间戳的东西 Thanks Set
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • 在 android 中建立与 MySQL 的池连接

    我需要从我的 Android 应用程序访问 MySQL 数据库 现在所有的工作都通过 DriverManager getConnection url 等等 但我必须从多个线程访问数据库 所以我必须使用连接池 问题1 是 com mysql
  • 通过触发器应用表的列权限

    现在 我有一个名为 Members 的表 其中包含内容 分为联系人数据 银行数据 现在 管理员应该能够创建 更新 删除用户 这些用户保存在另一个表中 该表只能访问管理员 用户应该获得自己的 mysql 用户帐户 管理员还应该能够设置权限 例
  • 通知设置的数据库设计

    用户可以打开或关闭 他的通知设置 帐户 用于通知 例如 更改帐户资料信息 收到新消息等 通知可以通过电子邮件或手机 推送或短信 发送 用户可以只有 1 封电子邮件和多个手机设备 有什么方法可以改进以下数据库设计或者您会采取不同的方式吗 让我
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my
  • 内部 while 循环不工作

    这是我项目网页上的代码片段 这里我想显示用户选择的类别 然后想显示属于该类别的主题 在那里 用户可以拥有多个类别 这没有问题 我可以在第一个 while 循环中打印所有这些类别 问题是当我尝试打印主题时 结果只显示一行 但每个类别中有更多主

随机推荐

  • 使用 Flexbox 和 Overflow 将项目居中

    问题总结 我想要的布局是能够将页面上未知尺寸的图像居中 垂直和水平 如果图像太大而无法适应任一方向 我想显示滚动条 以便用户可以滚动以查看完整图像 我遇到的问题是 当图像太大而无法容纳时 图像的顶部和左侧 取决于被截断的部分 将永远无法滚动
  • C#中可以继承数据注解吗?

    我可以在另一个类中继承 密码 数据注释吗 public class AccountCredentials AccountEmail Required ErrorMessage xxx StringLength 30 MinimumLengt
  • 设置响应内容类型而不使用 HttpServletResponse

    我怎样才能得到HttpServletResponse object在我的弹簧控制器的方法中以便我的应用程序与 Http API 保持松散耦合 谢谢 编辑 实际上我想要的是设置内容类型spring 是否提供了任何方法来实现此目的 而无需将 H
  • Boost 绑定占位符参数等于可变参数模板参数的数量

    我想知道是否可以使用传递给可变参数模板的参数数量作为 boost bind 调用中的占位符 像这样的事情 template
  • SQLite getReadableDatabase() 返回 NULL

    我正在使用 Android 的 SQLite 根据一些文件创建级别数据库 我首先创建一个 SQLiteOpenHelper 并在其上调用 getReadableDatabase 或 getWritableDatabase 以便调用 onCr
  • 为什么Thread.isInterrupted()总是返回false?

    我找到了JavaDoc的方法 返回 true 如果该线程已被中断 否则为假 我认为我对该方法的理解有问题 此外 我可能误解了线程中 中断 的概念 欢迎任何解释 谢谢你 代码片段 在线程定义中 public void run try Do s
  • 如何使用 PDO 的 try-catch 块

    使用 try catch 块时处理 PDO 错误的正确方法是什么 目前我有这样的事情 博客模型 php class BlogModel extends Model public function save id value stmt thi
  • setTimeout() 带有字符串或(匿名)函数引用?快速[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这两种方式哪一种更快 为什么 window setTimeout func 100 Or window setTimeout function
  • 我无法让基本的 bxslider 工作

    好吧 所以别杀我 我是 jquery 和 bxsliders 的新手 但我即将把整个事情押下去 需要一个救世主 我认为我的所有文件都在正确的位置 我只是无法弄清楚这一点 简单的问题 尝试让滑块工作
  • 如果存在混合类型数组,如何为 IN 子句准备语句?

    我正在尝试为 IN 子句编写准备好的语句 其中数组是混合数组 我能够为 call user func array 构建数组 但我无法准备语句 没有显示输出 这是我的 php 代码 search1 array pune india 2014
  • 如何选择所有未分配给 EC2 实例的弹性 IP?

    我正在尝试获取当前未分配给实例的所有弹性 IP 使用以下命令可以轻松获取所有弹性 IP aws ec2 describe addresses 从这里 可以很容易地过滤掉任何没有的结果 AssociationId 但是 我不确定如何使用 qu
  • Interface Builder 不断重置我的自定义 UITableViewCell 的宽度

    我正在使用 Interface Builder 设计自定义 UITableViewCell对于 iPad 应用程序 我有一个专用的 XIB 文件 其中有一个 UITableViewCell 作为其根视图 我可以将 UITableViewCe
  • 根据外键字段在 Django 管理中过滤 list_filter

    我想通过外键指向的表中的字段来过滤我的 list filters 之一 我的模型 class Organisation models Model name models CharField COMPANY COMPANY CHARITY C
  • jQuery 延迟 ajax 缓存

    我读到了最上面的答案这个问题 https stackoverflow com questions 4869609 how can jquery deferred be used关于使用jQuery 延迟 http api jquery co
  • TFS 构建 PowerShell 步骤中的 Robocopy 报告失败但没有错误

    我的 powershell 脚本运行时日志文件中没有报告错误 但 TFS 2015 构建步骤报告错误 我需要执行特殊回电吗 这是一种新的样式构建 而不是基于 XAML 的构建 该脚本没有什么特别的 它调用 robocopy 并且成功发生 这
  • 默认情况下启用 WIX 的 MSI 日志记录

    我目前正在为我的软件编写安装程序 并且真的很想记录安装 我正在使用维克斯 但是 我见过记录安装的唯一方法是更改 reg 作为全局设置 并使用 l v 或类似的东西将其添加为命令行中的命令 我想做的是 安装程序运行后立即记录该安装程序 而不修
  • Werkzeug 引发 BrokenFilesystemWarning

    当我将表单数据发送到 Flask 应用程序时 出现以下错误 它说它将使用 UTF 8 编码 但区域设置已经是 UTF 8 这个错误是什么意思 home virtualenvs project local lib python2 7 site
  • While循环:UnboundLocalError:赋值前引用的局部变量

    我正在使用 python 3 5 因此 我尝试创建一个函数 将 x 和 y 作为正浮点输入 然后计算并返回 R x N y 其中 N 是最大整数 因此 x gt N y 我做了这个功能 def floatme x y N 1 while x
  • 将类型结构的通用列表绑定到中继器

    我在尝试将通用列表绑定到中继器时遇到了一些问题 泛型列表中使用的类型实际上是一个结构体 我在下面构建了一个基本示例 struct Fruit public string FruitName public string Price strin
  • MySQL 崩溃(“某些指针可能无效并导致转储中止”)

    我有一个名为 tweets 的 5GB MySQL 数据库 我需要从中访问 searchresults 表 但是 当我对其执行查询或创建转储时 MySQL 服务器 在 Windows 10 上运行 始终崩溃 并在同一行出现相同的错误 例如