Innodb引擎,MySQL修改参数

InnoDB是事务安全的MySQL存储引擎,设计上采用了类似了Oracle数据库的架构。通常来说,InnoDB存储引擎是OLTP应用中核心表的首选存储引擎。同时,也正是因为InnoDB的存在,才使MySQL数据库变得更有魅力。

InnoDB存储引擎概述:
InnoDB存储引擎最早由Innobase Oy公司开发,被包括在MySQL数据库所有的二进制发行版本中,从MySQL5.5版本开始是默认的表存储引擎(之前的版本InnoDB存储引擎仅在Windows下为默认的存储引擎)。该存储引擎是第一个完整支持ACID事务的MySQL存储引擎(BDB是第一个支持事务的MySQL存储引擎,现在已经停止开发),其特点是:行锁设计、支持MVCC、支持外键、提供一致性非锁定读,同时被设计用来最有效地利用以及使用内存和CPU。

==============引擎,是基于表实现的。
存储引擎:

  • 1.在建立表的时候,会选择存储引擎engine
  • 2.mysql支持多种存储引擎,每一种存储引擎有自己的独立的特色,面向不同的使用场景。
    (现在大部分场景在用InnoDB引擎)

mysql经典版本:
5.1
5.5
5.6
5.7
=====看mysql版本的方法:

  • ①select version();
  • ②show variables like ‘%version%’;
  • ③刚开始登录的时候。
show engines; --》查看所有引擎

这里写图片描述

===
mysql> show engine innodb status \G;

=====InnoDB引擎(也有版本)的特点:

  • 1.支持行锁(各干各的活,互不影响)、并发性能好;
  • 2.支持MVCC(多版本并发控制Multi-Version Concurrency Control)(避免使用锁);
  • 3.支持外键(核心:在外表上插入一个值时,要在主表上有才能插入;在主表上查询时,外表上要有相关的引用);
  • 4.提供一致性非锁定读,并发性能更强;
  • 5.能够使用大内存和充分利用cpu资源。

=======InnoDB体系架构
下图简单显示了InnoDB的存储引擎的体系结构,从图可见,InnoDB存储引擎有多个内存块,可以认为这些内存块组成了一个大的内存池,负责以下工作:

  • 维护所有进程/线程需要访问的多个内部数据结构;
  • 缓存磁盘上的数据,方便快速地读取,同时在对磁盘文件的数据修改之前在这里缓存。
  • 重做日志(redo log)缓冲。
  • ……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
MySQL中的InnoDB引擎有一些与其相关的参数,可以通过调整这些参数来优化InnoDB的性能和行为。以下是一些常用的InnoDB参数: 1. innodb_buffer_pool_size: 这是InnoDB的最重要参数之一,它确定了分配给InnoDB数据和索引缓冲池的内存大小。增加该参数的值可以提高读取性能,但会占用更多内存。 2. innodb_log_file_size: 这个参数指定了InnoDB日志文件的大小。较大的日志文件可以提高写入性能,但也会占用更多的磁盘空间。 3. innodb_flush_log_at_trx_commit: 默认值为1,表示每次事务提交都将日志写入磁盘,确保数据持久性。可以将其设置为0或2以提高性能,但会增加一定的数据丢失风险。 4. innodb_file_per_table: 默认情况下,InnoDB将所有表的数据和索引存储在共享表空间中。设置为1后,每个表将在磁盘上有一个单独的表空间文件。 5. innodb_flush_method: 设置InnoDB刷新数据和日志到磁盘的方法。可以根据操作系统和存储设备的特性进行选择,常见的值有fsync、O_DIRECT等。 6. innodb_io_capacity: 这个参数控制InnoDB对I/O操作的速率。可以根据系统的I/O性能进行调整。 7. innodb_thread_concurrency: 控制InnoDB线程的并发度,可以根据系统的处理能力进行调整。 以上只是一些常见的InnoDB参数,根据具体情况和需求,您可能需要调整其他参数。请注意,在更改这些参数之前,请确保了解其含义和潜在影响,并在测试环境中进行适当的性能测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斯言甚善

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值