mysql8.0配置⽂件详解[mysqld]
# MySQL 的安装路径
basedir = /software/servers/5-mysql-8.0.16
#mysql数据⽬录
datadir = /data/mysql/data
#mysql端⼝号
port = 20005
#可以通过socket⽂件来快速的登录mysql对应不同端⼝下的实例
socket = /tmp/mysql.sock
#临时⽂件⽬录
tmpdir=/data/mysql/tmp
#控制了general log、error log、slow query log⽇志中时间戳的显⽰,默认使⽤的UTC
log_timestamps=system
#服务器安装时指定的默认编码格式,这个变量建议由系统⾃⼰管理,不要⼈为定义。character-set-server = utf8mb4
#默认排序规则
collation-server = utf8mb4_unicode_ci
#⽤户登录到数据库上之后,在执⾏第⼀次查询之前执⾏ ⾥⾯的内容的
init_connect='SET NAMES utf8mb4'
character-set-client-handshake = FALSE
#禁⽌域名解析
skip-name-resolve
#事务隔离级别
transaction_isolation = READ-COMMITTED
#最⼤连接数
max_connections=4000
#阻⽌过多尝试失败的客户端以防⽌暴⼒破解密码
max_connect_errors=10000
#服务器关闭⾮交互连接之前等待活动的秒数
wait_timeout=86400
#服务器关闭交互式连接前等待活动的秒数
interactive_timeout=86400
#单个记录⼤⼩限制
max_allowed_packet=100M
#密码认证⽅式
default_authentication_plugin=mysql_native_password
#缓冲池字节⼤⼩,单位kb,如果不设置,默认为128M
innodb_buffer_pool_size=225G
#指定innodb tablespace⽂件( ibdata1就是默认表空间⽂件,⽂件⼤⼩为1G。因为有autoextend,若空间不够⽤,该⽂件可以⾃动增长)
innodb_data_file_path = ibdata1:1G:autoextend
server_id = 161
开启gtid
gtid_mode = ON
enforce_gtid_consistency = ON
log_slave_updates = ON
# 如果的值sync_master_info⼤于0,则副本在每个sync_master_info事件后都会更新其连接元数据存储库表 。如果为0,则表永远不会更新。
master_info_repository = TABLE
#此变量的设置确定副本服务器是否将其在中继⽇志中的位置记录到系统数据库中的 InnoDB表 mysql或数据⽬录中的⽂件中。
relay_log_info_repository = TABLE
# ⽤来决定slave同步的位置信息记录在哪⾥。 如果relay_log_info_repository=file,就会创建⼀个realy-log.info,如果
relay_log_info_repository=table,就会创建mysql.slave_relay_info表来记录同步的位置信息。
binlog_checksum = NONE
#校验binlog,默认为crc32
log_bin = /data/mysql/logs/binlog
#binlog⽇志⽂件存储路径
sync_binlog=100
#该参数控制着⼆进制⽇志写⼊磁盘的过程。
#该参数的有效值为0 、1、N:
#0:默认值。事务提交后,将⼆进制⽇志从缓冲写⼊磁盘,但是不进⾏刷新操作(fsync()),此时只是写⼊了操作系统缓冲,若操作系统宕机则会丢失部分⼆进制⽇志。mysql存储文档
#1:事务提交后,将⼆进制⽂件写⼊磁盘并⽴即执⾏刷新操作,相当于是同步写⼊磁盘,不经过操作系统的缓存。
#N:每写N次操作系统缓冲就执⾏⼀次刷新操作。
#将这个参数设为1以上的数值会提⾼数据库的性能,但同时会伴随数据丢失的风险。
#⼆进制⽇志⽂件涉及到数据的恢复,以及想在主从之间获得最⼤的⼀致性,那么应该将该参数设置为1,但同时也会造成⼀定的性能损耗。
log_bin_trust_function_creators = 1
#它控制是否可以信任存储函数创建者,不会创建写⼊⼆进制⽇志引起不安全事件的存储函数。如果设置为0(默认值),⽤户不得创建或修改存储函数,除⾮它们具有除CREATE ROUTINE或ALTER ROUTINE特权之外的SUPER权限。 设置为0还强制使⽤DETERMINISTIC 特性或READS SQL DATA或NO SQL特性声明函数的限制。 如果变量设置为1,MySQL不会对创建存储函数实施这些限制。 此变量也适⽤于触发器的创建
slow_query_log = ON
#开启慢查询⽇志
long_query_time = 2
#定义慢查询时间,超过2秒的sql才会被记录到slow.log
slow_query_log_file = /data/mysql/logs/slow.log
#慢⽇志存放路径
binlog_expire_logs_seconds = 1296000
#binlog失效⽇期单位秒
binlog_format = ROW
#binlog模式(ROW⾏模式,Level默认,mixed⾃动模式)
binlog_cache_size      = 4M
#为每个session 分配的内存,在事务过程中⽤来存储⼆进制⽇志的缓存。
max_heap_table_size    = 64M
#⽤户可以创建的内存表(memory table)的⼤⼩.这个值⽤来计算内存表的最⼤⾏数值
tmp_table_size          = 64M
#内部内存临时表的最⼤值
key_buffer_size        = 32M
#指定索引缓冲区的⼤⼩,它决定索引处理的速度,尤其是索引读的速度。
read_buffer_size        = 2M
#MySQL读⼊缓冲区⼤⼩
read_rnd_buffer_size    = 2M
#读取MyISAM表
bulk_insert_buffer_size = 64M
sort_buffer_size        = 2M
#是⼀个connection级参数,在每个connection第⼀次需要使⽤这个buffer的时候,⼀次性分配设置的内存
join_buffer_size        = 2M
#⽤来缓存以上第⼆、第三这两类 JOIN 检索的⼀个 BUFFER 内存区域块
transaction_write_set_extraction = XXHASH64
 #指⽰服务器对于每个事务,它必须收集写集并使⽤XXHASH64散列算法将其编码为 散列
loose-group_replication_group_name = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
#命名格式,每个实例必须完全相同
loose-group_replication_start_on_boot = off
#插件在服务器启动时不⾃动启动操作
loose-group_replication_local_address = '172.16.1.161:33061'
#指定本机地址及端⼝,是通信端⼝,不是实例端⼝
loose-group_replication_group_seeds =
'172.16.1.161:33061,172.16.1.162:33061,172.16.1.163:33061,172.16.1.164:33061,172.16.1.228:33061' #设置组成员的主机名和端⼝,端⼝使⽤的是通信端⼝,不是实例端⼝
loose-group_replication_bootstrap_group = off
#引导是否开启,选择关闭,⼿动引导
loose-group_replication_single_primary_mode = on
#关闭单主模式的参数
loose-group_replication_enforce_update_everywhere_checks = false
#关闭强制检查

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。