首页 > 数据库 >mysql配置提高数据插入效率

mysql配置提高数据插入效率

时间:2022-12-09 15:00:20浏览次数:41  
标签:set log show global 插入 innodb io mysql 效率

innodb_buffer_pool_size
innodb_buffer_pool_size 默认值为32M,可以设置成128M。

该参数表示mysql 的Innodb存储引擎为优化查询性能而开辟出的一块内存缓冲区

show global VARIABLES like 'innodb_buffer_pool_size'

set global innodb_buffer_pool_size=1024*1024*128;

innodb_flush_log_at_trx_commit
innodb_flush_log_at_trx_commit 默认值为1;设置为0,可以提高写入速度。

值为0:提升写入速度,但是安全方面较差,mysql服务器宕机可能会造成数据丢失。

值为1:每一次事务提交或者事务外的指令都需要把日志写入硬盘,此过程消耗时间较长;

show global variables like '%innodb_flush_log_at_trx_commit%'

set global innodb_flush_log_at_trx_commit=0;


innodb_autoextend_increment
innodb_autoextend_increment 默认值是8M,可以设置成128M

此配置项作用主要是当tablespace 空间已经满了后,需要MySQL系统需要自动扩展多少空间,每次tablespace 扩展都会让各个SQL 处于等待状态。增加自动扩展Size可以减少tablespace自动扩展次数。

show global variables like '%innodb_autoextend_increment%'

set global innodb_autoextend_increment = 128;

innodb_log_buffer_size
innodb_log_buffer_size默认值是1M,可以设置成64M

此配置项作用设定innodb 数据库引擎写日志缓存区;将此缓存段增大可以减少数据库写数据文件次数。

show global variables like '%innodb_log_buffer_size%'

set global innodb_log_buffer_size = 1024*1024*64;

innodb_log_file_size
innodb_log_file_size 默认值是48M,可以设置成128M

show global variables like '%innodb_log_file_size%'

set global innodb_log_file_size = 1024*1024*128;

innodb_write_io_threads & innodb_read_io_threads
innodb_write_io_threads & innodb_read_io_threads 默认值4,允许值的范围是1~64,建议根据服务器核心数进行修改,8核就设置成8。

show global variables like '%innodb_write_io_threads%'
set global innodb_write_io_threads = 8;

show global variables like '%innodb_read_io_threads%'
set global innodb_read_io_threads = 8;

innodb_io_capacity & innodb_io_capacity_max
innodb_io_capacity & innodb_io_capacity_max 默认是200,2000,可以调整成2000,10000。

show global variables like 'innodb_io_capacity%'

set global innodb_io_capacity = 2000;
set global innodb_io_capacity_max = 10000;

 

原文:https://blog.csdn.net/weixin_38959210/article/details/125444945

标签:set,log,show,global,插入,innodb,io,mysql,效率
From: https://www.cnblogs.com/guanxiaohe/p/16968943.html

相关文章

  • 将一个表中一列数据 更新/插入 到另一个表中
    更新(3条消息)MySql将一个表中的某些字段更新到另一个表中(多表联合更新)_书香水墨的博客-CSDN博客_数据库中把一个表的字段更更新到另外的表中UPDATEdownload_info_n......
  • Mysql:mysql行转列(数值行和字符行)
    数值行转列建表DROPTABLEIFEXISTStb_score;CREATETABLEtb_score(idINT(11)NOTNULLauto_increment,useridVARCHAR(20)NOTNULLCOMMENT'用户id'......
  • vue fullcalendar日历拖拽插入整理
    <!--交易时间管理--><template><divclass="container"><Row><Colspan="6"><divclass="module-title">假期列表</div><divclass="......
  • Mysql 日期大小比较
    Mysql日期大小比较​​mysql时间参数年月日时分秒比较大小​​​​mysql时间参数年月日比较大小​​mysql时间参数年月日时分秒比较大小<selectid="checkTimeR......
  • Mysql开启ssl加密协议及Java客户端配置操作指南
    Mysql开启ssl加密协议及Java客户端配置操作指南​​Mysql配置​​​​验证Mysql开启SSL​​​​Java客户端操作​​​​生成证书密码​​​​配置数据库连接​​​​工具配......
  • mysql8数据类型汇总
    数据类型之enum在Mysql中的Enum数据类型补充:enum类型NOTNULL的时候,默认值是下标为1的值['男','女']的默认值是'男'......
  • ubuntu20.04下安装mysql5.7后,允许远程登录
    1、在mysql的配置文件中设置bind-address=0.0.0.0 2、在databasemysql中设置root用户的host为% 安装deb后使用apt-cachepolicymysql-server查看......
  • mac Django 连接mysql
    目录macdjango2.2正确连接mysql方式问题描述macdjango2.2正确连接mysql方式macDjango电脑连接mysql时候会出现一些错误,因为版本问题。以下操作Django2.2.22亲测有效......
  • 基于Python+Django+Vue+MYSQL的社团管理系统
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......
  • 一键部署MySQL8+keepalived双主热备高可用
    概述本次的文章会格外的长,网上大多的配置流程已经不可使用,本篇文章可以称为保姆级教程,而且通过shell脚本大大减少了部署mysql主从,双主的工作量。如上图,VIP地址为192.168......