MYSQL8.0版本批量导入数据

MYSQL8.0版本批量导入数据,第1张

MYSQL8.0版本批量导入数据

用mysql8.0版本批量导入数据,会存在安全问题,8.0的版本对安全要求比较高,会限制本地数据的导入导出。一个解决方法就是:

1.查看安全路径;show variables like '%secure%'

2.把需要导入的文件,放进安全路径中。

3.然后加载安全路径中的数据;

load data infile "安全路径"

into table 表名

fields terminated by ','

ignore 1 lines

导入时把生成索引给关掉,应该能快一点.

不要一边导入一边建立索引.

8G数据,应该也不那么慢了.

把sql语句文件读取出一部分看看,建表语句中,应当有建立索引的部分,删掉它!

只做建表和插入数据两件事.

还有,看看数据库有没有外键?

尽量在插入数据过程中去掉外键关联.

等数据插入完成之后再加索引和外键,应该能提高很多读写性能.

截取一部分数据,例如100Mb.

插入一下试试,可以预先对整体时间有一个预期.

还有,真的要弄台好点的电脑,或者去借一台,等把数据导入完成之后,把msyql的库文件直接复制出来放自己机器上跑就好.

emm..

再追加点信息,要先搞明白,sql原文件里,到底都执行了哪几类 *** 作?

可能需要你用c之类写点小工具,或者别的什么语言,分块读取并处理文件.

8G..

嗯,还好.

现在内存都够大,否则你都没法直接用软件打开了.

只有8G也可以直接用软件打开看.

停掉索引真的可以大幅度加快插入数据的速度.

建议试一试!

你双击dbf是什么程序打开的?vfp吗?

你可以使用set printer to file abc.sql

list to print

然后使用一个文本编辑器,如emeditor,编辑这个abc.sql,将内容构造为标准的sql语句:

insert into mytable (a,b,c,d,e) values ('dbf_field1','dbf_field2','dbf_field3','dbf_field4','dbf_field5')

然后在mysql administrtor中,将这个abc.sql导入到数据库中就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7401763.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存