`

mysql5.6.10的性能优化

 
阅读更多

测试配置脚本时使用如下命令:

rm -rf  /var/log/mysqld.log

/usr/local/mysql/bin/mysqld_safe --log-error=/var/log/mysqld.log

vi /var/log/mysqld.log

然后查看 /var/log/mysqld.log就能看出来为什么mysql没有正常启动了。

 

 

vi /etc/my.cnf

在[mysqld]配置节下添加:

 
[mysqld]

#myslqd服务运行时的端口号
port=3306

#socket文件是在Linux环境下特有的,用户的客户端软件连接可以不通过TCP/IP网络而直接使用unix socket连接到Mysql。
socket=/tmp/mysql.sock

#避免Mysql的外部锁定,减少出错几率,增强稳定性。
skip-external-locking

#禁止MySql对外部连接进行DNS解析,使用这一选项可以消除MySQL进行NDS解析的时间。但需要注意的是:如果开启该选项,则所有远程主机连
接授权都要使用IP地址方式了,否则MYSQL将无法正常处理连接请求。
skip-name-resolve

#back_log参数的值指出在MySQL暂时停止响应新请求之前,短时间内的多少个请求可以被存在对堆栈中,如果系统短时间内有很多连接,则需>要增大该参数的值,该参数值指定到来的TCP/IP连接的监听队列的大小。不同的操作系统在这个队列的大小有自己的限制,如果试图将back_log设定得高于操作系统的限制将是无效的,其默认值为50,对于LINUX系统而言,推荐设置为小于512的整数。
back_log=384

#索引缓冲区大小,增加它可得到更好的索引处理性能,对于内存在4GB左右的服务器,该参数可设置为256M或384M。如果该参数值设置的过大>反而会使服务器的整体效率降低。
key_buffer_size=384M

#设定在网络传输中一次消息传输量的最大值,系统默认值为1MB,最大值是1GB,必须设定为1024的倍数,单位为字节。
max_allowed_packet=4M

#设置MySQL每个线程的堆栈大小,默认值足够大,可满足普通操作。可设置范围为128KB至4GB,默认192K。
thread_stack=256k


#设定查询排序时所能使用的缓冲区大小,系统默认大小为2MB,从5.1.23版本开始,在除了WINDOWS 之外的64位平台上可以4GB的限制。该参数
对应的分配内在是每个连接独占的,如果有100个连接,那么实际分配的总排序缓冲区大小为100*6=600MB,那么对于内存4GB左右的服务器来>说,推荐将其设置为6MB-8MB。
sort_buffer_size=6M

#读查询操作所能使用的缓冲区大小,和sort_buffer_size一样,该参数对应的分配内在也是每个连接独享。
read_buffer_size=4M


#设置Thread Cache池中可以缓存的连接池线程最大数量,可设置为0-16384,默认为0。1GB内存我们配置为8,2GB内存我们配置为16,4GB或4GB以上内在我们配置为64。
thread_cache_size=64
#指定Mysql查询缓冲区的大小,可以通过在Mysql控制台观察,如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况,如果
Qcache_hits的值非常大,则表明查询缓冲使用的非常频繁
query_cache_size=64M

#设置内在临时表最大值,如果超过该值,则会将临时表写入磁盘,其范围为1KB至4GB。
tmp_table_size=256M

#指定MYSQL允许的最大连接进程数,如果在访问程序时经常出现TOO MANY CONNECTIONS的错误提示,则需要增大该参数值。
max_connections=5000


#指定一个请求的最大连接时间,对于4GB左右内在的服务器来说,可以将其设置为5-10
wait_timeout=120

#该参数取值为服务器逻辑CPU数量*2,比如,服务器有两个物理CPU,每个物理CPU支持HT超线程,所以实际取值4*2=8,这也是目前双四核主流
服务器的配置。
thread_concurrency=8

#开启该选项可以彻底关闭MYSQL的TCP/IP连接方式,如果WEB服务器是以远程连接的方式访问MYSQL的数据库服务器,则不要开启该选项,否则>将无法正常连接。
skip-networking


innodb_flush_log_at_trx_commit
#抱怨Innodb比MyISAM慢 100倍?那么你大概是忘了调整这个值。默认值1的意思是每一次事务提交或事务外的指令都需要把日志写入(flush)
硬盘,这是很费时的。特别是使用电池供电缓存(Battery backed up cache)时。设成2对于很多运用,特别是从MyISAM表转过来的是可以的>,它的意思是不写入硬盘而是写入系统缓存。日志仍然会每秒flush到硬 盘,所以你一般不会丢失超过1-2秒的更新。设成0会更快一点,但安>全方面比较差,即使MySQL挂了也可能会丢失事务的数据。而值2只会在整个操作系统 挂了时才可能丢数据。
innodb_flush_log_at_trx_commit=2

#这是 InnoDB 存储引擎的事务日志所使用的缓冲区。类似于 Binlog Buffer,InnoDB 在写事务日志的时候,为了提高性能,也是先将信息写>入 Innofb Log Buffer 中,当满足 innodb_flush_log_trx_commit 参数所设置的相应条件(或者日志缓冲区写满)之后,才会将日志写到文>件(或者同步到磁盘)中。可以通过 innodb_log_buffer_size 参数设置其可以使用的最大内存空间。
innodb_log_buffer_size=2M

#这个数字要根据实际的情况来设定,但对于大多数的情况,是一个比较合适的设置
innodb_thread_concurrency=8

#tmp_table_size 的默认大小是 32M。如果一张临时表超出该大小,MySQL产生一个 The table tbl_name is full 形式的错误,如果你做很多
高级 GROUP BY 查询,增加 tmp_table_size 值。
tmp_table_size=64M

#随机读取数据缓冲区使用内存(read_rnd_buffer_size):和顺序读取相对应,当 MySQL 进行非顺序读取(随机读取)数据块的时候,会利用>这个缓冲区暂存读取的数据。如根据索引信息读取表数据,根据排序后的结果集与表进行Join等等。总的来说,就是当数据块的读取需要满足>一定的顺序的情况下,MySQL 就需要产生随机读取,进而使用到 read_rnd_buffer_size 参数所设置的内存缓冲区。
read_rnd_buffer_size=16M

#你最好在定义数据库命名规则的时候就全部采用小写字母加下划线的组合,而不使用任何的大写字母。
lower_case_table_names=1

#设置校验模式
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES


#默认配置没开查询缓存哦亲
explicit_defaults_for_timestamp

 

功能:

#关闭MYSQL日志

 
执行:
/usr/local/mysql/bin/mysql -u root -p
输入密码,登陆到mysql,然后执行
reset master;
退出后执行:
vi /etc/my.cnf
查找
log-bin=mysql-bin binlog_format=mixed
再这两行前面加上#,将其注释掉,再执行重启mysql命令
这样就关闭了mysql日志了
/etc/init.d/mysql restart
 
分享到:
评论

相关推荐

    mysql5.6.10.zip

    在本压缩包 "mysql5.6.10.zip" 中,包含了进行MySQL 5.6.10的二进制安装所需文件,这通常适用于Windows操作系统。 "README.txt" 文件是标准的说明文件,通常会包含安装或使用软件的基本步骤和注意事项。在这个场景...

    MySQL_5.6.10_winx64_

    MySQL 5.6.10 winx64版本是一款非常成熟稳定的数据库管理系统,它不仅继承了MySQL一贯的优点,还在性能优化、安全性增强等方面做出了许多改进。通过以上介绍,相信您已经对这个版本有了较为全面的认识。无论是用于...

    mysql-5.6.10

    MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其5.6.10版本是一个重要的里程碑,在这个版本中引入了许多性能优化、新特性和改进。以下是对MySQL 5.6.10及其相关知识点的详细说明: 一、InnoDB存储引擎...

    Mysql5.6.10源代码

    MySQL 5.6.10 是 MySQL 数据库管理系统的一个重要版本,它在 5.6 系列中引入了许多性能优化和新特性。这个源代码的发布为开发者提供了一个深入理解 MySQL 内核工作原理、自定义功能以及进行二次开发的机会。下面我们...

    最新MySQL5.6.10的配置文件(my.ini)及相应的批处理文件

    MySQL 5.6.10是该软件的一个重要版本,因为它引入了许多性能优化和新功能。在这个版本中,`my.ini`配置文件扮演了核心角色,它定义了MySQL服务器的行为和设置。 `my.ini`文件是MySQL服务器的启动配置文件,它包含了...

    Windows环境 Mysql数据库5.6.10

    MySQL数据库在Windows环境中安装与使用的详细教程 MySQL是一款开源、免费的关系型数据库管理系统,广泛应用于Web应用程序开发,因其高效性能和稳定性...在数据库安全和性能优化方面,也有许多技巧和最佳实践值得学习。

    mysql-5.6.10.tar.gz

    MySQL 5.6.10是该系统的某个稳定版本,提供了许多性能优化和新特性。本文将深入探讨在Linux系统上安装MySQL 5.6.10的过程,以及涉及到的工具CMake。 首先,我们来看`mysql-5.6.10.tar.gz`这个文件。这是一个源码...

    MySQL_5.6.10

    MySQL 5.6.10 是 MySQL 数据库管理系统的一个重要版本,它在 5.6 系列中引入了许多性能优化和新特性,为开发者和系统管理员提供了更强大的功能和更好的数据库管理体验。以下是关于 MySQL 5.6.10 的详细知识点: 1. ...

    MySQL_5.6.10_winx64

    1. **性能优化**:MySQL 5.6 引入了 InnoDB 引擎的性能提升,包括并行插入、自适应哈希索引改进和预读优化。这些改进使得在高并发环境下,数据库的读写速度得到了显著提升。 2. **全文搜索**:MySQL 5.6 对全文搜索...

    mysql-5.6.10-winx64.zip

    MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其5.6.10版本是一个重要的里程碑,为用户提供了许多性能优化和新功能。本压缩包"mysql-5.6.10-winx64.zip"是专为Windows 64位操作系统设计的MySQL安装包。 ...

    MySQL_5.6.10_win32_XiaZaiBa.zip

    1. **InnoDB存储引擎增强**:MySQL 5.6对InnoDB进行了重大优化,包括支持自适应哈希索引、更高的锁定精度、更少的磁盘I/O以及更好的事务处理性能。 2. **全文搜索**:MySQL 5.6引入了更强大的全文搜索功能,支持...

    mysql-5.6.10-linux-glibc2.5-x86-64.tar.gz

    mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz 是 MySQL 5.6.10 版本针对 Linux 系统(glibc 2.5 及以上版本,x86_64 架构)的二进制压缩包。在安装之前,应确保系统上没有与 MySQL 冲突的数据库系统(如 MariaDB),...

    mysql-5.6.10-winx64

    总之,“mysql-5.6.10-winx64”压缩包为Windows用户提供了一个强大的、可定制化的MySQL数据库解决方案,包含了各种性能优化和安全特性。正确安装和配置后,用户可以充分利用这些功能来搭建高效、可靠的数据库环境。

    mysql-5.6-java驱动

    MySQL-5.6版本的Java驱动支持了JDBC 4.0规范,提供了更好的性能和兼容性。 总之,"mysql-5.6-java驱动"是Java应用程序与MySQL 5.6数据库之间的重要桥梁,它简化了数据库操作,使得Java开发者能够方便地利用MySQL的...

    mysql 5.6 win32

    总的来说,MySQL 5.6针对Windows 32位系统的版本提供了增强的性能、优化的查询处理、加强的安全性以及改进的复制功能,是Windows环境中运行MySQL数据库的良好选择。在部署时,确保遵循最佳实践,如定期备份、合理...

    mysql 5.6 新特性-innodb

    - MySQL 5.6.10:2013 年 2 月 5 日,首个 GA(General Availability)版本。 - MySQL 5.6.12:尚未发布,当前的研发版本。 - **改进总览**: - InnoDB 引擎层面的性能优化和功能增强。 - Server 层面的性能...

    LVS+Keepalived+MySQL半同步主主复制高可用方案.docx

    - 配置其他性能优化参数,如缓冲池大小、缓存数量等 - 设置innodb_flush_log_at_trx_commit为0,启用半同步复制 总结: LVS+Keepalived+MySQL半同步主主复制方案提供了一种高可用性和数据一致性的解决方案,适用于...

    mysql2005中文版

    2. **高性能**: MySQL采用了多种优化策略,如索引优化、查询缓存、存储引擎选择等,使得在处理大量数据时仍能保持高速运行。 3. **多平台支持**: MySQL可在Windows、Linux、Unix及Mac OS等多种操作系统上运行,具备...

    mysql5.0数据库解压版安装

    ### MySQL 5.0 解压版数据库安装详解 在IT领域,数据库的稳定性和可靠性对于任何应用程序或系统来说都是...记住,数据库的稳定运行依赖于正确的配置和维护,因此在实际应用中,定期检查和优化数据库性能是非常重要的。

Global site tag (gtag.js) - Google Analytics