mysql单表快速生成100万条数据

经过测试发现存储过程很慢

本文采用生成文本文件,再导入文本文件的方法


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

/**
 * @author yang
 * @Title: TestMain.java
 * @Package 
 * @Description: 
 * @date 2018年11月21日 9:41
 */
public class TestMain {

    public static void main(String[] args) {
        try {
            // 也可以相对路径, 
            File writeName = new File("C:\\Users\\admin\\Desktop\\log.txt"); 
            //如果没有则要建立一个新的log.txt文件
            writeName.createNewFile(); // 创建新文件,有同名的文件的话直接覆盖
            try (FileWriter writer = new FileWriter(writeName);
                 BufferedWriter out = new BufferedWriter(writer)
            ) {
                for (int i= 1;i<1020304;i++){
                    out.write(i+"\t"+  //自增主键
                            "192.168.4.36"+"\t"+
                            "admin_"+i+"\t"+
                            "0"+"\t"+
                            "增加测试数据\r\n");
                }
                // 	\t为字段间隔
                //  \r\n即为换行
                out.flush(); // 把缓存区内容压入文件
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

    }


}

生成文本文件结构如下,对应数据表的每个字段

1	192.168.4.36	admin_1	0	增加测试数据
2	192.168.4.36	admin_2	0	增加测试数据
3	192.168.4.36	admin_3	0	增加测试数据
4	192.168.4.36	admin_4	0	增加测试数据
5	192.168.4.36	admin_5	0	增加测试数据
6	192.168.4.36	admin_6	0	增加测试数据
7	192.168.4.36	admin_7	0	增加测试数据
8	192.168.4.36	admin_8	0	增加测试数据
9	192.168.4.36	admin_9	0	增加测试数据

然后使用MySQL管理工具(下图使用的是SQLyog)导入TXT

发布了51 篇原创文章 · 获赞 18 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/m0_37882063/article/details/95941670