我在重新导入由mysqldump创建的数据库转储时遇到了问题。我使用order by-primary选项运行mysqldump,并使用唯一键(没有显式主键,因此按唯一键排序)在表上运行它。在这种情况下,我的目标是重新创建表格,将唯一密钥嵌入主键中。两个索引条目之间的行吗?
这个转储花了很长时间(大约10天),这将是一个重大的痛苦,屁股再次运行它。我尝试重新导入转储(使用适当的模式更改),但mysql中途窒息。我查看了转储文件,在它窒息的地方 - 它看起来像是有人将垃圾邮件插入转储文件的文本中。
幸运的是,看起来损坏是孤立的,我能够在垃圾发生之前看到钥匙,并且之后。
tl; dr:如果我刚刚拼接出垃圾,我不知道在前一个和后一个之间会丢失多少个键 - 转储按该唯一键排序,因此它使生活更轻松在这方面。 mysql是否有办法检索索引中两个条目之间的所有行?
该键是一个32个字符的十六进制字符串,存储在CHAR(32)类型列中。我很确定我不能在字符串上使用<或>运算符......所以有什么建议?
欢迎来到SO!很复杂的第一个问题。我希望它能找到一个好的答案。 – 2010-01-17 02:22:01