MySQL的常见存储引擎介绍与参数设置调优(转载)

原文地址:http://www.cnblogs.com/demon89/p/8490229.html

MySQL常用存储引擎之MyISAM

特性:1、并发性与锁级别2、表损坏修复check table tablenamerepair table tablename3、MyISAM表支持的索引类型①、全文索引②、前缀索引4、MyISAM表支持数据压缩myisampack
限制:版本 < MySQL5.0时默认表大小为4G如存储达标则要修改MAX_Rows和AVG_ROW_LENGTH版本 > MySQL5.0时默认支持为256TB适用场景:1、非事务形应用2、只读类应用3、空间类应用

MySQL常用存储引擎之Innodb

Innodb存储引擎的特征1、Innodb是一种事务性存储引擎2、完全支持事务的ACID特性3、Redo Log 和 Undo Log4、Innodb支持行级锁Innodb使用表空间进行 数据存储为每个表独立创建一个表空间存储innodb_file_per_tableON:独立表空间:tablename.ibdOFF:系统表空间:ibdataX(X是个数字,从1开始的数字)系统表空间和独立表空间要如何选择比较:系统表空间无法捡的收缩文件大小独立表空格键可以通过optimize table命令收缩系统文件系统表空间会产生IO瓶颈独立表空间可以同时向多个文件刷新数据表转移的步骤步骤:1、使用mysqldump到处所有数据库表数据2、停止MySQL服务,修改参数,并删除Innodb相关文件3、重启MySQL服务,重建Innodb系统表空间4、重新导入数据

MySQL常见的存储引擎之CSV

文件系统存储特点1、数据以文本方式存储在文本中2、.csv文件存储表内容3、.csm文件存储表的元数据如表状态和数据量4、.frm文件存储表结构信息5、以csv格式进行存储6、所有列必须都是不能为Null的7、不支持索引适用场景:适用作为数据交换的中间表(电子表格->csv文件->MySQL数据库目录)

MySQL常用存储引擎之Archive

文件系统存储特点1、以zlib对表数据进行压缩,磁盘I/O更少2、数据存储在ARZ为后缀的文件中Archive存储引擎的特点1、只支持insert和select操作2、只允许在自增的ID列上加索引适用场景:日志和数据采集类应用

MySQL常用存储引擎之Memory

文件系统存储特点1、也成HEAP存储引擎,所以数据保存在内存中功能特点:1、支持HASH索引和Btree索引2、所有字段都有固定长度varchar(10)=char(10)3、不支持BLOG和TEXT等大字段4、Memory存储引擎使用表级锁5、最大大小由max_heap_table_size参数决定适用场景:1、用于查找或者是映射表,例如邮编和地区的对应表2、用于保存数据分心中产生的中间表3、用于缓存周期性聚合数据的结果表

MySQL常用存储引擎之Federated

特点:1、提供了访问远程MySQL服务器上表的方法2、本地不存储数据,数据全部放到远程服务器上3、本地需要保存表结构和远程服务器的连接信息如何使用默认静止,启用需要在启动时增加federated参数mysql://user_name[:password]@host_name[:port]/db_name/table_name适用场景:偶尔的统计分析及手工查询

如何选择正确的存储引擎

参考条件1、是否要支持事务2、定期备份3、崩溃恢复4、存储引擎的特有特性

Mysql的服务器参数介绍

MySQL获取配置信息路径1、命令行参数mysqld_safe --datadir=/data/sql_data2、配置文件查看配置文件的命令:[root@localhost ~]# mysqld --help --verbose | egrep -A 1 'Default options'配置文件的有效路径/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnfMySQL配置参数的作用域1、全局参数set global 参数名=参数值;set @@global.参数名:=参数值;2、会话参数 set [session] 参数名=参数值;set @@session.参数名:=参数值;内存配置相关参数1、确定可以使用的内存的上限2、确定MySQL的每个连接使用的内存sort_buffer_sizejoin_buffer_sizeread_buffer_sizeread_rnd_buffer_size3、确定需要为操作系统保留多少内存4、如何为缓存池分配内存Innodb_buffer_pool_size注:设置缓存池的大小的考量标准为:总内存-(每个编程所以需要的内存*连接数)-系统保留内存key_buffer_sizeselect sum(index_length) from information_schema.tables where engines='myisam'I/O相关配置参数Innodo I/O相关配置Innodb_log_file_size 单个事务日志的大小Innodb_log_files_in_group 控制文件日子的个数事务日志总大小 = Innodb_log_files_in_group * Innodb_log_file_sizeInnodb_log_buffer_size = (32M or 128M)Innodb_flush_log_at_trx_commint0:每秒进行一次log写入cache,并flush log到磁盘1[默认]:在每次事务提交执行log写入cache,并flush log到磁盘2[建议]:每次事务提交,执行log数据写入到cache中,每秒执行一次flush log到磁盘Innodb_flush_method=O_DIRECTInnodb_file_per_table = 1Innodb_doublewrite = 1MyISAM I/O相关配置delay_key_writeOFF:每次写操作后刷新键缓冲中的脏块到磁盘ON:只对在键表时指定了delay_key_write选项的表使用延迟刷新ALL:对所有的MyISAM表都使用延迟建写入安全相关配置参数expire_logs_days 指定自动清理binlog的天数max_allowed_packet 控制MySQL可以连接的包大小,建议设置为32M,如果使用了主从复制,参数应该设置成一致的skip_name_resolve 禁用DNS查找sysdate_is_now 确保sysdate()返回确保性日期read_only 禁止非super权限的用户写操作  注:建议在主从复制中的从库开启此功能。以确保不能修改从库中的操作,只能从主库同步过来skip_slave_start 禁用Salve自动恢复(从库中的设置使用)sql_mode 设置MySQL所使用的SQL模式 (谨慎操作,可能会造成MySQL无法执行)① strict_trans_tables 给定的数据如果不能插入到数据库中,对事务引擎会终端操作,对非事务引擎是没有影响的② no_engine_subitiution 在create table中指定engines的时候,如果引擎不可用,不会使用默认引擎建立表③ no_zero_date 不能再表中插入0年0月0日的日期④ no_zero_in_date 不接受一部分的为0的日期⑤ noly_full_group_by 其他常用的配置参数sync_binlog 控制MySQL如何向磁盘刷新binlogtmp_table_size 和 max_heap_table_size 控制内存临时表大小(不宜设置的太大,以避免内存的溢出)max_connections 控制允许的最大连接数(默认为100,有点小,根据自己的业务适当的调整大小)

什么影响了性能

数据库设计对性能的影响1、过分的反范式化为表建立太多的列2、过分的范式化造成太多的表关联(关联的表尽可能的控制在10个之内)3、在OLTP环境中使用不恰当的分区表4、使用外键保证数据的完整性

总结

性能优化的顺序1、数据库结构设计和SQL语句2、数据库存储引擎的选择参数配置3、系统选择及优化4、硬件升级

转载于:https://www.cnblogs.com/huiy/p/10006787.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/278844.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络udp实验时间戳请求报文与应答报文的表格填写,自考计算机网络管理历年(2007.1-2013.1)试题及答案(标有页码)...

33.假设某RMON MONTIOR矩阵组的matrixSDTable和matrixDSTable的内容如下表1和表2所示。表1. matrixSDTbalematirxSDSourceAddress matrixSDDestAddress matrixSDPkts m,atrixSDOctests matrixSDError 008000AB1258 00A0C5BA9C02 1274 1697133 11 ……………表2. matrixDSTablem…

如何在Twitter上阻止令人讨厌的“今日热门新闻@yourname”垃圾邮件

Lately I’ve noticed an annoying trend on Twitter—people constantly spamming your replies feed with these posts saying that you were the top story on somebody’s feed. Very irritating, but here’s how to get rid of it. 最近&#xff0c;我注意到Twitter上有一…

蕾丝的选购和保养秘诀

维秘柔情内裤性感/舒适/健康/透气 复制代码 维秘柔情不仅仅是商品质材料和考究的设计&#xff0c;更是一个坚守生活美学的理念&#xff0c;总有一款维秘柔情告诉你的身体密码。从此之前所用&#xff0c;皆为将就。从此之前所见&#xff0c;皆为平常。 在内裤不再是遮掩的这个时…

Python -bs4介绍

https://cuiqingcai.com/1319.html Python -BS4详细介绍Python 在处理html方面有很多的优势,一般情况下是要先学习正则表达式的.在应用过程中有很多模块是非常方便的,先尝试使用BeautifulSoup和Urllib进行网页的处理,仅供学习.首先列举所需要导入的模块:from bs4 import Beauti…

广东工业大学计算机学院书记,计算机学院召开2018年工作总结大会

单 位&#xff1a;计算机学院2019年1月8日上午&#xff0c;计算机学院在工学一号馆216会议室召开了学年工作总结大会。会议由学院陈平华副院长主持。会上&#xff0c;郭维喜书记对过去一学年学院各项工作给予了肯定&#xff0c;并从党的建设、意识形态工作、思想宣传工作、师德…

Numpy的常用方法

NumPy是用Python进行科学计算的基本软件包。它包含以下内容&#xff1a; 一个强大的N维数组对象复杂的&#xff08;广播&#xff09;功能用于集成C / C 和Fortran代码的工具有用的线性代数&#xff0c;傅里叶变换和随机数能力除了明显的科学用途外&#xff0c;NumPy还可以用作通…

vista任务栏透明_增加Windows Vista任务栏预览大小的赏金(付费!)

vista任务栏透明Ever since Windows Vista came out, I’ve been trying to figure out how to increase the size of the tiny Windows Vista taskbar preview windows. I’ve scoured the registry, used process monitor to try and find hidden registry keys, and looked …

Netty原理分析

Netty是一个高性能、异步事件驱动的NIO框架&#xff0c;它提供了对TCP、UDP和文件传输的支持&#xff0c;作为一个异步NIO框架&#xff0c;Netty的所有IO操作都是异步非阻塞的&#xff0c;通过Future-Listener机制&#xff0c;用户可以方便的主动获取或者通过通知机制获得IO操作…

福州大学计算机学院董晨老师,福州大学代表队高分斩获第三届福建省高校网络空间安全大赛冠军...

新闻中心讯/10月27日&#xff0c;由福建省教育厅、福建省网络与信息安全协调小组办公室主办的“百越杯”第三届福建省高校网络空间安全大赛在福州圆满落幕&#xff0c;福州大学三支代表队揽获本届大赛的冠军暨特等奖、二等奖和三等奖。本次省赛福州大学派出的代表队由数学与计算…

用uid分库,uname上的查询怎么办?

2019独角兽企业重金招聘Python工程师标准>>> 【缘起】 用户中心是几乎每一个公司必备的基础服务&#xff0c;用户注册、登录、信息查询与修改都离不开用户中心。 当数据量越来越大时&#xff0c;需要多用户中心进行水平切分。最常见的水平切分方式&#xff0c;按照u…

python 新闻摘要_每日新闻摘要:运营商承诺他们不再出售您的位置…

python 新闻摘要Last year it was discovered that Verizon, Sprint, AT&T, and T-Mobile were all selling your real-time location data to third-party companies. They offered no oversight of what the companies did with the data whatsoever, and if that’s not…

Jquery中的this是什么类型

var city $("#city"); //这个city是dom还是jq if(city instanceof jQuery) alert(11); else alert(this.tagName); 总结&#xff1a; 1 如果是一个节点的某个事件…

计算机复试比重低的学校,又有985院校发布调剂信息,这个34所降低复试比重!...

原标题&#xff1a;又有985院校发布调剂信息&#xff0c;这个34所降低复试比重&#xff01;01985院校调剂01.清华大学昨天&#xff0c;清华大学发布一则调剂信息&#xff1a;临床医学交叉人才培养项目接受调剂。接收调剂专业如下&#xff1a;据其官网介绍&#xff0c;该项目为推…

Silverlight 解谜游戏 之四 粒子特效

前几篇一直在Blend中工作没体现出开发者的作用&#xff0c;本篇将为订书器&#xff08;Stapler&#xff09;添加自定义粒子效果&#xff0c;当订书器被点击时产生更好的视觉效果。其中将使用到nerdplusart 的Silverlight Particle Generator 粒子特效工具。 在结束本章内容后&a…

CS229 1 .线性回归与特征归一化(feature scaling)

线性回归是一种回归分析技术&#xff0c;回归分析本质上就是一个函数估计的问题&#xff08;函数估计包括参数估计和非参数估计&#xff09;&#xff0c;就是找出因变量和自变量之间的因果关系。回归分析的因变量是应该是连续变量&#xff0c;若因变量为离散变量&#xff0c;则…

注册表被黑客篡改 怎样修复_使用快速注册表黑客设置Office 2007配色方案

注册表被黑客篡改 怎样修复We’ve written previously about how to set the Office 2007 color scheme away from that awful default blue, but you can also set it with a quick registry hack or even via group policy on your network, so we’ll cover that here. 前面…

共享计算机后无法访问磁盘,win10电脑共享硬盘无法访问如何解决

很多用户为了方便文件的传输和访问&#xff0c;就会在局域网中开启硬盘共享&#xff0c;正常是可以通过网络打开访问该用户计算机的磁盘从而读取数据文件&#xff0c;可是有win10系统用户却发现共享硬盘无法访问&#xff0c;武大直接通过网络打开对方的磁盘&#xff0c;该如何处…

mikadonic-iptables学习笔记

firewall图像化配置[rootdesktop0 ~]# firewall-config iptabes -Fiptabes -Xiptabes -Z先设置默认规则&#xff08;最后防线&#xff09;[rootdesktop0 ~]# iptables -P INPUT DROP&&iptables -P OUTPUT DROP&&iptables -P FORWARD DROP iptables -A&#xf…

如何组合救援磁盘以创建最终Windows修复磁盘

We’ve covered loads of different anti-virus, Linux, and other boot disks that help you repair or recover your system, but why limit yourself to just one? Here’s how to combine your favorite repair disks together to create the ultimate repair toolkit for…

WebService C#开发/调用

简单描述C#开发WebService操作步骤以及调用方式 WebService开发 第一步&#xff1a;创建Web空项目 第二步&#xff1a;为创建的Web空项目添加Web服务 第三步&#xff1a;实现WebService方法(仅供参考) 运行WebService测试 第一步&#xff1a;运行WebService程序&#xff0c;略 …