Mysql 文件配置(my.ini)

Windows

如果已有用户登录mysql,先退出用户

net 服务安装

cmd 进入到mysql 目录下的bin

 msyqld --remove   //关闭服务
 mysqld -install    //启动服务
 net start mysql     //启动



[client]
port=3306
[mysqld]
#mysql服务端默认监听(listen on)的TCP/IP端口
port=3306 
skip-grant-tables
#Mysql 安装路径
basedir=D:/Program Files/MySQL/MySQL Server 5.6/

#mysql 数据存放地址
datadir=D:/Program Files/MySQL/MySQL Server 5.6/data

#服务端默认字符集
character-set-server=latin1

#创建表时,默认存储引擎
default-storage-engine=INNODB

#mysql 服务器支持最大并发数(用户数量)。
max_connections=100

#查询缓存大小,用于缓存SELECT查询结果。如果有许多返回相同查询结果的SELECT查询,
#并且很少改变表,可以设置query_cache_size大于0,可以极大改善查询效率。
#而如果表数据频繁变化,就不要使用这个,会适得其反
query_cache_size=0 

#用于设置table高速缓存的数量。由于每个客户端连接都会至少访问一个表,
#因此此参数的值与max_connections有关。当某一连接访问一个表时,MySQL会检查当前已缓存表的数量。
#如果该表已经在缓存中打开,则会直接访问缓存中的表已加快查询速度;如果该表未被缓存,
#则会将当前的表添加进缓存并进行查询。在执行缓存操作之前,
#table_cache用于限制缓存表的最大数目:如果当前已经缓存的表未达到table_open_cache,
#则会将新表添加进来;若已经达到此值,MySQL将根据缓存表的最后查询时间、
#查询率等规则释放之前的缓存。
table_open_cache=256

# 内存中的每个临时表允许的最大大小。如果临时表大小超过该值,临时表将自动转为基于磁盘的表
tmp_table_size=34M

#缓存的最大线程数。当客户端连接断开时,如果客户端总连接数小于该值,
#则处理客户端任务的线程放回缓存。在高并发情况下,如果该值设置得太小,
#就会有很多线程频繁创建,线程创建的开销会变大,查询效率也会下降。
#一般来说如果在应用端有良好的多线程处理,这个参数对性能不会有太大的提高。
thread_cache_size=8

#SQL模式为strict模式,严格模式
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

# MyISAM 相关参数

# mysql重建索引时允许使用的临时文件最大大小
myisam_max_sort_file_size=100G

#当对MyISAM表执行repair table或创建索引时,用以缓存排序索引;
#设置太小时可能会遇到” myisam_sort_buffer_size is too small”
myisam_sort_buffer_size=68M

# Key Buffer大小,用于缓存MyISAM表的索引块。决定数据库索引处理的速度(尤其是索引读)
key_buffer_size=54M

# 用于对MyISAM表全表扫描时使用的缓冲区大小。针对每个线程进行分配(前提是进行了全表扫描)。
#进行排序查询时,MySql会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,
#如果需要排序大量数据,可适当调高该值。但MySql会为每个客户连接发放该缓冲空间,
#所以应尽量适当设置该值,以避免内存开销过大。
read_buffer_size=64K

#当使用传统的双路文件排序时,在第2次读时用于缓存数据
read_rnd_buffer_size=256K

#connection级参数(为每个线程配置),500个线程将消耗500*256K的sort_buffer_size
sort_buffer_size=256K

# InnoDB相关参数

# InnoDB用于存储元数据信息的内存池大小,一般不需修改
innodb_additional_mem_pool_size=3M

# 事务相关参数,如果值为1,则InnoDB在每次commit都会将事务日志写入磁盘(磁盘IO消耗较大),
#这样保证了完全的ACID特性。而如果设置为0,
#则表示事务日志写入内存log和内存log写入磁盘的频率都为1次/秒。
#如果设为2则表示事务日志在每次commit都写入内存log,但内存log写入磁盘的频率为1次/秒。
innodb_flush_log_at_trx_commit =1

# InnoDB日志数据缓冲大小,如果缓冲满了,就会将缓冲中的日志数据写入磁盘(flush)。
#由于一般至少都1秒钟会写一次磁盘,所以没必要设置过大,即使是长事务。
innodb_log_buffer_size=2M

# InnoDB使用缓冲池来缓存索引和行数据。该值设置的越大,
#则磁盘IO越少。一般将该值设为物理内存的80%。
innodb_buffer_pool_size=105M

#每一个InnoDB事务日志的大小。一般设为innodb_buffer_pool_size的25%到100%
innodb_log_file_size=53M

# InnoDB内核最大并发线程数
innodb_thread_concurrency=9


#log 日志配置
log_output=FILE

general_log=on
general_log_file=E:/MysqlLog/logs/query.log
log-error="E:/MysqlLog/logs/error.log"

#log="E:/MysqlLog/logs/mysql.log"
slow_query_log=on
long_query_time=2
slow-query-log-file="E:/MysqlLog/logs/slowquery.log"

server-id=1
log_bin=E:/MysqlLog/logs/binlog-bin.log
log_bin_index=E:/MysqlLog/logs/binlog.index

#安装net 服务
[WinMySQLAdmin] 
Server=D:/Program Files/MySQL/MySQL Server 5.6/bin/mysqld.exe
user=xxx


猜你喜欢

转载自blog.csdn.net/H_L_S/article/details/50825896