加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

数据库 – mysqldump – where with =运算符不能获取所有行

发布时间:2021-01-11 05:28:03 所属栏目:编程 来源:网络整理
导读:我有一个特定表的环境,此刻以为它包括4 PB的数据.我知道这听起来很酷,但我担保,它仅限于60GB分区. 该表中有9个字段.个中一个是domain_id字段.它是辨认行的最佳字段,由于它们只有约莫6300个.匹配的独一其他字段选项有高出200万笔记录,而这越发坚苦. 我不能做一

我有一个特定表的环境,此刻以为它包括4 PB的数据.我知道这听起来很酷,但我担保,它仅限于60GB分区.

该表中有9个字段.个中一个是domain_id字段.它是辨认行的最佳字段,由于它们只有约莫6300个.匹配的独一其他字段选项有高出200万笔记录,而这越发坚苦.

我不能做一个直接的mysqldump,由于它会实行输出全部4PB数据并在它靠近之前添补驱动器,以是我必要通过手术删除好对象,烧毁数据库,然后从头建设它.

我信托假如我可觉得每个domain_id记录执行转储,那么我将从中获取大部门可用数据.这就是我想要行使的:

mysqldump -u root --skip-opt -q --no-create-info --skip-add-drop-table 
 --max_allowed_packet=1000000000 database table --where="domain_id=10" 
 > domains10.sql

行使这个我但愿导出具有domain_id 10的每一行.

可是,当我搜查导出时,我只获得1行,可是当我查察db时,有许多行.就仿佛运算符只找到一个,然后放弃.

我试过各类操纵符.行使<或>我可以或许得到更大都据,但导出在数据受损的某些行遏制.颠末6000多次,我不能等闲地缩小出口中受影响的行.

以是,我必要的是一个根基上做我以为=会做的操纵符,只需输出一个与特定字段匹配的全部记录.

还要留意,我获得这个DB乃至可以会见的独一要领是通过innodb逼迫规复3.以是我必要做到这一点,由于在完成之后,我必需删除数据库以使mysql再次运行.

等候任何有效的谜底.

办理要领

从你写的对象看来,数据库已经被粉碎了(以为4PB而不是60GB是一种赠品).

我猜疑你可以获得任何检索信息靠得住性的担保,除非你先修复db.你试过这个吗?

不然,假如你执行“-f”键会产生什么 – 纵然碰着错误也要继承?

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读