my-default.ini分为两块:Client Section和Server Section。
  Client Section用来配置MySQL客户端参数。
  要查看配置参数可以用下面的命令:

show variables like '%innodb%'; # 查看innodb相关配置参数
show status like '%innodb%'; # 查看innodb相关的运行时参数(比如当前正在打开的表的数量,当前已经打开的表的数量)
show global status like 'open%tables'; # 查看全局的运行时参数,加上global是对当前mysql服务器中运行的所有数据库实例进行统计。不加global则只对当前数据库实例进行统计。

1、Client Section

[client]
port = 3306 # 设置mysql客户端连接服务端时默认使用的端口
[mysql]
default-character-set=utf8 # 设置mysql客户端默认字符集

2、Server Section

[mysqld]
port=3306 # mysql服务端默认监听(listen on)的TCP/IP端口
basedir="D:\mysql-5.7.19-winx64" # 基准路径,其他路径都相对于这个路径
datadir="D:\mysql-5.7.19-winx64\data" # mysql数据库文件所在目录
character-set-server=latin1 # 服务端使用的字符集默认为8比特编码的latin1字符集
default-storage-engine=INNODB # 创建新表时将使用的默认存储引擎
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" # SQL模式为strict模式
max_connections=100 # mysql服务器支持的最大并发连接数(用户数)。但总会预留其中的一个连接给管理员使用超级权限登录,即使连接数目达到最大限制。如果设置得过小而用户比较多,会经常出现“Too many connections”错误。
query_cache_size=0 # 查询缓存大小,用于缓存SELECT查询结果。如果有许多返回相同查询结果的SELECT查询,并且很少改变表,可以设置query_cache_size大于0,可以极大改善查询效率。而如果表数据频繁变化,就不要使用这个,会适得其反
table_cache=256 # 这个参数在5.1.3之后的版本中叫做table_open_cache,用于设置table高速缓存的数量。由于每个客户端连接都会至少访问一个表,因此此参数的值与 max_connections有关。当某一连接访问一个表时,MySQL会检查当前已缓存表的数量。如果该表已经在缓存中打开,则会直接访问缓存中的表已加快查询速度;如果该表未被缓存,则会将当前的表添加进缓存并进行查询。在执行缓存操作之前,table_cache用于限制缓存表的最大数目:如果当前已经缓存的表未达到table_cache,则会将新表添加进来;若已经达到此值,MySQL将根据缓存表的最后查询时间、查询率等规则释放之前的缓存。
tmp_table_size=34M # 内存中的每个临时表允许的最大大小。如果临时表大小超过该值,临时表将自动转为基于磁盘的表(Disk Based Table)。
thread_cache_size=8 # 缓存的最大线程数。当客户端连接断开时,如果客户端总连接数小于该值,则处理客户端任务的线程放回缓存。在高并发情况下,如果该值设置得太小,就会有很多线程频繁创建,线程创建的开销会变大,查询效率也会下降。一般来说如果在应用端有良好的多线程处理,这个参数对性能不会有太大的提高。 # MyISAM相关参数
myisam_max_sort_file_size=100G # mysql重建索引时允许使用的临时文件最大大小
myisam_sort_buffer_size=68M
key_buffer_size=54M # Key Buffer大小,用于缓存MyISAM表的索引块。决定数据库索引处理的速度(尤其是索引读)
read_buffer_size=64K # 用于对MyISAM表全表扫描时使用的缓冲区大小。针对每个线程进行分配(前提是进行了全表扫描)。进行排序查询时,MySql会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要排序大量数据,可适当调高该值。但MySql会为每个客户连接发放该缓冲空间,所以应尽量适当设置该值,以避免内存开销过大。
read_rnd_buffer_size=256K
sort_buffer_size=256K # connection级参数(为每个线程配置),500个线程将消耗500*256K的sort_buffer_size。 # InnoDB相关参数
innodb_additional_mem_pool_size=3M # InnoDB用于存储元数据信息的内存池大小,一般不需修改
innodb_flush_log_at_trx_commit =1 # 事务相关参数,如果值为1,则InnoDB在每次commit都会将事务日志写入磁盘(磁盘IO消耗较大),这样保证了完全的ACID特性。而如果设置为0,则表示事务日志写入内存log和内存log写入磁盘的频率都为1次/秒。如果设为2则表示事务日志在每次commit都写入内存log,但内存log写入磁盘的频率为1次/秒。
innodb_log_buffer_size=2M # InnoDB日志数据缓冲大小,如果缓冲满了,就会将缓冲中的日志数据写入磁盘(flush)。由于一般至少都1秒钟会写一次磁盘,所以没必要设置过大,即使是长事务。
innodb_buffer_pool_size=105M # InnoDB使用缓冲池来缓存索引和行数据。该值设置的越大,则磁盘IO越少。一般将该值设为物理内存的80%。
innodb_log_file_size=53M # 每一个InnoDB事务日志的大小。一般设为innodb_buffer_pool_size的25%到100%
innodb_thread_concurrency=9 # InnoDB内核最大并发线程数

MySQL在windows的my-default.ini配置的更多相关文章

  1. Mysql在windows下的免安装配置步骤和重新安装的步骤

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

  2. PHP安装mysql.so扩展及相关PHP.ini 配置参数说明

    在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...

  3. mysql应用学习-windows(64位)安装和配置mysql(5.6.20)

    下载安装包MySQL Installer 下载地址1:http://dev.mysql.com/downloads/windows/installer/ 说明:官网当前版本 5.6.22:虽然只有32 ...

  4. Windows环境下完全手工配置Apache、MySQL和PHP

    现在LAMP(Linux.Apache.MySQL.PHP/Perl/Python的简称)已经很流行了.在Windows下也有类似的,比如 WAMP(Apache, MySQL, PHP on Win ...

  5. windows 下wamp环境2 配置之mysql的安装

    安装配置mysql 5.7 打开mysql官网: https://www.mysql.com/ 点击downloads,然后选择commuity 选择MySQL Community Server选择对 ...

  6. mysql for windows(服务器)上的配置安装--实例

    mysql for windows(服务器)上的配置安装 **** 下载 官网网址:https://www.mysql.com/downloads/ 选择左上角Community 再选择MySQL C ...

  7. [mysql-Ver5.6.23] windows版my.ini配置

    基于utf8mb4比utf8多了种编码,能更好的支持emoji表情(http://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.htm ...

  8. windows下mysql表名不自动转换小写配置

    mysql5.6版本配置文件有两个 1.默认的配置在program files/MySQL/MySQL Server 5.6/my-default.ini 2.一个在programData/MySQL ...

  9. mysql在windows下主从同步配置

    mysql主从同步:   1.为什么要主从同步? 在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一.尤其是在大规模系统中,数据库集群已经成为必备的配置之一.集群的好处主要有:查询负载. ...

  10. Windows 2003 IIS6.0下配置ASP+MySQL+PHP+ISAPI_Rewrite+Zend+Xcache

    windows 2003,自己买吧... 安装IIS6.0:安装系统后在"控制面板"->"添加或删除程序"->"添加/删除Windows组 ...

随机推荐

  1. Python操作远程服务器paramiko模块介绍

    paramiko模块是基于Python实现的SSH远程安全连接,可以提供在远程服务器上执行命令.上传文件到服务器或者从指定服务器下载文件的功能. paramiko模块安装方法 paramiko模块不是 ...

  2. vue项目分辨率

    vue项目分辨率写在这里:

  3. Android Debug Bridge命令介绍[转]

    Android Debug Bridge命令介绍 Android Debug Bridge的一些基本命令.这个工具直译过来就是Android调试桥的意思.它提供了强大的特性,例如复制文件到设备或从设备 ...

  4. js 表单序列化为json对象

    $.fn.serializeJson = function () { var o = {}; var a = this.serializeArray(); $.each(a, function () ...

  5. Python 类的魔术方法

    Python中类的魔术方法 在Python中以两个下划线开头的方法,__init__.__str__.__doc__.__new__等,被称为"魔术方法"(Magic method ...

  6. css图标库 font-awesome.min.css

    下载font-awesome-4.4.0 同时引入font-awesome-4.4.0.min.css 通过<i class='fa fa-sign-out'></i>生成图片 ...

  7. react学习入门

    先在在学习react,react是faceBook推出的框架,因为虚拟DOM使页面性能提高很大,特别react Native非常适合移动端,现做一个学习总结: 1.react 获取DOM的两种方式是R ...

  8. ARM9/ARM11/Cortex A8处理器(转载) .

    //toppic:推荐几个值得中小企业使用的ARM9/ARM11/Cortex A8处理器 // 作者:gooogleman //原文地址:http://blog.csdn.net/goooglema ...

  9. Eclipse git 冲突合并

    Eclipse有一个git的插件叫EGit,用于实现本地代码和远程代码对比.合并以及提交.但是在本地代码和远程代码有冲突的时候,EGit的处理方案还是有点复杂.今天就彻底把这些步骤给理清楚,并公开让一 ...

  10. NIO简单理解

    NIO:新IO,同步的非阻塞IO. 1.Java NIO 由以下几个核心部分组成:Channels(通道).Buffers(缓冲区).Selectors(选择器) Channels(通道) 1.所有的 ...