mysql数据库的优化整理之插入数据优化
来源:互联网 发布:如何手机注册淘宝联盟 编辑:程序博客网 时间:2024/06/08 00:27
插入数据时,影响插入速度的主要是索引,唯一性校验,一次插入的数据条数等等。
插入数据的优化,不同的存储引擎优化手段不一样,在mysql中常用的存储引擎有,MyISAM 和 InnoDB
· MyISAM是非事物安全类型的,而InnoDB是事物安全型的
· MyISAM锁的粒度是表级,而InnoDB支持行级锁定
· MyISAM支持全文类型索引,而InnoDB不支持全文索引
· MyISAM相对简单,所以效率上要优于InnoDB,小型应用可以考虑使用MyISAM。
· MyISAM表是保存成文件的形式,在跨平台的数据转移中使用MyISAM存储会省去不少麻烦。
· InnoDB表比MyISAM表更安全,可以在保证数据不会丢失的情况下,切换非事务表到事物表(alert table tablename type=innodb)。
如果要执行大量的select可以使用MyISAM,如果大量的insert或update可以使用InnoDB。
MyISAM
禁用索引:ALERT TABLE TABLE_NAME DISABLE KEYS
开启索引:ALERT TABLE TABLE_NAME ENABLE KEYS
禁用唯一性检查:SET UNIQUE_CHECKS=0;
开启文艺性检查:SET UNIQUE_CHECKS=1;
插入数据时,可以一次插入一条,也可以一次插入多条,插入多条速度更快
使用LOAD DATA INFILE 当需要批量导入数据时,使用LOAD DATA INFILE 语句插入速度快很多。
InnoDB
禁用唯一性检查 用法和MyISAM一样
禁用外检检查 SET foreign_key_checks=0;
启动外检检查 SET foreign_key_checks=1;
禁止自动提交事务 SET autocommit=0;
开启自动提交事务 SET autocommit=1;
了解更多mysq数据库优化请参考我的其他文章
- mysql数据库的优化整理之插入数据优化
- mysql数据库的优化整理之数据库结构优化
- mysql数据库的优化整理之查询优化
- mysql数据库的优化整理之服务器优化
- 优化MySQL插入数据
- Mysql 插入数据优化
- MySQL优化--插入的优化
- 优化MySql数据库的方案整理
- MySQL 批量插入数据优化
- mysql 数据插入优化方法
- mysql 批量插入数据 优化
- mysql 批量插入数据优化
- MySql批量插入数据优化
- 数据库优化之MySQL
- MySQL 数据库删除大批量数据的优化
- mysql优化之碎片整理
- mysql数据库优化之数据库结构优化
- MySQL大批量数据插入,PHP之for不断插入时出现缓慢的解决方案及优化。
- sd卡记录
- c++的转换构造函数和杜绝隐式类型转换的explicit关键字
- JAVA8字符串转数组、数组转List
- android 在activity里面关闭指定的页面
- 布隆过滤器及其实现
- mysql数据库的优化整理之插入数据优化
- 模拟微信浏览器抓取数据
- matplotlib入门——绘制简单图形
- Zabbix告警接入微信
- 记一下几个BUG
- 一位资深程序员大牛给予Java初学者的学习路线建议
- 局部高亮怎么实现?
- python运维之路——Twsited、memcache、Redis、RabbitMQ
- confrim用法