使用source命令导入慢问题
GreatSQL版本:8.0.32-26导入文件大小:1.7G
导入时间:15:26 ~ 16:05
耗时:
配置:
socket = /data/soft/GreatSQL/mysql.sock
default-character-set = utf8mb4
loose-skip-binary-as-hex
prompt = "(\\D)[\\u@GreatSQL][\\d]>"
no-auto-rehash
default-character-set = utf8mb4
user = mysql
#port = 3306
#server_id = 3306
basedir = /usr/
#datadir = /data/soft/GreatSQL
#socket = /data/soft/GreatSQL/mysql.sock
pid-file = mysql.pid
character-set-server = utf8mb4
collation-server = utf8mb4_0900_ai_ci
init_connect = "SET NAMES utf8mb4 COLLATE utf8mb4_0900_ai_ci"
skip-character-set-client-handshake
skip_name_resolve = ON
default_time_zone = "+8:00"
bind_address = "0.0.0.0"
secure_file_priv = /data/soft/GreatSQL
# Performance
lock_wait_timeout = 3600
open_files_limit = 65535
back_log = 1024
max_connections = 1024
max_connect_errors = 1000000
table_open_cache = 2048
table_definition_cache = 2048
sort_buffer_size = 4M
join_buffer_size = 4M
read_buffer_size = 8M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 64M
thread_cache_size = 768
interactive_timeout = 600
wait_timeout = 600
tmp_table_size = 96M
max_heap_table_size = 96M
max_allowed_packet = 64M
net_buffer_shrink_interval = 180
sql_generate_invisible_primary_key = ON
loose-lock_ddl_polling_mode = ON
loose-lock_ddl_polling_runtime = 200
# Logs
log_timestamps = SYSTEM
log_error = mysqld.log
log_error_verbosity = 3
# 慢查询日志
slow_query_log = ON
log_slow_extra = ON
slow_query_log_file = slow.log
long_query_time = 0.01
log_queries_not_using_indexes = ON
log_throttle_queries_not_using_indexes = 60
min_examined_row_limit = 100
log_slow_admin_statements = ON
log_slow_replica_statements = ON
log_slow_verbosity = FULL
# binlog
log_bin = binlog
binlog_format = ROW
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 6G
max_binlog_size = 1G
binlog_space_limit = 500G
binlog_rows_query_log_events = ON
binlog_expire_logs_seconds = 604800
binlog_checksum = CRC32
binlog_order_commits = OFF
gtid_mode = ON
enforce_gtid_consistency = ON
# InnoDB
innodb_buffer_pool_size = 8G
innodb_buffer_pool_instances = 8
innodb_data_file_path = ibdata1:12M:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_redo_log_capacity = 4G
innodb_doublewrite_files = 2
innodb_max_undo_log_size = 4G
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_open_files = 65534
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 4000
innodb_lock_wait_timeout = 10
innodb_rollback_on_timeout = ON
innodb_print_all_deadlocks = ON
innodb_online_alter_log_max_size = 4G
innodb_print_ddl_logs = ON
innodb_status_file = ON
innodb_status_output = OFF
innodb_status_output_locks = ON
innodb_sort_buffer_size = 64M
innodb_adaptive_hash_index = OFF
innodb_numa_interleave = OFF
innodb_spin_wait_delay = 20
innodb_print_lock_wait_timeout_info = ON
innodb_change_buffering = none
kill_idle_transaction = 300
innodb_data_file_async_purge = ON
#innodb monitor settings
#innodb_monitor_enable = "module_innodb,module_server,module_dml,module_ddl,module_trx,module_os,module_purge,module_log,module_lock,module_buffer,module_index,module_ibuf_system,module_buffer_page,module_adaptive_hash"
#pfs settings
performance_schema = 1
#performance_schema_instrument = '%memory%=on'
performance_schema_instrument = '%lock%=on'
datadir=/data/soft/GreatSQL/3306
socket=/data/soft/GreatSQL/3306/mysql.sock
port=3306
server_id=103306
log-error=/data/soft/GreatSQL/3306/mysqld.log
datadir=/data/soft/GreatSQL/3307
socket=/data/soft/GreatSQL/3307/mysql.sock
port=3307
server_id=103307
log-error=/data/soft/GreatSQL/3307/mysqld.log服务器IO:
MySQL版本:5.7.44
导入文件大小:1.7G
导入时间:15:29 ~ 15:35
耗时:6分钟
配置:
#password = your_password
#port = 3306
#socket = /data/soft/mysql3306/mysql.sock
#default-character-set = utf8mb4
port = 3306
socket = /data/soft/mysql/3306/mysql.sock
datadir = /data/soft/mysql/3306
#skip-external-locking
#skip_name_resolve = 1
key_buffer_size = 256M
max_allowed_packet = 512M
table_open_cache = 512
sort_buffer_size = 16M
read_buffer_size = 16M
read_rnd_buffer_size = 64M
myisam_sort_buffer_size = 64M
thread_cache_size = 4
query_cache_size= 16M
query_cache_type=1
character_set_server = utf8mb4
collation_server=utf8mb4_general_ci
max_connections = 500
innodb_read_io_threads = 4
innodb_write_io_threads = 4
wait_timeout=2880000
interactive_timeout = 2880000
lower_case_table_names=1
event_scheduler=ON
log-bin=mysql-bin
binlog_format=mixed
log_error = /data/soft/mysql/3306/mysql.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /data/soft/mysql/3306/slow.log
log_slow_admin_statements = 1
server-id = 100
expire_logs_days = 30
innodb_buffer_pool_size = 8G
innodb_buffer_pool_instances = 1
innodb_buffer_pool_load_at_startup = 1
innodb_flush_neighbors = 1
innodb_print_all_deadlocks = 1
innodb_sort_buffer_size = 16M
innodb_flush_log_at_trx_commit=2
port = 3307
socket = /data/soft/mysql/3307/mysql.sock
datadir = /data/soft/mysql/3307
#skip-external-locking
#skip_name_resolve = 1
key_buffer_size = 256M
max_allowed_packet = 512M
table_open_cache = 512
sort_buffer_size = 16M
read_buffer_size = 16M
read_rnd_buffer_size = 64M
myisam_sort_buffer_size = 64M
thread_cache_size = 4
query_cache_size= 16M
query_cache_type=1
character_set_server = utf8mb4
collation_server=utf8mb4_general_ci
max_connections = 500
innodb_read_io_threads = 4
innodb_write_io_threads = 4
wait_timeout=2880000
interactive_timeout = 2880000
lower_case_table_names=1
event_scheduler=ON
log-bin=mysql-bin
binlog_format=mixed
log_error = /data/soft/mysql/3307/mysql.log
slow_query_log = 1
long_query_time = 3
slow_query_log_file = /data/soft/mysql/3307/slow.log
log_slow_admin_statements = 1
server-id = 101
expire_logs_days = 30
innodb_buffer_pool_size = 8G
innodb_buffer_pool_instances = 1
innodb_buffer_pool_load_at_startup = 1
innodb_flush_neighbors = 1
innodb_print_all_deadlocks = 1
innodb_sort_buffer_size = 16M
innodb_flush_log_at_trx_commit=2
quick
max_allowed_packet = 512M
user=bakuser
password=Ba0k1@db_pass
no-auto-rehash
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M
interactive-timeout服务器IO:
1. 可以用下面的方法跑dd简单测试I/O性能(你上面的方法要加上oflag参数)
time dd oflag=direct if=/dev/zero of=./zero bs=1M count=20480
2. source方式导入的是串行,不是并行
3. 导入期间,可以关闭双1以提速。不知道什么是双1的话,参考:https://greatsql.cn/docs/8.0.32-26/11-faq/5-faq-others.html#_14-%E4%BB%80%E4%B9%88%E6%98%AF%E5%8F%8C1-%E6%88%96-%E5%8F%8C0 source 慢正常,可以试试 mydumper 并行导入导出 如果允许没有特殊字符的话,可以考虑使用LOAD DATA的方式导入导出,greatsql有并行LOAD DATA,可以参考这个链接:https://greatsql.cn/docs/8.0.32-26/5-enhance/5-1-highperf-parallel-load.html
页:
[1]