Mar*_*k D 3 mysql phpmyadmin mysql-workbench csv 18.04
我正在尝试将 CSV 文件导入表中,但速度非常慢。我有大约 1000 个文件,每个文件大小为 40 MB。每当我尝试导入它时,我都可以看到例如 MySQL 工作台它以每秒大约 30 - 60 行的速度插入。处理我的所有文件需要很长时间。我怎样才能加快速度?我已经将 mysql.cnf 文件修改为以下配置,不幸的是它没有加快速度:
/etc/mysql/conf.d/mysql.cnf
[mysqld]
innodb_buffer_pool_size=12G
innodb_io_capacity = 2000
innodb_read_io_threads = 48
innodb_thread_concurrency = 0
innodb_write_io_threads = 48
innodb_buffer_pool_size=12G
innodb_log_file_size = 512M
max_connections = 1000
max_allowed_packet = 128M
#key_buffer = 1000M
bulk_insert_buffer_size = 1024M
innodb_doublewrite = 0
innodb_flush_log_at_trx_commit = 2
key_buffer_size = 4000M
Run Code Online (Sandbox Code Playgroud)
它确实说根据 PHPMyAdmin 在 InnoDB 中配置了 12G,所以我可以安全地确认配置至少有效。
万一需要的规格:
OS: Ubuntu 18.04
CPU: 6 cores, 12 threads @ 4.5 GHz
RAM: 32 GB DDR4 @ 3.2 GHz
SSD: 1 TB NVME @ 3.5 GB/s Read & 3.3 GB/s Write
Run Code Online (Sandbox Code Playgroud)
你应该看看LOAD DATA
MySQL的功能,或者mysqlimport
工具。
据报道,这两个函数比insert
一个接一个快 20-30 倍,这将使您每秒至少达到 500-1000 行。
由于您没有提供有关数据格式的任何信息,因此很难给出 的详细使用说明mysqlimport
,这似乎是最适合您情况的工具。
归档时间: |
|
查看次数: |
2793 次 |
最近记录: |