如何解决MySQL导入没有复制的1 TB文本文件
使用MySQL将大约980 GB的文件导入数据库时,我遇到了一些问题! 该文件是单词列表,其中包含逐行写入的单词,只有没有任何内容的单词。此文件为utf-8编码,我的表和数据库具有相同的编码-utf8mb4。 为此,我创建了表格:
CREATE TABLE IF NOT EXISTS test_wordlists( id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT,password VARCHAR(200) NOT NULL UNIQUE KEY) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=1;
具有自动递增功能和唯一索引,用于删除重复项,并使用命令导入:
LOAD DATA LOCAL INFILE 'path_to_my_wordlists.txt' IGNORE INTO TABLE all_wordlists CHARACTER SET utf8mb4 LINES TERMINATED BY '\n' (password);
但这对我来说很长,我等不了那么久。 有谁能够帮助我 ?如何将没有重复的980 GB文件导入数据库? 另外,我已经通过以下命令使用了MySQL Shell导入数据库:
util.import_table("path_to_my_wordlists.txt",{"schema": "wordlists","table": "all_wordlists","columns":["password"],"skipRows": 0,"showProgress": "true","linesTerminatedBy": "\n","bytesPerChunk": "2G","maxRate": "4G","replaceDuplicates":"true","threads": "8"});
但是我一直都收到此错误:"MySQL Error 1213 (40001): Deadlock found when trying to get lock; try restarting transaction @ file bytes range [8000000030,10000000045): LOA"
请帮助!
我正在将Ubuntu 18.04与最新的MySQL服务器一起使用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。