`

mysql 5.6 性能优化

阅读更多

原文:http://www.51ou.com/browse/msyql/58966.html

          http://www.cnblogs.com/littlehb/archive/2013/04/06/3001975.html

          http://www.jb51.net/article/52531.htm

          http://my.oschina.net/liting/blog/387489

 

http://www.jb51.net/article/50918.htm

 

http://zhidao.baidu.com/link?url=P8EQv_zNOq1LzuTuFDzSwDH6A9NJzm20YoBWwy4qIPWtFcEN9_Dq09h5rmFeQ57IMsku0qKo3RlfRAz0ZUQmX0OAFeeYQReMNimutbswiQ3 

 

 

配置如下:

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/var/lib/mysql/mysql.sock

 

port=3306

server_id=1

 

#innodb

user=mysql

#设定InnoDB缓存表数据和索引的内存缓冲区大小,一般设置为内存的50%左右

innodb_buffer_pool_size=6G

#默认值为 48M. 有很高写入吞吐量

innodb_log_file_size=2G

#InnoDB 存储引擎的事务日志所使用的缓冲区

innodb_log_buffer_size = 8M

#参数对于InnoDB存储引擎写入操作的性能

innodb_flush_log_at_trx_commit=2

#修改InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间

innodb_file_per_table=1

#限制Innodb能打开的表的数据

innodb_file_io_threads=4

#如果使用硬件RAID磁盘控制器, 需要设置为 O_DIRECT

innodb_flush_method=O_DIRECT

#设置会影响InnoDB每秒在后台执行多少操作

innodb_io_capacity=2000

innodb_io_capacity_max=6000

#这个参数必须要和innodb_io_capacity设置一样

innodb_lru_scan_depth=2000

#限制了一次有多少线程能进入内核,0表示不限制进入内核的数量,可以跟thread_concurrency一样

innodb_thread_concurrency = 8

#除了缓存表数据和索引外,可以为操作所需的其他内部项分配缓存来提升InnoDB的性能,这些内存就可以通过此参数来分配

innodb_additional_mem_pool_size=16M

#修改为基于行的复制

innodb_autoinc_lock_mode = 2

 

 

# Binary log/replication

#二进制日志

log-bin=mysql-bin

#为了在最大程序上保证复制的InnoDB事务持久性和一致性

sync_binlog=1

sync_relay_log=1

#启用此两项,可用于实现在崩溃时保证二进制及从服务器安全的功能

relay-log-info-repository=TABLE

master-info-repository=TABLE

#设置保存日志时间(单位为:天)

expire_logs_days=7

#行复制或混合复制值为(mixed) 

binlog_format=ROW      

#mysql数据库事务隔离级别有四种(READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ,SERIALIZABLE)

transaction-isolation=READ-COMMITTED

 

#log-slave-updates这个参数用来配置从服务器的更新是否写入二进制日志,这个选项默认是不打开的,

#但是,如果这个从服务器B是服务器A的从服务器,同时还作为服务器C的主服务器,那么就需要开发这个选#项,这样它的从服务器C才能获得它的二进制日志进行同步操作

log-slave-updates=1

#禁止MySql对外部连接进行DNS解析,使用这一选项可以消除MySQL进行NDS解析的时间。但需要注意的是:如果开启该选项,则所有远程主机连

#接授权都要使用IP地址方式了,否则MYSQL将无法正常处理连接请求。

skip-name-resolve

#所有表明自动转换为小写

lower_case_table_names=1

#这个跳过1062  主键重复错误

slave-skip-errors=1062

 

 

#cache

#内部内存临时表的最大值

tmp_table_size=512M

#设置字符编码相关,

character-set-server=utf8

collation-server=utf8_general_ci

#如果是要支持ios、android等移动设备的特殊表情则需要设置另外的编码如下:

character-set-server=utf8mb4

collation-server=utf8mb4_general_ci

#即跳过外部锁定

skip-external-locking

#MySQL能暂存的连接数量(根据实际设置)短时间内的多少个请求可以被存在对堆栈中,

#如果系统短时间内有很多连接,则需>要增大该参数的值,

#该参数值指定到来的TCP/IP连接的监听队列的大小。

#不同的操作系统在这个队列的大小有自己的限制,

#如果试图将back_log设定得高于操作系统的限制将是无效的,

#其默认值为50,对于LINUX系统而言,推荐设置为小于512的整数。

back_log=384

#指定索引缓冲区的大小,只对MyISAM表起作用,这里写上也没有关系

key_buffer_size=1024M

#这条指令限定用于每个数据库线程的栈大小

thread_stack=256k

#当一个查询不断地扫描某一个表,MySQL会为它分配一段内存缓冲区

read_buffer_size=8M

#线程缓存

thread_cache_size=64

#查询缓存大小

query_cache_size=128M

#内部内存临时表的最大值,每个线程都要分配

max_heap_table_size=256M

#将查询结果放入查询缓存中

query_cache_type=1

#代表在事务过程中容纳二进制日志SQL语句的缓存大小

binlog_cache_size = 2M

#同样是缓存表大小

table_open_cache=128

#缓存线程

thread_cache=1024

#推荐设置为服务器 CPU核数的2倍

thread_concurrency=8

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

wait_timeout=25

#表和表联接的缓冲区的大小

join_buffer_size = 1024M

#是一个connection级参数,在每个connection第一次需要使用这个buffer的时候,一次性分配设置的内存

sort_buffer_size=8M

#随机读取数据缓冲区使用内存

read_rnd_buffer_size = 8M

 

 #这个参数设置为ON,可以捕获执行时间超过一定数值的SQL语句

slow_query_log = 1

#当SQL语句执行时间超过此数值时,就会被记录到日志中,建议设置为1或者更短。

long_query_time = 1

#这个参数设置为ON,可以捕获到所有未使用索引的SQL语句,尽管这个SQL语句有可能执行得挺快。

log_queries_not_using_indexes = 1

#记录慢查询日志的文件名

slow_query_log_file=/data/mysql/log/slow-query.log

 

 

#connect

#是一个MySQL中与安全有关的计数器值,它负责阻止过多尝试失败的客户端以防止暴力破解密码

max-connect-errors=20000

#连接数

max-connections=5000

#开启查询缓存

explicit_defaults_for_timestamp=true

#mysql服务器能够工作在不同的模式下,并能针对不同的客户端以不同的方式应用这些模式

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

分享到:
评论

相关推荐

    mysql5.6性能优化

    ### MySQL 5.6 性能优化 #### 一、优化概述 在现代数据库管理中,MySQL作为一种广泛使用的开源关系型数据库管理系统,在诸多业务场景下扮演着重要角色。随着业务需求的增长和技术的发展,如何有效提升MySQL数据库...

    mysql5.6性能优化总结

    MySQL 5.6 性能优化总结 MySQL 5.6 是一个高性能的关系型数据库管理系统,然而随着数据库规模的增长和复杂度的增加,性能问题开始浮现。因此,性能优化成为 MySQL 数据库管理员和开发者的首要任务。本文将总结 ...

    Mysql5.6性能优化

    ### MySQL 5.6 性能优化 ...通过以上介绍可以看出,MySQL 5.6性能优化涵盖了多个层面,从基本的数据库管理到复杂的查询分析,每一步都至关重要。通过合理配置和持续优化,可以显著提升MySQL数据库的性能表现。

    mysql5.6性能优化-Oracle公司

    以下将从基础平台的选择、服务器调优、存储引擎调优以及MySQL版本升级等方面详细探讨MySQL 5.6性能优化的知识点。 基础平台的选择包括硬件、操作系统和存储引擎。硬件的选择直接影响数据库服务器的性能和稳定性。...

    MySql5.6性能优化1

    MySQL 5.6性能优化是数据库管理中至关重要的一环,其目标在于提升系统运行效率,减少资源消耗,增强系统的响应速度。优化不仅涉及查询层面,还包括数据库结构的优化以及MySQL服务器本身的调整。以下将详细讨论这些...

    MySql5.6性能优化.docx

    总结来说,MySQL 5.6性能优化是一个全面的过程,涉及到查询分析、数据库设计和服务器配置等多个环节。通过深入理解这些知识点并付诸实践,可以显著提升数据库的运行效率,从而提高整体应用的性能。

    redis集群jvm调优实战MySQL5.6性能优化&Tomcat7优化.rar

    本资料集围绕四个核心主题展开:Redis集群、JVM调优、MySQL 5.6性能优化和Tomcat 7的优化,旨在帮助开发者和运维人员更好地理解和实践这些关键领域的优化策略。 首先,Redis是一个高性能的键值存储系统,常用于缓存...

    MySql5.6性能优化最佳实践笔记 PDF版

    本文主要介绍MySQL 5.6版本的性能优化最佳实践,包括优化的定义、查询优化、数据库结构优化以及MySQL服务器优化的方法。 首先,优化是指通过合理安排资源和调整系统参数,使得MySQL运行更快、更加节省资源。其原则...

    MySQL5.6官方文档

    MySQL5.6作为一款成熟且功能丰富的数据库管理系统,在性能、安全性、易用性等方面都有显著提升。无论是初学者还是高级用户,都能从中受益。通过详细的官方文档,用户可以深入了解MySQL5.6的各项特性和使用方法,从而...

    mysql5.6官方文档

    MySQL 5.6是MySQL数据库管理系统的一个重要版本,它包含了多项增强和优化,旨在提高性能、可用性和可管理性。这份官方文档详细地阐述了MySQL 5.6的各种特性和功能,是学习和掌握该版本数据库操作的重要参考资料。...

    简化版MySQL5.6.51解压即用

    2021年1月20日,MySQL5.6发布了最后一个维护版本——5.6.51,从此,MySQL正式告别了5.6时代。 MySQL5.6于2013年正式发布(GA),它是MySQL一个非常重要的里程碑。 它在InnoDB,分区,Performance Schema,优化器和...

    mysql5.6安装包

    MySQL 5.6是MySQL数据库管理系统的一个重要版本,它提供了许多增强的功能和性能优化,适合于各种规模的企业级应用。这个“mysql5.6安装包”包含了安装MySQL 5.6所需的所有文件,使得用户可以在自己的计算机上部署和...

    MySQL 5.6 for Windows 官方(mysql-5.6.34-winx64.zip)

    - **性能优化**:MySQL 5.6引入了InnoDB存储引擎的性能增强,如InnoDB并行插入,提高了多线程插入的效率。 - **全文搜索**:增加了全文本搜索功能,支持更复杂的查询语法,提高了搜索精度。 - **分区改进**:表...

    mysql5.6安装包 mysql5.6官网下载的

    - **查询执行优化**:MySQL 5.6引入了新的优化器策略,如延迟关联、子查询缓存等,提高了复杂查询的执行效率。 - **InnoDB存储引擎改进**:InnoDB作为默认存储引擎,在5.6版本中得到了显著增强,支持更多的并发事务...

    mysql5.6.50安装资源包

    - InnoDB存储引擎:MySQL 5.6引入了许多InnoDB性能优化,如自适应哈希索引、增强的缓冲池管理等。默认情况下,InnoDB是启用的,但配置时可按需调整。 - SSL支持:通过`--with-ssl`选项启用SSL连接,提供数据传输的...

    MySQL5.6以及驱动jar包

    在实际应用中,你可能还需要关注性能优化、事务处理、备份恢复等高级主题。 总之,这个压缩包提供了在Windows系统上部署和使用MySQL5.6所需的基本资源,包括安装程序和Java驱动,对于开发者来说是十分方便的。通过...

    Mysql5.6、Mysql5.7 JDBC驱动

    在MySQL 5.6版本中,引入了一些重要的性能优化和新特性。例如,InnoDB存储引擎的性能得到了显著提升,支持了全文索引,同时增加了并行复制功能,提高了大规模数据处理的效率。此外,5.6版本还增强了查询优化器,支持...

    mysql 5.6 教程详解

    在性能优化方面,MySQL 5.6为用户提供了多种优化工具,例如分区、复制、半同步复制、空间扩展、semisynchronous复制等特性。这些特性对于提高数据库性能和扩展性至关重要,而且是许多开发者和数据库管理员在日常工作...

    mysql 5.6 新特性-innodb

    - InnoDB 引擎层面的性能优化和功能增强。 - Server 层面的性能优化和功能增强。 #### InnoDB 层新特性 InnoDB 是 MySQL 最常用的存储引擎之一,在 MySQL 5.6 中得到了显著的增强,特别是在性能和功能方面。 ##...

Global site tag (gtag.js) - Google Analytics