系统centos7
mariadb通过yum安装
mysql配置文件位于/etc/my.cnf

常用参数:

1)max_connections设置最大连接(用户)数,其默认值为100,设置太小会出现too many connections错误。例如,max_connections=1000

  其修改方法有两种,即时生效,查看当前max_connections值,select &&MAX_CONNECTIONS AS 'Max Connections';

  临时设置: set global max_connections=2000;

  编辑my.conf:添加参数max_connections=200,不过需要重启mysql才能生效

2)安全参数

  max_connect_errors这个参数负责阻止客户端尝试暴力破解密码,当某台主机错误连接次数达到该值时,该主机无法再尝试登陆。解决方法是重启mysql,或者把该值改大一点

3)设置数据包大小

  max_allowed_packet设置server运行通信的最大数据包大小,如果该参数过小,可能导致比较大的insert或update执行失败

常用命令

1)参看当前mysql连接情况

  show status where variable_name like '%Thread%';

mysqld]
log-slow-queries=zhao #开启慢查询日志
long_query_time=5 #语句查询时间查过这个值将会被记录到慢查询日志中
log=abp #通用查询日志
log-bin=mysql-bin #二进制日志
character_set_server=utf8 #字符
collation-server=utf8_general_ci
init_connect='SET NAMES utf8' #设置utf8字符
#binlog_format=row
#skip-grant #忘记密码时可以去掉这行的注释,从而免验证进入数据库
datadir=/var/lib/mysql #数据目录,类似于win系统上的data目录
socket=/var/lib/mysql/mysql.sock #sock文件路径
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd [mysqld_safe]
log-error=/var/log/mariadb/mariadb.log #错误日志
pid-file=/var/run/mariadb/mariadb.pid #pid文件路径 #
# include all files from the config directory
#
!includedir /etc/my.cnf.d

另外还有几个主要参数
(1)innodb_buffer_pool_size 缓存数据和索引的内存缓冲区大小,理论上该至越高,访问数据需要的磁盘i/o就越少,建议设置为物理内存大小的70%~80%。该参数写在my.cnf的[mysqld]里。修改之后重启mysql生效,使用select @@innodb_buffer_pool_size/1024/1024查看(除以1024是因为要转换为M)
(2)innodb_log_file_size 日志文件大小 值越大越节约磁盘I/O,但在崩溃回复时越慢。建议将日志文件大小设置为256MB或更大。该参数也是放在my.cnf的[mysqld]下。修改之后可能会无法启动mysql,解决方法是,停止mysql,然后删除mysql的日志文件,执行rm -f /var/lib/mysql/ib_logfile*。重启mysql,使用select查看,修改成功
(3)innodb_flush_log_at_trx_commit这个值我还暂时搞不懂,建议设置为2。
(4)sync_binlog 建议设置为0

mysql配置my.cnf文件,以及参数优化提升性能的更多相关文章

  1. [转载][转]修改/proc目录下的参数优化网络性能

    原文地址:[转]修改/proc目录下的参数优化网络性能作者:雪人 网络优化 注意: 1. 参数值带有速度(rate)的参数不能在loopback接口上工作. 2.因为内核是以HZ为单位的内部时钟来定义 ...

  2. mysql的my.cnf文件详解

    一.缘由 最近要接手数据库的维护工作,公司首选MySQL.对于MySQL的理解,我认为很多性能优化工作.主从主主复制都是在调整参数,来适应不同时期不同数量级的数据. 故,理解透彻my.cnf里的参数是 ...

  3. MySQL的my.cnf文件(解决5.7.18下没有my-default.cnf)

    官网说:从5.7.18开始不在二进制包中提供my-default.cnf文件.参考:https://dev.mysql.com/doc/refman/5.7/en/binary-installatio ...

  4. mysql innodb存储引擎和一些参数优化

    mysql 的innodb存储引擎是事务性引擎,支持acid.innodb支持版本控制和高并发的技术是svcc:需要重点注意:myisam只缓存索引,innodb缓存索引和数据:

  5. 如何利用Nginx的缓冲、缓存优化提升性能

    使用缓冲释放后端服务器 反向代理的一个问题是代理大量用户时会增加服务器进程的性能冲击影响.在大多数情况下,可以很大程度上能通过利用Nginx的缓冲和缓存功能减轻. 当代理到另一台服务器,两个不同的连接 ...

  6. 通过修改VHD文件的位置来提升性能

    昨天用VHD装了一个Win 10的预览版体验了一下,感觉磁盘操作非常慢,便用HD Tune测试了一下,发现速度只有物理硬盘的一半都不到.          这个倒大出我意料之外,由于VHD的便利性,我 ...

  7. selenium 优化 提升性能

    结果: 用时:7.200437545776367s用时:5.909301519393921s headless用时:4.924464702606201s headless\phone用时:4.9358 ...

  8. mysql配置优化的参数

    1.MySQL数据库高效优化解析  Mysql优化是一项非常重要的工作,而且是一项长期的工作,曾经有一个为位DBA前辈说过:mysql的优化,三分配置的优化,七分sql语句的优化. Mysql的优化: ...

  9. MySQL 5.7数据库参数优化

    连接相关参数 max_connections:允许客户端并发连接的最大数量,默认值是151,一般将该参数设置为500-2000max_connect_errors:如果客户端尝试连接的错误数量超过这个 ...

随机推荐

  1. 【转】Java迭代:Iterator和Iterable接口

    Java迭代 : Iterator和Iterable接口 从英文意思去理解 Iterable :故名思议,实现了这个接口的集合对象支持迭代,是可迭代的.able结尾的表示 能...样,可以做.... ...

  2. RabbitMQ fanout类型的Exchange

    就目前来说,Exchange是与消息发送端有关的,因为它可以指定将消息发送到哪个或哪些队列中. 本篇文章介绍的fanout类型就是指定将消息群发到与Exchange绑定的所有队列中. fanout这个 ...

  3. Top k问题的讨论(三种方法的java实现及适用范围)

    在很多的笔试和面试中,喜欢考察Top K.下面从自身的经验给出三种实现方式及实用范围. 合并法 这种方法适用于几个数组有序的情况,来求Top k.时间复杂度为O(k*m).(m:为数组的个数).具体实 ...

  4. (C/C++学习笔记)附页: C/C++各数据类型的相关说明

  5. C数据结构 : 线性表 与 链表

    一.线性表 一般表现为数组,使用一组地址连续的存储单元依次存储数据元素,如图: 它具有如下特点: 长度固定,必须在分配内存之前确定数组的长度. 存储空间连续,即允许元素的随机访问. 存储密度大,内存中 ...

  6. gc图波峰波谷一直上升问题

    垃圾回收曲线,波峰和波谷一直上升.正常是波峰波谷在同一水平线上,可以想象如果程序继续运行下去,老年代内存回收后也不断上升,当达到老年代满了的时候,就会报内存溢出错误. 用jmap -histo pid ...

  7. 一个简单的JSP程序示例

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  8. python的list和tuple

    list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...

  9. HDU6043 17多校1 KazaQ's Socks 水题

    题目传送:http://acm.hdu.edu.cn/showproblem.php?pid=6043 Problem Description KazaQ wears socks everyday. ...

  10. vue--http请求的封装--session

    export function Fecth (url, data, file, _method) { if (file) { // 需要上传文件 return new Promise((resolve ...