mysql-存储引擎
mysql 存储引擎一般有 MyISAM、InnoDB、Memory、Merge、BDB、EXAMPLE、Federated 存储引擎。
一、MyISAM存储引擎
不支持事务的存储引擎,它是基于更老的ISAM存储引擎,每个MyISAM 存储引擎类型的表在磁盘上存储3个文件:tablename.frm存储定义文件、tablename.MYD :存储表的数据文件 tableName.MYI存储表的索引文件。我们指明设置一个表的存储引擎为MyISAM 存储引擎可以:Create table t(i int primarykey) engine=MyISAM ,注意老版本(5.1之前)的是使用type关键字 ,而从5.1之后是使用engine关键字。MyISAM存储引擎是mysql默认的存储引擎,但是在5.5以及5.5版本之后mysql的默认存储引擎是InnoDB 存储引擎。
MyISAM存储引擎的特性:
1、每个MyISAM存储引擎的表最大支持64个索引文件
2、blob和text列可以被设置为索引
3、提供高速的存储和压缩表以及全文检索功能
4、MyISAM是对整个表进行加锁的,不是对行锁的,读取时候会对其读取的所有表进行加共享锁,写入的时候会对表加入排他锁,但是在表的读取查询的同时,也可以往表里插入新的记录。
5、MyISAM表使用了B型树的索引 索引文件大小为: (key_length +4) * 0.67 加上所有键的和。
6、MyISAM支持三种不同的存储格式:固定格式、动态格式和压缩格式,固定格式和动态格式根据正在使用的列进行自动选择,对于已经压缩的格式则必须使用myisampack工具来创建。
7、MyISAM存储引擎使用前缀压缩使得索引更小。
二、InnoDB存储引擎
InnoDB给mysql数据库提供了具有提交、回滚和崩溃恢复的事务安全存储引擎,InnoDB锁定在行级别并也在查询的select语句中非锁定读--这些特性增加了mysql数据库的吞吐量,我们都知道mysql在解决高并发的环境下使用了共享锁和排他锁(其实这就像我们在java语言中的JDK1.5中添加的并发包中的ReentrantReadWriteLock 类,多个线程可以持有读锁-共享锁,有且仅当有一个线程具有写锁-排他锁,并且写锁的优先级最高,当写锁到达的时候必须插入到所有读锁之前,其他获得的读锁的线程必须等待写锁完成)那如何看待Innodb的性能呢? 1、innodb是行级别的锁定适合非常小的空间而不是像MyISAM存储引擎基本上是整张表进行锁定,innodb支持外键特性 innodb是为处理巨大数据量的最大性能而设计的,它为主内存中缓冲数据和索引而维护自己的缓冲池,innodb存储它的表和索引在一个表的空间中,表空间可以包含数个文件 innodb表可以使任何尺寸的,即使文件大小受操作系统的限制也是可以的。
被InnoDB存储引擎所管理的资源包含有innodb的表空间和它的日志文件。
未完待续。。。。。。
相关推荐
MySQL 存储引擎实验报告 本实验报告的主要内容是了解 MySQL 存储引擎的概念、设置和特点,并掌握 MySQL 存储引擎的使用方法。实验中涉及到多种存储引擎,包括 MyISAM 和 InnoDB,考察它们的相同点和区别,并对它们...
MySQL 存储引擎和数据库对象实验报告 本实验报告主要介绍 MySQL 中的存储引擎和数据库对象,涵盖了 MEMORY 存储引擎、MERGE 存储引擎、CHAR、VARCHAR、TEXT、BLOB 等类型的使用和特点,以及浮点数、定点数、日期...
10.2020-开年标杆班-day08-MySQL-存储引擎-微观结构-事务日志介绍 11.2020-开年标杆班-day08-MySQL-存储引擎-学生案例 2.2020-开年标杆班-day08-MySQL上节回顾-2 3.2020-开年标杆班-day08-MySQL-存储引擎介绍...
例如,对InnoDB存储引擎的优化,增强的JSON处理能力,以及新的加密功能等。此外,它还包含了对Java 8及更高版本的支持,能够利用这些新版本Java中的特性,如Lambda表达式和Stream API。 在使用mysql-connector-java...
1. **InnoDB存储引擎优化**:MySQL 5.7对InnoDB存储引擎进行了大量优化,包括更快的插入速度、更高的并发性能以及更强大的事务处理能力。InnoDB也是默认的存储引擎,支持事务处理和行级锁定。 2. **查询优化器改进*...
例如,InnoDB存储引擎得到显著改进,支持更大的表空间,提高了并发处理能力,并且支持更多的事务隔离级别。此外,它还增强了SQL查询的性能,特别是对于大型数据集的查询。 2. **MySQL安装文件**:`mysql-5.5.28-win...
InnoDB存储引擎的性能得到提升,支持更快的数据插入和检索;新的行级复制功能提供了更好的数据一致性;并且对加密和安全性的支持也有所加强。 使用`mysql-connector-java-8.0.20.jar`时,开发者首先需要将其添加到...
5.6.29版本引入了InnoDB存储引擎的改进,如更好的行锁定机制,更高效的全文索引,以及对并行复制的支持。此外,它还优化了查询缓存,增强了性能监控和诊断工具。 在压缩包中,`Hive的mysql安装配置.doc`可能是关于...
MySQL Connector/J 8.0.17 版本是针对MySQL服务器8.0系列的,这意味着它支持该版本的所有新特性,如InnoDB存储引擎的增强、JSON数据类型的支持、窗口函数以及并行复制等。此外,这个版本也包含了一些性能优化和错误...
2. **InnoDB存储引擎优化**:InnoDB是MySQL默认的事务处理引擎,8.3.0版本可能会进一步优化其性能,包括更快的索引构建、更高效的锁机制以及更好的内存管理。 3. **窗口函数**:这是MySQL 8.0引入的新特性,允许在...
例如,8.0版本引入了增强的JSON支持、窗口函数、更好的性能优化器以及InnoDB存储引擎的改进。 4. Mac OS Support: "mysql-connector-java-8.0.21"特别指出适用于Mac OS,这意味着驱动程序已经过测试并兼容苹果的...
1. **InnoDB存储引擎增强**:InnoDB作为MySQL的默认存储引擎,得到了大量优化,包括更快的行锁定、更好的并发性能以及支持更大的表空间。 2. **JSON支持**:MySQL 8.0增强了对JSON数据类型的处理,提供了丰富的函数...
- 存储引擎:MySQL支持多种存储引擎,如InnoDB(默认,支持事务处理和外键)、MyISAM(快速但不支持事务)和Memory(数据存储在内存中,速度极快)等。 5. **安装与配置**: - 在Windows上安装MySQL,需要按照...
1. **InnoDB引擎优化**:InnoDB作为MySQL的默认存储引擎,在8.0版本中进行了大量的优化,包括更快的插入速度、更高的并发性和更小的内存占用。 2. **窗口函数**:MySQL 8.0引入了SQL标准的窗口函数,允许用户在分组...
2. 创建数据存储目录(如`C:\ProgramData\MySQL\MySQL Server 8.0`)。 3. 使用命令行或安装向导进行配置,包括设置root用户的密码、网络监听地址、端口等。 4. 启动MySQL服务(通常通过服务管理器或命令行`...
1. **InnoDB存储引擎优化**:MySQL 5.5对InnoDB存储引擎进行了显著优化,包括支持更大的行内数据存储、更高的并发性以及更快的全文索引搜索。InnoDB是MySQL的默认事务处理引擎,适用于需要ACID(原子性、一致性、...
10. **性能优化**:此版本的MySQL支持InnoDB存储引擎的性能优化,如InnoDB Buffer Pool、索引优化、并行查询处理等,以提高数据读写速度和整体性能。 总之,`mysql-community-server-8.4.0-1.el9.x86_64`是为RHEL/...
- MySQL 8.0默认使用InnoDB存储引擎,支持事务处理、行级锁定和外键约束。 13. **安全管理** - 除了密码策略,还可以通过GRANT和REVOKE语句管理用户权限,实现细粒度的访问控制。 14. **优化器改进** - MySQL ...
1. **增强的InnoDB存储引擎**:InnoDB是MySQL默认的事务处理引擎,8.0版本中进行了优化,支持更大的行内存储,提高了并发性能,并引入了更好的崩溃恢复机制。 2. **窗口函数**:这是一组用于复杂分析查询的新SQL...
MySQL Connector/J 8.0.29 版本是针对MySQL 8.0数据库的,它支持最新的特性和优化,例如:SSL/TLS加密连接、性能优化的批处理、Caching Socket Factory以提高连接速度、以及对InnoDB存储引擎的优化支持。这个版本还...