mysql表缓冲大小可能设置过小_MySQL 5.7 my.cnf配置文件详解

[client]

default-character-set = utf8mb4

[mysql]

#开启 tab 补全

#auto-rehash

default-character-set = utf8mb4

[mysqld]

port=3306

basedir=/data/server/mysql57/

datadir=/data/server/mysql57/data/

socket=/data/server/mysql57/data/mysql.sock

symbolic-links=0

log-error=/data/logs/mysql57/mysqld.log

pid-file=/data/server/mysql57/data/mysqld57.pid

禁用主机名解析

skip-name-resolve

默认的数据库引擎

default-storage-engine = InnoDB

innodb-file-per-table=1innodb_force_recovery = 1#一些坑

group_concat_max_len = 10240sql_mode=expire_logs_days = 7memlock

字符集配置

character-set-client-handshake = FALSE

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci

init_connect='SET NAMES utf8mb4'### GTID

server_id = 330759# 为保证 GTID 复制的稳定, 行级日志

binlog_format = row

开启 gtid 功能

gtid_mode = on

保障 GTID 事务安全

当启用enforce_gtid_consistency功能的时候,

MySQL只允许能够保障事务安全, 并且能够被日志记录的SQL语句被执行,

像create table ... select 和 create temporarytable语句,

以及同时更新事务表和非事务表的SQL语句或事务都不允许执行

enforce-gtid-consistency = true# 以下两条配置为主从切换, 数据库高可用的必须配置

开启 binlog 日志功能

log_bin = mysql57-bin

开启从库更新 binlog 日志

log-slave-updates = on

#slave复制进程不随mysql启动而启动

skip_slave_start=1### 慢查询日志

打开慢查询日志功能

slow_query_log = 1# 超过2秒的查询记录下来

long_query_time = 2# 记录下没有使用索引的查询

log_queries_not_using_indexes = 0slow_query_log_file =/data/logs/mysql57/slow.log

#log=/data/logs/mysql57/all.log

自动修复

记录 relay.info 到数据表中

relay_log_info_repository = TABLE

记录 master.info 到数据表中

master_info_repository = TABLE

启用 relaylog 的自动修复功能

relay_log_recovery = on

在 SQL 线程执行完一个 relaylog 后自动删除

relay_log_purge = 1### 数据安全性配置

wei关闭 master 创建 function 的功能

log_bin_trust_function_creators = on

每执行一个事务都强制写入磁盘

sync_binlog = 1# timestamp 列如果没有显式定义为 not null, 则支持null属性

设置 timestamp 的列值为 null, 不会被设置为 current timestamp

explicit_defaults_for_timestamp=true### 优化配置

优化中文全文模糊索引

ft_min_word_len = 1# 默认库名表名保存为小写, 不区分大小写

lower_case_table_names = 1# 单条记录写入最大的大小限制

过小可能会导致写入(导入)数据失败

max_allowed_packet = 256M

半同步复制开启

#rpl_semi_sync_master_enabled = 1#rpl_semi_sync_slave_enabled = 1# 半同步复制超时时间设置

#rpl_semi_sync_master_timeout = 1000# 复制模式(保持系统默认)

#rpl_semi_sync_master_wait_point = AFTER_SYNC

后端只要有一台收到日志并写入 relaylog 就算成功

#rpl_semi_sync_master_wait_slave_count = 1# 多线程复制

基于组提交的并行复制方式

slave_parallel_type = logical_clock

#并行的SQL线程数量,此参数只有设置 1

#经过测试对比发现, 如果主库的连接线程为M, 只有M < N的情况下, 备库的延迟才可以完全避免。

slave_parallel_workers = 4### 连接数限制

max_connections = 1500# 验证密码超过20次拒绝连接

max_connect_errors = 200# back_log值指出在mysql暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中

也就是说,如果MySql的连接数达到max_connections时,新来的请求将会被存在堆栈中

以等待某一连接释放资源,该堆栈的数量即back_log,如果等待连接的数量超过back_log

将不被授予连接资源

back_log = 500open_files_limit = 65535# 服务器关闭交互式连接前等待活动的秒数

interactive_timeout = 3600# 服务器关闭非交互连接之前等待活动的秒数

wait_timeout = 3600### 内存分配

指定表高速缓存的大小。每当MySQL访问一个表时,如果在表缓冲区中还有空间

该表就被打开并放入其中,这样可以更快地访问表内容

table_open_cache = 1024# 为每个session 分配的内存, 在事务过程中用来存储二进制日志的缓存

binlog_cache_size = 4M

在内存的临时表最大大小

tmp_table_size = 128M

创建内存表的最大大小(保持系统默认, 不允许创建过大的内存表)

如果有需求当做缓存来用, 可以适当调大此值

max_heap_table_size = 16M

顺序读, 读入缓冲区大小设置

全表扫描次数多的话, 可以调大此值

read_buffer_size = 1M

随机读, 读入缓冲区大小设置

read_rnd_buffer_size = 8M

高并发的情况下, 需要减小此值到64K-128K

sort_buffer_size = 1M

每个查询最大的缓存大小是1M, 最大缓存64M 数据

query_cache_size = 64M

query_cache_limit = 1M

提到 join 的效率

join_buffer_size = 16M

线程连接重复利用

thread_cache_size = 64### InnoDB 优化

内存利用方面的设置

数据缓冲区

innodb_buffer_pool_size=2G

日志方面设置

事务日志大小

innodb_log_file_size = 256M

日志缓冲区大小

innodb_log_buffer_size = 4M

事务在内存中的缓冲

innodb_log_buffer_size = 3M

主库保持系统默认, 事务立即写入磁盘, 不会丢失任何一个事务

innodb_flush_log_at_trx_commit = 1# mysql 的数据文件设置, 初始100, 以10M 自动扩展

#innodb_data_file_path = ibdata1:100M:autoextend

为提高性能, MySQL可以以循环方式将日志文件写到多个文件

innodb_log_files_in_group = 3##其他设置

如果库里的表特别多的情况,请增加此值

#innodb_open_files = 800# 为每个 InnoDB 表分配单独的表空间

innodb_file_per_table = 1# InnoDB 使用后台线程处理数据页上写 I/O(输入)请求的数量

innodb_write_io_threads = 8# InnoDB 使用后台线程处理数据页上读 I/O(输出)请求的数量

innodb_read_io_threads = 8# 启用单独的线程来回收无用的数据

innodb_purge_threads = 1# 脏数据刷入磁盘(先保持系统默认, swap 过多使用时, 调小此值, 调小后, 与磁盘交互增多, 性能降低)

innodb_max_dirty_pages_pct = 90# 事务等待获取资源等待的最长时间

innodb_lock_wait_timeout = 120# 开启 InnoDB 严格检查模式, 不警告, 直接报错 1开启 0关闭

innodb_strict_mode=1# 允许列索引最大达到3072

innodb_large_prefix = on

[mysqldump]

开启快速导出

quick

default-character-set = utf8mb4

max_allowed_packet = 256M

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/308504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7-20 表达式转换 (25 分)(代码详解+题目分析)

一&#xff1a;题目 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法&#xff0c;即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。 输入格式: 输入在一行中给出不含空格的中缀表达式&#xff0c;可…

架构思维其实就那么回事

一提到架构&#xff0c;对于工作经验不多的小伙伴来说会心生敬畏之心。觉得是一个很高端、很难、很有挑战的事情。没错&#xff0c;架构不像我们平时的coding工作&#xff0c;这是一个宏观层面的事情。而对我们内心来说&#xff0c;越宏观、越大的东西&#xff0c;我们总会觉得…

python原理及代码_原理+代码|详解层次聚类及Python实现

前言聚类分析是研究分类问题的分析方法&#xff0c;是洞察用户偏好和做用户画像的利器之一。聚类分析的方法非常多&#xff0c;能够理解经典又最基础的聚类方法 —— 层次聚类法(系统聚类) 的基本原理并将代码用于实际的业务案例是本文的目标&#xff0c;同时这也会为理解后续与…

Java但中获取时间将时间转换成字符串格式(年月日格式)

一:直接上马拿走&#xff1a; package cn.wyj.one;import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date;/*** 测试时间对象和字符串之间的相互转化* DateFormat抽象类和SimpleDateFormat实现类的使用* author 86155**/public class Demo2…

常见的C#异常及其修复方法

常见的C&#xff03;异常及其修复方法如果您今天是依靠编写的软件来谋生&#xff0c;那么您可能至少对异常的概念很熟悉。Jeff Atwood曾经称它们为“现代编程语言的基础”。异常[1]是现代软件开发中常见且有用的结构&#xff0c;但有时它们也可能造成混乱。那么什么是异常&…

python连接mysql查询一个数据_使用Connector / Python连接MySQL/查询数据

使用Connector / Python连接MySQLconnect()构造函数创建到MySQL服务器的连接并返回一个 MySQLConnection对象在python中有以下几种方法可以连接到MySQL数据库&#xff1a;1.使用connect()构造函数import mysql.connectorcnx mysql.connector.connect(userscott, passwordpassw…

java当中日期类的相关操作(学习笔记)

一&#xff1a;引言 Calendar类是日历类&#xff0c;提供操作日历字段的方法&#xff0c;其中有常用操作 get 和 set 方法还有 add方法 详细用法请看码 二&#xff1a;上码 package cn.wyj.one;import java.util.Calendar; import java.util.Date; import java.util.Gregori…

一行代码就可以替换n个仓储文件

&#xff08; 且放白鹿青崖间&#xff0c;须行即骑访名山 &#xff09;终于还是要面对这个问题了&#xff0c;一直想着可以逃避它&#xff0c;自从18年就开始纠结这个问题&#xff0c;后来看了DDD&#xff0c;然后也收集了很多的设计思想&#xff0c;发现一个框架除了稳定性&am…

qt 调用qpainter_在Qt5.4中如何实现QOpenGLWidget和QPainter混合编程

在Qt5.4的Example中&#xff0c;有一个例子qopenglwidget&#xff0c;介绍了QOpenGLWidget和QPainter&#xff0c;但是在使用过程中&#xff0c;需要注意哪些方面呢&#xff1f;我在最初使用的时候就遇到两者不能同时使用的问题&#xff0c;经过一番折腾&#xff0c;终于解决了…

JAVA当中Calendar类打印日历表单

一&#xff1a;引言 代码当中注释很详尽&#xff0c;直接上码&#xff1b; 二&#xff1a;上码 package cn.wyj.one;import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date…

redis storm mysql_flume+kafka+storm+redis/mysql启动命令记录

&#xfeff;&#xfeff;1.flume启动bin/flume-ng agent --conf conf --conf-file conf/flume-conf.properties --name fks -Dflume.root.loggerINFO,console2.启动kafka[rootCassandra kafka]# bin/zookeeper-server-start.sh config/zookeeper.properties&[rootCassandr…

基于.NetCore3.1系列 —— 日志记录之日志配置揭秘

前言在项目的开发维护阶段&#xff0c;有时候我们关注的问题不仅仅在于功能的实现&#xff0c;甚至需要关注系统发布上线后遇到的问题能否及时的查找并解决。所以我们需要有一个好的解决方案来及时的定位错误的根源并做出正确及时的修复&#xff0c;这样才能不影响系统正常的运…

c++将字符串转换成 int 类型

#include<bits/stdc.h> using namespace std;int main() {string str "1233";int temp atoi(str.c_str()); //这里的 atoi的其中的i表示int 类型//如果是 float类型 表示成 atof cout << temp*2;}

learnpython3thehardway视频_LearnPython3theHardWay__Excercise 13 Parameters, Unpacking, Variables

建议ex11-14连起来学习,主要讲input参数&#xff0c;拆包&#xff0c;变量我们继续深入学习input()。在这一节&#xff0c;我们能用另一种 input 方法&#xff0c;传递变量给我们的脚本 ex13. py创建ex13.py文件&#xff0c;然后敲键盘打以下内容并保存from sys import argv# r…

7-21 求前缀表达式的值 (25 分)(思路详解)

一&#xff1a;题目 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。前缀表达式指二元运算符位于两个运算数之前&#xff0c;例如23*(7-4)8/4的前缀表达式是&#xff1a; 2 * 3 - 7 4 / 8 4。请设计程序计算前缀表达式的结果值。 输入格式: 输入在一行内给出不超过…

mysql already closed._java.sql.SQLException: Already closed.

问题&#xff1a;SEVERE: Error occured while attempting to query datajava.sql.SQLException: Already closed.at org.apache.commons.dbcp.PoolableConnection.close(PoolableConnection.java:114)at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrappe…

java当中递归打印目录树

一&#xff1a;上码 package cn.wyj.one;import java.io.File;public class Demo8_递归打印目录树 {public static void main(String[] args) {File f new File("C:/亚洲");printfile(f,0);}static void printfile(File f,int level){for( int i 0; i < level;…

今天你内卷了吗?

点击蓝字关注&#xff0c;回复“职场进阶”获取职场进阶精品资料一份最近「内卷」这个词大火&#xff0c;朋友圈、知乎、腾讯新闻、B站视频&#xff0c;铺天盖地。大家的议论充满了愤懑、不安、失望和愤怒。那么&#xff0c;什么是内卷&#xff1f;内卷并不是一个新词&#xff…

python中的正则表达式re模块_python中的正则表达式(re模块)

特殊字符"."  &#xff1a; Matches any character except a newline.匹配任何字符 除了换行符"^"  :匹配字符的开头1 importre2 sre.findall(^c234,ac2324)3 s1re.findall(^ac,ac2324)4 print(s)5 print(s1)6 #输出&#xff1a;[]7 # [ac]"$&quo…

.NET Core + Spring Cloud:服务注册与发现

毫无疑问&#xff0c;微服务架构是目前的主流&#xff0c;在微服务架构下&#xff0c;服务治理、负载均衡、服务熔断、配置中心、API网关 等都是需要关注的问题&#xff0c;当然不是非要全部完善后才能进行微服务开发&#xff0c;在很多项目团队中&#xff0c;初期可能会将某个…