MYSQL数据库数据批量复制问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL数据库数据批量复制问题相关的知识,希望对你有一定的参考价值。

mysql数据库数据是空的,我想批量添加一些数据看看程序的承受力,就是在统一表内批量复制同一条数据一定次数,比如:
a表内有一b和c字段,我添加了一条a:测试。b:测试。的数据,我怎么才能让这条数据批量的在a表里批量复制N条?语句怎么写?
谢谢

group_replication_member_expel_timeout 指定组复制组成员在产生怀疑之后,从组中排除怀疑失败的成员之前等待的时间(以秒为单位)。在产生怀疑之前的最初 5 秒检测时间不计入该时间。直到并包括 MySQL 8.0.20 在内,group_replication_member_expel_timeout 默认值均为 0,这意味着没有等待时间,并且在 5 秒钟的检测时间结束后,可疑成员应立即被驱逐。从 MySQL 8.0.21 开始,该值默认为 5,这意味着在 5 秒钟的检测时间后如果该节点还是不正常,那会在等 5 秒钟,如果可疑成员还是不正常,超过这个时间将被驱逐。
为验证该参数对集群影响,我们通过实验模拟不同时长的网络延迟,然后调整group_replication_member_expel_timeout 值观察该参数值对集群驱逐故障节点的影响。
参考技术A 以下存成sql文件,连接mysql执行,可以循环执行10次插入语句,每次插入(null,null)值:

delimiter//
drop procedure if exists insertData;

delimiter//
create procedure insertData()
begin
declare num int default 0;
set num = 0 ;
while @num < 10 do
insert into tableName
values (null,null);

set @num = @num + 1;
end while;
end;
//

如何向mysql数据库中导入大批量数据?

导入时把生成索引给关掉,应该能快一点.
不要一边导入一边建立索引.
8G数据,应该也不那么慢了.
把sql语句文件读取出一部分看看,建表语句中,应当有建立索引的部分,删掉它!
只做建表和插入数据两件事.
还有,看看数据库有没有外键?
尽量在插入数据过程中去掉外键关联.
等数据插入完成之后再加索引和外键,应该能提高很多读写性能.
截取一部分数据,例如100Mb.
插入一下试试,可以预先对整体时间有一个预期.
还有,真的要弄台好点的电脑,或者去借一台,等把数据导入完成之后,把msyql的库文件直接复制出来放自己机器上跑就好.
emm..
再追加点信息,要先搞明白,sql原文件里,到底都执行了哪几类操作?
可能需要你用c之类写点小工具,或者别的什么语言,分块读取并处理文件.
8G..
嗯,还好.
现在内存都够大,否则你都没法直接用软件打开了.
只有8G也可以直接用软件打开看.
停掉索引真的可以大幅度加快插入数据的速度.
建议试一试!
参考技术A 你双击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导入到数据库中就可以了。

以上是关于MYSQL数据库数据批量复制问题的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL把一张表的数据批量复制到另外一张表

MySQL双主环境复制延时故障处理

PLSQL中批量更新数据

批量修改mysql数据库引擎

用通配符批量同步MySQL部分数据表

如何向mysql数据库中导入大批量数据?