将Mysql转储文件从INSERT转换为INSERT IGNORE

Gän*_*ian 8 mysql insert mysqldump

我有一个大约40G的巨大转储文件,我需要将其转储回数据库,因为恢复后有一些记录丢失.有没有简单的方法我可以在转储文件中将INSERT转换为INSERT IGNORE以避免重复条目错误?将文件加载到文本编辑器似乎没有问题.非常感谢你提前

dav*_*com 25

mysqldump还有一个开关

--inq-ignore in mysqldump


小智 12

如果您使用类似unix的操作系统,则可以使用sed:

cat file.sql | sed s/"^INSERT"/"INSERT IGNORE"/g > updated.sql
Run Code Online (Sandbox Code Playgroud)

  • mysqldump中的--insert-ignore选项(如下所示)是最佳选择。参见:https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#option_mysqldump_insert-ignore (2认同)