热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

mysql学习记录(二十一)--调整linuxI/O以提高mysql运行效率_MySQL

一、概念:1使用磁盘阵列RAID译成中文为廉价磁盘冗余阵列。简称磁盘阵列2常见raid级别:araid0:条带化,将数据依次分布braid1:磁盘镜像,两个磁盘一组,写入时两个一起写入,读时从任意一个
一、概念:
1.使用磁盘阵列
RAID译成中文为“廉价磁盘冗余阵列”。简称“磁盘阵列”
2.常见raid级别:
a.raid 0:条带化,将数据依次分布
b.raid 1:磁盘镜像,两个磁盘一组,写入时两个一起写入,读时从任意一个磁盘读
c.raid 10:先做磁盘镜像又做条带化,既有raid 1的可靠性和raid 0的优良并发性能
d.raid 4:像raid 0一样对磁盘组条带化,另需要加一个磁盘用来写各Stripe的校验纠错数据
e.raid 5:将每一个条带的校验纠错数据块也分别写到各个磁盘,各不是写到一个特定的磁盘
3.选择raid级别:
a.读写频繁,可靠性要求高,raid 10
b.读频繁而写较少,对可靠性有一定要求,raid 5
c.读写频繁,可靠性要求不高,rand 0
4.虚拟文件卷或软raid
a.linux下的逻辑卷系统lvm2,支持条带化
b.linux下的md驱动,支持raid 0,raid 1,raid 4,raid 5,raid 6
5.使用symbolic links分布I/O
a.可以利用操作系统的符号连接将不同的数据库、表或索引指向不同的物理磁盘,从而达到分布磁盘I/O的目的
b.将一个数据库指向其他物理磁盘
c.将MyISAM(其他存储引擎的表不支持)表的数据文件或索引文件指向其他物理磁盘
1)对于新建的表可以在create table中增加data directory和index directory
2)对于已有的表可以将数据文件或索引文件转移到目标磁盘,但表定义文件必须位于mysql数据文件目录下,不能用符号连接
6.禁止操作系统更新文件的atime属性
7.调整I/O调度算法:
a.NOOP算法:不对I/O请求排序,更适合随机设备。
b.最后期限算法:当系统存在大量顺序请求的时候,Deadline可能导致请求无法被很好的排序,引发频繁寻道。
c.预期算法:基于预测的I/O算法,适合写入较多的环境,不适合Mysql等随机读取较多的数据库环境
d.完全公平队列:将I/O请求按照进程分别放入进程对应的队列中。CFQ以时间片算法为前提,轮转调动队列
8.RAID卡电池充放电问题:
a.raid卡电池会自动充放电
9.RAID卡缓存策略:
10.RAID卡电池充放电带来的I/O性能波动
a.根据raid卡电池下次充放电的时间,定期在业务量较低的时候,提前进行充放电。
b.设置Forced WriteBack写策略,此时一定要有UPS之类的后备电源
11.NUMA架构优化:
a.多处理器结婚(SMP):对此进行扩展的方法有增加内存、使用更快的CPU、增加CPU、扩充I/O、增加更多的磁盘
b.SMP架构导致在扩展能力上被限制,NUMA架构出现了。NUMA把一台计算机分成多个节点,每个节点内部拥有多个CPU,节点内部使用共有的内存控制器,节点之间是通过互联模块进行连接和信息交互
c.NUMA的内存分配策略有以下4种:
1)缺省:总是在本地节点分配
2)绑定:强制分配到指定节点上
3)交叉:在所有节点或者指定节点上交叉分配内存
4)优先:在指定节点上分配,失败则在其他节点上分配
d.若单机只运行一个mysql实例,可以选择关闭NUMA
1)在BIOS中设置关闭
2)在/etc/grub.conf的kernel行追加numa = off
二、实践:
abc@ubuntu:~$ dmesg | grep -i scheduler
[ 1.124750] io scheduler noop registered
[ 1.124754] io scheduler deadline registered (default)
[ 1.124837] io scheduler cfq registered
abc@ubuntu:~$ more /sys/block/sda/queue/scheduler

noop [deadline] cfq

备注:由于各种原因,其他本节相关实验等过段时间再做。

推荐阅读
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 众筹商城与传统商城的区别及php众筹网站的程序源码
    本文介绍了众筹商城与传统商城的区别,包括所售产品和玩法不同以及运营方式不同。同时还提到了php众筹网站的程序源码和方维众筹的安装和环境问题。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
author-avatar
周同学天天爬十楼7634
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有