千家信息网

怎么理解并掌握mysql参数文件和类型

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"怎么理解并掌握mysql参数文件和类型",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么理解并掌握mysql参数文件和类型"吧!1
千家信息网最后更新 2026年11月01日怎么理解并掌握mysql参数文件和类型

这篇文章主要讲解了"怎么理解并掌握mysql参数文件和类型",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么理解并掌握mysql参数文件和类型"吧!

1. 第四章:数据库文件

数据库层面文件:参数文件my.cnf,错误日志error log,慢查询日志slow log,全量日志general log,二进制日志binlog,审计日志audit log,中继日志relay log,套接字文件socket,进程文件pid,表结构文件

存储引擎层面:redo log,undo log日志文件。

1.1. 参数文件

参数文件优先级:/etc/my.cnf>/etc/mysql/my.cnf>/usr/local/mysql/my.cnf>/.my.cnf

想设置默认参数文件,需设置--defaults-file参数

my.cnf文件中,分为client section和server section两块。

client section用来配置mysql客户端参数。

具体讲解服务端参数,查看通过:show variables like '%参数%'

innodb_buffer_pool:数据库可用内存,物理内存50%-80%;,5.7可在线修改;

innodb_buffer_pool_instance:默认未1,5.6.6后可调整多个,表示InnoDB缓冲区可划分为多个区域,提高并发性。每个缓冲区自管理,通过show engine innodb status可看到每个instance使用内存的情况。只有innodb_buffer_pool大于1G,多实例才生效。

快速加载内存中元数据信息

实例宕机,内存中数据消失i,重新读取将导致IO压力增大,以下参数可解决:innodb_buffer_pool_load_at_staratup和innodb_buffer_pool_dump_at_shutdown

这两个参数设置为启用(5.7默认启用),在实例关闭时,可将热数据的元数据信息dump出来,保存到ib_buffer_pool文件中;查看ib_buffer_pool文件名称:show variables like '%innodb_buffer_poll_file%'

当实例启动时,把元数据快速加载到内存,其实所谓元数据就是space number和page number的列表信息,查询语句如下:

切换数据库:use infomation_schema

select space,page_number from INNODB_BUFFER_PAGE limit3;

innodb_data_file_path:可指定系统表空间文件路径和ibdata1文件大小,默认10M,建议1G;

innodb_flash_log_at_trx_commit、sync_binlog、innodb_max_dirty_pages_pct:这三个参数影响redo log、binlog、脏页的刷新参数。

interactive_timeout:服务器关闭交叉式连接前等待活动的时间,默认8小时(28800s);

wait_timeout: 服务器关闭非交叉式连接前等待活动的时间,默认8小时(28800s);

这两个参数要一起设置成一样的值,为避免过大连接时间,建议调整为300-600秒;5.7默认300s;

innodb_thread_concurrency:innodb内核最大并发线程数,默认0,表示不限制。

innodb_flash_method:影响innodb数据文件、redo log 文件打开刷写模式,建议选择默认值0_DIRECT,数据文件直接从mysql innodb buffer 写入到磁盘,不通过os buffer。

innodb_old_blocks_time:决定young pages list中数据页多久转移到old pages list.

innodb_old_blocks_pct:决定old pages list占整个列表的百分比。案例:遇到大表扫描活使用mysqldump操作,有可能踢走热数据,给数据库带来IO压力,可适当减少innodb_old_blocks_pct的值分配,保证更多的热数据不会被冲掉。

transaction_isolation:事务的隔离级别,默认REPEATABLE-READ,其他还有READ-UNCOMMITTED, READ-COMMITTED,SERIALIZABLE;

innodb_open_files:可同时打开.ibd问问你家的个数,最小10,默认300,建议65535;

innodb_log_buffer_size:日志缓冲大小,数据改变记录到缓冲区,如innodb_log_waits(等待日志缓冲刷出的次数)大于0,而且持续增长,就要增大log buffer,范围16M-64M。

innodb_log_file_size: redo log日志的大小。

innodb_log_files_in_group:redo log文件组中日志文件的数据量,默认至少2个;

max_connections:数据库最大连接数,默认151,可调大活调内部并发数

innodb_thread_concurrency:innodb内部并发数,默认0不受限,根据系统压力,可改成CPU两倍。通过设置thread_pool让连接复用。

有监控读取infomation_schma下面表,可关闭innodb_stats_on_metadata,方法:set global innodb_stats_on_metadata=0

expire_logs_days:代表binlog的过期时间,单位是天。

slow_query_log:慢查询日志开关,1表示开,生产环境要开启。

long_query_time:超过时间的日志会记录下来。

log_queries_not_using_indexes:如sql没有索引则会记录到慢查询日志中,生产环境开启。set global log_queries_not_using_indexes = on

server-id: 代表同一组主从结构的唯一标识。

binlog_format:二进制日志格式,生产环境用row安全,不会出现跨库复制丢失数据。

lower_case_table_names:默认0区分表名大小写,1不区分,以小写存储。

innodb_fast_shutdown:影响innodb关闭时的行为,0是默认且最安全最慢,3最快。

0:InnoDB关闭时,需执行purge all,merge change buffer,flush dirty pages,

1:InnoDB关闭时,不执行purge all,merge insert buffer,不执行flush dirty page;

2:InnoDB关闭时:不执行full purge,merge insert buffer,刷新脏页到磁盘,只将redobuffer写到日志。

innodb_force_reecovery:影响InnoDB存储引擎恢复时的行为,取值0到6

0:当需要恢复时执行所有恢复操作。默认为0

1:忽略检查到的corrupt页;

2:阻止主线程运行,如主线程要执行full purge,会导致crash

3:不执行事务回滚操作

4:不执行插入缓冲的合并操作

5:不查看撤销日志,InnoDB会见未提交的事务视为已提交;

6:不执行前滚操作

innodb_status_output,innodb_status_output_locks:建议关闭,即设置为0,否则将数据库监控的信息全记录到error.log中,日志增长过快。

innodb_io_capcity:影响刷新脏页和插入缓冲的数量,默认200.

auot_increment_increment:自增字段每次递增的值,默认1

auto_increment_offset:自增字段开始值。

1.2. 参数类型

参数分为动态参数和静态参数

动态参数:

set global:代表全局参数,修改退出会话依然有效,但重启后失效。

set session:只对当前会话有效,一旦退出,立即失效。

静态参数:无法在线修改,修改会报read only variable错误。只能修改配置文件,重启数据库生效。

感谢各位的阅读,以上就是"怎么理解并掌握mysql参数文件和类型"的内容了,经过本文的学习后,相信大家对怎么理解并掌握mysql参数文件和类型这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

文件 参数 数据 日志 数据库 缓冲 内存 类型 建议 时间 影响 信息 大小 实例 查询 事务 代表 压力 环境 线程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州万易互联网科技有限公司 互联网科技公司的优势 智网互联网科技 杭州互联网科技公司 互联网科技类展会 互联网公司会议桌创意科技软装饰 成都玖崟互联网科技有限公司乐商圈怎么样 广州慧亚互联网科技怎么样 互联网教育科技公司vipkid 崇明区互联网教育科技诚信经营 互联网科技大赛获奖感言 互联网科技圈年度人物 互联网方面的科技前沿 高科技互联网套路 互联网安防科技感 信承诺互联网科技有限公司 唯美互联网科技 互联网金融运营模式中的金融科技 互联网科技创业有什么好项目 互联网 科技节活动 微视频大赛 上海喔噻互联网科技有限公司 未来的互联网科技 丰台科技园 互联网 北京禾田雨橡互联网科技 广州紫鲸互联网科技 厦门千工互联网科技有限公司 东莞新华互联网科技学校 卓翼科技产业互联网合作 江苏互联网智能科技产品出厂价 优雇互联网科技有限公司
0