mysql5.7配置

my3306.cnf

[client]
port = 3306   #端口
socket = /data/mysql3306/mysql3306.sock  
#mysql以socket格局运营的sock文件地点

[mysql]
auto-rehash      #自动补全

[mysqld_safe]
log-error = /data/mysql3306/my3306.err   #谬误日志
pid-file = /data/mysql3306/my3306.pid   #process id文件

[mysqld]
user = mysql   #mysql以怎么样客户运维
port = 3306    #端口
default_storage_engine = InnoDB   #暗中同意存款和储蓄引擎
character-set-server = utf8   #默认utf8字符集
socket= /data/mysql3306/mysql3306.sock  
#mysql以socket方式运转的sock文件地点
pid-file = /data/mysql3306/mysql3306.pid  #process id文件
datadir = /data/mysql3306/data   #mysql的数额目录
basedir = /usr/local/mysql   #设置目录

skip_name_resolve = 1  #剥夺DNS主机名查找,启用后接纳IP或localhost
#skip-external-locking   #用于多进度条件下为MyISAM数据表实行锁定
symbolic-links=0 
#是或不是支持符号链接,数据库或表能够储存在my.cnf中钦赐datadir之外的分区或目录,为0不开启
max_connections = 3000    #mysql最加纳Ake拉接数
max_connect_errors = 100000   #超过其总是错误次数会被屏蔽
transaction_isolation = READ-COMMITTED  #东西濒离等第
interactive_timeout=180  #服务器关闭交互式连接前等待活动的秒数
wait_timeout=180  #服务器关闭非交互连接在此以前等待活动的秒数
back_log=600   
##在MYSQL甘休响应新央浼此前,短期内的有一点点个须求能够被存在仓库中
#explicit_defaults_for_timestamp = 1  #
假使一行数据中一些列被更新了,假如这一行中有timestamp类型的列,这么些列的数码也会自动更新到十二分时间点,设置为1平息自动更新时间点

# LOGGING #
log_bin=/data/mysql3306/logbin/mysql-bin   #binlog日志目录
binlog_format = row    #建议利用row方式
expire_logs_days = 7  #binlog日志保存天数
# sync_binlog = 1    #垄断数据库的binlog刷到磁盘上去,默以为0
slow_query_log = 1   #慢查询开启
slow_query_ca88官网,log_file=/data/mysql3306/my3306slow.log  
#慢查询日志文件保留路线
#log_queries_not_using_indexes = 1  #是还是不是记录未采纳索引的说话
#log_slow_admin_statements = 1   #记录optimize table,analyze
table和alter table语句
#log_slow_slave_statements = 1  #记录由Slave所爆发的慢查询
#log_throttle_queries_not_using_indexes = 10  
#设定每分钟记录到日志的未使用索引的语句数目,超过这一个数额后只记录语句数量和花费的总时间
long_query_time = 1   #慢查询时间,单位s
#min_examined_row_limit = 100   
#询问检查重回少于该参数内定行的SQL不被记录到慢查询日志
#master_info_repository = TABLE  #从机保存主节点音信方式,设成file时
会生成master.info 和
relay-log.info2个公文,设成table,音信就能够设有mysql.master_slave_info表中
#relay_log_info_repository = TABLE  #保留从机读取relay
log的岗位音信,可选值为FILE,TABLE
gtid_mode = on  #启用gtid类型
#enforce_gtid_consistency = 1  #强制GTID的一致性
#log_slave_updates   #从机更新是或不是记入日志,在做双主架构时十分首要
#relay_log =/data/slave/mysql-relay.log   #relay_log保存的岗位
#relay_log_recovery = 1 
#当slave从库宕机后,倘诺relay-log损坏了,导致有个别衔接日志未有管理,则自动扬弃具备未实施的relay-log,何况重新从master上获得日志,那样就保障了relay-log的完整性
#binlog_gtid_simple_recovery = 1  
#那些参数调控了当mysql运维或重启时,mysql在探究GTIDs时是何许迭代使用binlog文件的。
这些选项设置为真,会进步mysql施行恢复生机的习性。因为这么mysql-server运行和binlog日志清理更加快
#slave_skip_errors = ddl_exist_errors  #跳过不当

 

####cache#####
table_open_cache=128   
#点名表高速缓存的轻重,表的轻重相似是(max_connections*
查询同期选拔的表数)
thread_cache_size=300   #线程池,线程缓存
query_cache_size=128M  #查询缓存大小
query_cache_min_res_unit=128k     #表示query cache
每个结果集存放的蝇头内部存款和储蓄器大小
sort_buffer_size=8M  #每一个连接装置查询排序时所能使用的缓冲区大小
read_buffer_size=8M    #各样连接读查询操作使用的缓存
read_rnd_buffer_size=4M  #各样连接随机读查询操作使用的缓存
join_buffer_size=2M   #各样连接联合查询所运用的缓存大小
bulk_insert_buffer_size=16M   
#为二遍插入多条新记录的INSERT命令分配的缓存镇长度
max_heap_table_size=64M   
#其一变量定义了客商能够创造的内部存款和储蓄器表(memory
table)的大小.这些值用来计量内部存款和储蓄器表的最大行数值
tmp_table_size=64M   #有的时候表的高低

query_cache_type=1  #开启Query Cache 功能,有0,1,2三个值

 

###MyISAM###
#key_buffer_size=64M   #目录缓存大小
#key_cache_block_size=4k   内定各类索引缓存的区块大小
#myisam_sort_buffer_size=2M 

########innodb settings########
#innodb_page_size = 4k  #innodb各类数据页大小
innodb_buffer_pool_size = 4G 
#缓存innodb表的目录,数据,插入数据时的缓冲,专项使用mysql服务器设置的大小:
操作系统内部存款和储蓄器的七成-五分四极品
innodb_buffer_pool_instances = 1  
#能够张开几个内部存款和储蓄器缓冲池,把须求缓冲的数码hash到分裂的缓冲池中,那样能够并行的内部存款和储蓄器读写
#innodb_buffer_pool_load_at_startup = 1 
#默感到关闭OFF。假如翻开该参数,运营MySQL服务时,MySQL将地点热数据加载到InnoDB缓冲池中
#innodb_buffer_pool_dump_at_shutdown = 1 
#默感觉关闭OFF。即使张开该参数,停止MySQL服务时,InnoDB将InnoDB缓冲池中的热数据保存到地点硬盘
#innodb_lru_scan_depth = 2000  #会影响page
cleaner线程每趟刷脏页的多寡, 这是二个每1秒 loop三遍的线程
innodb_lock_wait_timeout = 50  
事务等待获取能源等待的最长日子,超越那一个日子还未分配到财富则会回到应用战败,单位s
#innodb_io_capacity = 4000 
#innodb_io_capacity_max = 8000  
#那七个设置会潜移暗化InnoDB每秒在后台实行稍微操作,知道完美可实行多少次IO操作最佳
#innodb_flush_method = O_DIRECT  #默许值为 fdatasync. 假使使用
硬件RAID磁盘调控器, 或者须要设置为
O_DIRECT,不使用硬件RAID调控器,也许采纳SAN存款和储蓄时, O_DIRECT
恐怕会形成质量减少

#innodb_log_group_home_dir = /data/mysql3306/redolog/    
#redolog重做日志存放目录
#innodb_undo_directory = /data/mysql3306/undolog/  
#undolog回滚日志存放目录
innodb_undo_logs = 128  #undo回滚段的数据, 最少超越等于35,暗中同意128
#innodb_undo_tablespaces = 3  
#用来设定创设的undo表空间的个数,在mysql_install_db时初阶化后,就再也不能够被改成了;默许值为0,表示不独立设置undo的tablespace,私下认可记录到ibdata中;
innodb_flush_neighbors = 1  
#InnoDB存款和储蓄引擎在刷新二个脏页时,会检验该页所在区(extent)的享有页,假设是脏页,那么共同刷新。这样做的功利是透过AIO能够将多个IO写操作合併为贰个IO操作。对于守旧固态硬盘提议接纳,而对于机械硬盘能够关闭。
innodb_log_file_size = 1G 
#概念了日志文件的高低,innodb日志文件的成效是用来保存redo日志
innodb_log_buffer_size = 8M  #事情在内部存款和储蓄器中的缓冲。 分配原
则:调整在2-8M.这一个值不用太多的。他中间的内存平日一分钟写到磁盘一遍
innodb_purge_threads = 4  
#决定是还是不是利用,使用多少个独立purge线程(清除二进制日志)
innodb_large_prefix = 1  #当改为ON时,允许列索引最大到达3072
innodb_thread_concurrency = 64  #InnoDB kernel并发最大的线程数
innodb_print_all_deadlocks = 1  #是还是不是将死锁相关音讯保存到MySQL
错误日志中
innodb_strict_mode = 1 
#拉开InnoDB严刻检查方式,特别采用了页数据压缩成效后,最好是张开该作用,即使写法有不当,不会有警示消息,而是径直抛出荒谬
innodb_sort_buffer_size = 8M  #OGL450DE逍客 BY 只怕GROUP BY
操作的buffer缓存大小

######mysqld-5.7########
innodb_buffer_pool_dump_pct = 40    #代表转储每一个bp instance
LRU上最热的page的百分比。通过安装该参数能够减掉转储的page数
innodb_page_cleaners = 4   #引进了多少个page
cleaner线程。进而达到并行刷脏的效力
innodb_undo_log_truncate = 1  #是不是开启在线回收(缩短)undo
log日志文件,帮助动态设置
innodb_max_undo_log_size = 2G 
#当赶过这么些阀值(暗许是1G),会触发truncate回收(减弱)动作,truncate后空中压缩到10M
innodb_purge_rseg_truncate_frequency = 128  #支配回收(裁减)undo
log的作用。undo log空间在它的回滚段尚未得到释放以前不会降低,
想要扩大释放回滚区间的功能,就得下降设定值
binlog_gtid_simple_recovery=1 
#本条参数调整了当mysql运维或重启时,mysql在查找GTIDs时是怎么着迭代使用binlog文件的。
那一个选项设置为真,会升高mysql实施恢复生机的质量。因为如此mysql-server运转和binlog日志清理越来越快
log_timestamps=system   #5.7.2 之后改参数为暗中同意 UTC
那样会导致日志中著录的大运比中中原人民共和国那边的慢,导致查看日志不方便人民群众。修改为
SYSTEM 就能够缓和难点
#transaction_write_set_extraction=MURMUR32 
#用来定义三个记下事务的算法,那么些算法使用hash标记来记录事务。假如使用MGPAJERO,那么这些hash值必要用于布满式争辩检查测量试验何地理#,在63位的种类,官方网址建议安装该参数使用
XXHASH64 算法。借使线上并不曾选用该意义,应该设为off
#show_compatibility_56=on 
#从mysql5.7.6开始information_schema.global_status已经最早被扬弃,为了包容性,此时亟待张开show_compatibility_56
[mysqldump]
quick 
max_allowed_packet = 32M     #mysql最大接受的数目包大小

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

#skip-grant-tables   #跳过权力

相关文章