mysql8的配置优化

找到Mysql配置文件  MySql Server8.0 下的my.ini

配置信息如下:

[mysqld]
#是否启用bin log
skip-log-bin

# 设置3306端口
port=3388
# 设置mysql的安装目录
basedir=F:\mysql8\data
# 切记此处一定要用双斜杠\,单斜杠我这里会出错
# 设置mysql数据库的数据的存放目录
datadir=F:\mysql8\data
# 允许最大连接数
max_connections=20
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8

# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password

#InnoDB#
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#缓存池
innodb_buffer_pool_size=4G

# 双1模式
# 按事务刷盘,刷日志 [0:最快模式,1:安全模式,2:比0安全但比0要慢]看需求,服务器较为稳定可以选择2,自己搭建的最好选择1
innodb_flush_log_at_trx_commit=1
# 提交1次事务刷1次,可以为n
sync_binlog=1

# 脏页占innodb_buffer_pool_size的比例时,触发刷脏页到磁盘
# 25%~50%
innodb_max_dirty_pages_pct=30

# 后台进程最大IO性能指标
# 默认200,如果SSD,调整为5000~20000
innodb_io_capacity=200

# 默认10M。防止高并发下,数据库受影响
innodb_data_file_path=ibdata1:1024M:autoextend

# 默认2,单位s。慢查询时间。建议0.1~0.5
long_qurey_time=0.3

# 8.0默认row。记录格式,让数据安全可靠
binlog_format=row

# 默认8小时。交互等待时间和非交互等待时间
# 建议300~500s,两参数值必须一致,且同时修改
interactive_timeout=500
wait_timeout=500

#日志大小
innodb_log_file_size=256M
#日志缓存大小
innodb_log_buffer_size=12M

innodb_flush_log_at_trx_commit=2
#innodb_flush_method
#thread_cache=8
#innodb_autoextend_increment=128M

#这里确认是否起用压缩存储功能
innodb_file_per_table=1
#innodb_file_format=barracuda #mysql 8 不支持该功能
#决定压缩程度的参数,如果你设置比较大,那么压缩比较多,耗费的CPU资源也较多;
#相反,如果设置较小的值,那么CPU占用少。默认值6,可以设置0-9#
innodb_compression_level=6
#指定在每个压缩页面可以作为空闲空间的最大比例,
#该参数仅仅应用在设置了innodb_compression_failure_threshold_pct不为零情况下,并且压缩失败率通过了中断点。
#默认值50,可以设置范围是0到75
innodb_compression_pad_pct_max=50

server-id=1180

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3388
default-character-set=utf8
···
![感谢支持哈]

以上为配置说明,往往在应用mysql8的时候,数据加载很慢,包括大数据分页,那么我们给出的处理方法如下:
调整如下:

#缓存池
innodb_buffer_pool_size=4G

# 后台进程最大IO性能指标
# 默认200,如果SSD,调整为5000~20000
innodb_io_capacity=200



原文地址:https://www.cnblogs.com/zwbsoft/p/13791424.html