SQL的优化和引擎有哪些
一、sql的优化有哪些
(1)查询语句优化,避免全表扫描,用索引查询,限制返回行数,避免使用‘SELECT *’。
(2)索引优化,选择合适索引类型,避免过多索引。
(3)三是连接查询优化,选合适连接方式且确保连接条件有索引。
(4)数据库设计优化,包括适当规范化与反规范化以及使用分区技术。
(5)服务器配置优化,调整内存设置和优化磁盘 I/O。此外,还包括定期维护数据库和监控数据库性能等措施。
二、 sql引擎有哪些
(1)InnoDB
-
支持事务处理,具有 ACID 属性(原子性、一致性、隔离性、持久性)。
-
行级锁定,提高并发性能。
-
支持外键约束,保证数据完整性。
-
具备良好的崩溃恢复能力。
适用于对数据一致性要求高的应用,如金融、电商等领域的数据库系统。
(2)MyISAM
-
不支持事务。
-
表级锁定,并发写入性能相对较低,但读取速度较快。
-
占用空间较小,适合存储大量数据的只读场景。
主要适用于数据仓库、日志记录等对事务要求不高但需要快速查询的场景。
(3)Memory(也称为 HEAP)
-
数据存储在内存中,读写速度非常快。
-
不支持事务和外键约束。
-
数据在数据库关闭时会丢失,适合临时数据存储或缓存
(4)Archive
-
专门用于存储大量历史数据,具有高压缩比。
-
只支持 INSERT 和 SELECT 操作,不支持更新和删除。
-
占用磁盘空间小,适合数据归档场景。
(5)CSV
-
以 CSV 格式存储数据,数据可以方便地被其他工具处理。
-
不支持事务和索引,读写性能相对较低。