mysql之配置

mysql之配置

# 客服端	部分
[client]
#no-beep
# pipe
# socket=mysql
port=3306
[mysql]
default-character-set=utf8

# 服务器部分
[mysqld]
# 下面三个只能三选一
# skip-networking
# enable-named-pipe
# The Pipe the MySQL Server will use
# socket=mysql

# 连接端口
port=3306

# 安装目录
basedir= D:/soft/MySQL/mysql-5.6.27-win32

# 数据目录
datadir= D:/soft/MySQL/mysql-5.6.27-win32/data

# 错误日志
log-error= D:/soft/MySQL/mysql-5.6.27-win32/data/FXL.err

# 创建 表、库的时候的默认字符串类型
character-set-server=utf8

# 默认的引擎策略
default-storage-engine=INNODB

# sql语句的是否严格遵守SQL标准
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

# window的认证
# plugin-load=authentication_windows.dll

###################### 日志 #######################
# 日志设置
#log-output=NONE
#general-log=0
#general_log_file="FXL.log"
# 慢志设置
#slow-query-log=0
#slow_query_log_file="FXL-slow.log"
#long_query_time=10

################# 主从设置 #######################
# 二进制日志<主从配置>
server-id=2
#log-bin=mysql-bi
#需要记录日志的数据库,相当于需要同步的数据库
#binlog-do-db =repository1	
#若涉及及同步函数或者存储过程需要配置,否则主备会产生异常不能同步
#log_bin_trust_function_creators=TRUE		

################# 连接和查询设置 #################
# 最大并行session,其中至少有一个连接会有一个超级权限,去做管理员的事,即使连接数已经满了。
max_connections=3600

# 查询缓存,在查询时使用同样一个select语句去查询的时候,它将起作用。但是如果你的表改变的非常快,则性能将降低
query_cache_size=0

# 整个服务器打开的table文件数(I/O设置)。在mysqld部分提高这项值,在mysql_safe部分设置设置最大打开文件数为4096
table_open_cache=2000

# (表在内存中的大小)在内存打开表的的临时大小。如果一个表比这个值大,它将数据刷新到硬件设备上,这个可以设置大一些。
tmp_table_size=14M

# 线程池大小
thread_cache_size=10

####################################################################
			#innodb Specific options
####################################################################
# innodb的数据存放
# innodb_data_home_dir=0.0

# 跳过innodb
# skip-innodb

# 额外元数据内存池。在开启时从系统中(内核中)申请更加大的内存,而现代的OS足够你使用,你不需要修改这个值。
innodb_additional_mem_pool_size=2M

# 事物日志更新的方式
# 如果设置为1,Innodb将会在每一次提交后(一次事物),将事物日志存放在ACID事物存放的文件(一次事物操作存放一次)
# 如果你希望保证这个使用安全,而且你很短的事物方式(一次事物设计的表很少),可以设置为0、2来减少硬件的I/O操作
# 设置为0:直接存放在普通的日志文件中,每秒存放一次。设置为2:表示每次2次刷新一次。
innodb_flush_log_at_trx_commit=1

# 内存中的的日志文件大小
innodb_log_buffer_size=1M

# innodb的内存池来存放索引和行数据,将这个数据设大些,可以减少去硬盘读取数据的I/O开销。
# 设置为内存的80%,不要太大了,引起系统中的物理内存表页切换消耗(cpu中的内存表页)。
# 32位系统,最大为2--3.5G 
innodb_buffer_pool_size=45M

# 日志组中每一个日志文件大小。需要站到buffer池的25%-100%已避免经常性的刷新
# 但是,太大的值将会增加线程的运行时间
innodb_log_file_size=48M

# 线程数(在innodb的内核中),极限值更具程序、硬件以及系统的性能综合决定,太高值可能导致线程都懂
innodb_thread_concurrency=9

# 当Innodb系统的表空间文件满了后,它将自动额外增加这么大空间
innodb_autoextend_increment=64

# Innodb缓存池的分区数。在多字节的系统中使用缓存池,可以将缓冲池分成多个实例,以减少不同线程的读写。
innodb_buffer_pool_instances=8

# Innodb中的并发线程数
innodb_concurrency_tickets=5000

# 旧子表的插入锁定时间,然后移动到新表中
innodb_old_blocks_time=1000

# 定义最小打开的.ibd文件数在同一时间,最小为10.
#innodb_open_files=300

# 当启用时,InnoDB更新元数据报表统计。
innodb_stats_on_metadata=0

# 当 这个属性开启,innodb存放索引表中的数据将会存放在.ldb文件中,而不是在表空间.(索引数据刷新到.ibd的次数)
innodb_file_per_table=1

# Use the following list of values: 0 for crc32, 1 for strict_crc32, 2 for innodb, 3 for strict_innodb, 4 for none, 5 for strict_none.
innodb_checksum_algorithm=0

# 外部请求的最大数
# 这个选项在mysql的主线程在获取多个连接的在会场短的时候
# 当主线程选择连接开启一个新的线程。
# 备份日志值决定了多少个请求被叠堆在这么短的时间时间内。
# 停止新的请求响应
# 当你需要在短时间内连接大请求的时候增加它
back_log=80

# 这好似一个非0值,所有表在设置时间后释放,同步不刷新到硬盘上。在低资源的系统上使用。
flush_time=0

# 最小的缓存在 索引扫描、范围索引扫描和不使用索引进行join操作,或者全表扫描的时候
join_buffer_size=256K

# The maximum size of one packet or any generated or intermediate string, or any parameter sent by the
# mysql_stmt_send_long_data() C API function.
# 最大的
max_allowed_packet=4M

# 错误连接的重复连接的次数
max_connect_errors=100

# 打开的文件数大小,不是越大越好
open_files_limit=4161

# 查询缓存:0-关闭,1-打开,2-询问
query_cache_type=0

# 如果你想在 SHOW GLOBAL STATUS 语句中每一秒显示 sort_merge_passes ,你可以增加 sort_buffer_size 值去加快 ORDER BY 或者 GROUP BY 的操作,但是不能条查询的速度和索引速度。
sort_buffer_size=256K

# 表的缓存大小,如果你使用很大一个缓存值去提高打开标的速度,表的定义缓存需要很少的空间,而且不使用表描述,不想不同的标缓存。默认最小值为400
table_definition_cache=1400

# Specify the maximum size of a row-based binary log event, in bytes.
# Rows are grouped into events smaller than this size if possible. The value should be a multiple of 256.
binlog_row_event_max_size=8K

# If the value of this variable is greater than 0, a replication slave synchronizes its master.info file to disk.
# (using fdatasync()) after every sync_master_info events.
sync_master_info=10000

# If the value of this variable is greater than 0, the MySQL server synchronizes its relay log to disk.
# (using fdatasync()) after every sync_relay_log writes to the relay log.
sync_relay_log=10000

# If the value of this variable is greater than 0, a replication slave synchronizes its relay-log.info file to disk.
# (using fdatasync()) after every sync_relay_log_info transactions.
sync_relay_log_info=10000


你可能感兴趣的:(mysql配置)