zoukankan      html  css  js  c++  java
  • MySQL数据库快速造大量数据

    这段时间做性能测试,发现数据都是分库写进数据库了,并且要构造大量数据,大概4000万的数据量,用普通的方法,写个MySQL函数,之前测试过,大概200万数据也要跑一个多小时,太慢了. 后面研究发现有个很快的方法, 先写个Java小工具(这样比较灵活了, 可以根据自己的需要构造不同的测试数据), 按照分库规则生成8个文件(项目分库是分8个库), 4000万的数据写进数据库, 20分钟不到就能完成, 速度达3万/s. 使用MySQL的命令 LOAD DATA INFILE:

    LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [PARTITION (partition_name,...)]
    [CHARACTER SET charset_name]
    [{FIELDS | COLUMNS}
    [TERMINATED BY 'string']
    [[OPTIONALLY] ENCLOSED BY 'char']
    [ESCAPED BY 'char']
    ]
    [LINES
    [STARTING BY 'string']
    [TERMINATED BY 'string']
    ]
    [IGNORE number {LINES | ROWS}]
    [(col_name_or_user_var,...)]
    [SET col_name = expr,...]
    命令: LOAD DATA INFILE "/data/mysql/data.txt" REPLACE INTO TABLE t_mytable FIELDS TERMINATED BY '|' LINES TERMINATED BY '
    '
    Java小工具生成的文件格式如下:
    a|b|c|d
    e|f|g|h
    ...
  • 相关阅读:
    Luogu P4727 [HNOI2009]图的同构记数
    ARC 101 E
    JSOI2019 Round2 游记
    JSOI2019 Round1(十二省联考)游记
    Technocup 2019
    Codeforces Round #533 (Div. 2)比赛总结
    学习链接
    2018.12.29-2018.1.9安师大附中集训
    关于考试
    NOIP2018提高组 游记
  • 原文地址:https://www.cnblogs.com/andrew209/p/10011939.html
Copyright © 2011-2022 走看看