mysql配置my.cnf文件,以及参数优化提升性能
系统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文件,以及参数优化提升性能的更多相关文章
- [转载][转]修改/proc目录下的参数优化网络性能
原文地址:[转]修改/proc目录下的参数优化网络性能作者:雪人 网络优化 注意: 1. 参数值带有速度(rate)的参数不能在loopback接口上工作. 2.因为内核是以HZ为单位的内部时钟来定义 ...
- mysql的my.cnf文件详解
一.缘由 最近要接手数据库的维护工作,公司首选MySQL.对于MySQL的理解,我认为很多性能优化工作.主从主主复制都是在调整参数,来适应不同时期不同数量级的数据. 故,理解透彻my.cnf里的参数是 ...
- 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 ...
- mysql innodb存储引擎和一些参数优化
mysql 的innodb存储引擎是事务性引擎,支持acid.innodb支持版本控制和高并发的技术是svcc:需要重点注意:myisam只缓存索引,innodb缓存索引和数据:
- 如何利用Nginx的缓冲、缓存优化提升性能
使用缓冲释放后端服务器 反向代理的一个问题是代理大量用户时会增加服务器进程的性能冲击影响.在大多数情况下,可以很大程度上能通过利用Nginx的缓冲和缓存功能减轻. 当代理到另一台服务器,两个不同的连接 ...
- 通过修改VHD文件的位置来提升性能
昨天用VHD装了一个Win 10的预览版体验了一下,感觉磁盘操作非常慢,便用HD Tune测试了一下,发现速度只有物理硬盘的一半都不到. 这个倒大出我意料之外,由于VHD的便利性,我 ...
- selenium 优化 提升性能
结果: 用时:7.200437545776367s用时:5.909301519393921s headless用时:4.924464702606201s headless\phone用时:4.9358 ...
- mysql配置优化的参数
1.MySQL数据库高效优化解析 Mysql优化是一项非常重要的工作,而且是一项长期的工作,曾经有一个为位DBA前辈说过:mysql的优化,三分配置的优化,七分sql语句的优化. Mysql的优化: ...
- MySQL 5.7数据库参数优化
连接相关参数 max_connections:允许客户端并发连接的最大数量,默认值是151,一般将该参数设置为500-2000max_connect_errors:如果客户端尝试连接的错误数量超过这个 ...
随机推荐
- 关于执行findbugs,checkstyle,jacoco插件检测代码,GitHook的脚本编写
Git钩子的作用: (pre-commit ) 在用户执行 git commit -m "xxx" 命令之前,先执行pre-commit文件中的脚本命令 在pre-commit文件 ...
- 重载的方式写Python的get请求
#encoding=utf-8#__author__="Lanyangyang" import unittestimport requestsimport json # This ...
- 对FPGA的时钟资源理解(更新中)
7系列FPGA中包含了多达24个CMT(时钟管理单元)(实际上V7常见只有20个),MMCM和PLL均为时钟综合器,对外部输入时钟.内部时钟进行处理,生成需要的低抖动时钟.PLL是MMCM的功能子集, ...
- Linux alias别名命令
首先介绍一下命令的别名,怎么查看的呢? 咱们使用which命令就可以查看的到它完整的命令是怎样的 [root@master ~]# which ls alias ls='ls --color=auto ...
- js 数组去重的几种方式及原理
let arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,' ...
- 使用libcurl下载https地址的文件
使用libcurl下载https地址的文件 void downLoadFile(std::string filename, std::string newFilename) { CURL *curl_ ...
- 转-Asynchronous bulk transfer using libusb
https://falsinsoft.blogspot.jp/2015/02/asynchronous-bulk-transfer-using-libusb.html The 'linusb' is ...
- 深入了解HyperServer
本文,我们将尝试深入了解uniGUI HyperServer. 可以将HyperServer所有功能分成三类: HyperServer和稳定性 HyperServer和可扩展性 HyperServer ...
- centos安装python3虚拟环境和python3安装
1.本文的系统命令一般会在语句前加上#号,以区分系统命令及其他内容.输入命令时,无需输入#号. # yum install vim 2.本文系统输出的信息,会在前面加上>>号. # whi ...
- 2019-03-06-day005-字典操作
情商 别人与你相处感觉很轻松. ?为人处世,有笑点. 照顾对方的情绪. 与别人相处可以很好地解决问题. 你身边总有那么一两个人,别人都喜欢与他交往,和他在一起,很舒服. 情商后天可以提升的. 1,你本 ...