IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Ubuntu工作机使用FlashCache技术加速

MySQL支持 2012-12-23 23:31:47 累计浏览 6,087 次
本机暂存

   Flashcache是facebook的一个开源项目,用于数据库加速中.大致结构,在传统磁盘前面放置一个ssd装置,充当缓存,把热的数据保持在缓存中,写的过程也是在先写ssd然后由ssd同步到传统磁盘.真正的数据最终还是保持在传统磁盘中.这样ssd杯掉也不用担心数据丢失.同时又可以有大容量,高性能的体验.

   现在ssd也挺便宜的,新一点的笔记本里都有ssd磁盘.那么这里简介绍一下,怎么用ssd加速home及其它分区,引导这块不涉及.缺点: ssd只是用来做cache不能存入实质的东西.

   前提:

   ssd有空余的分区或是有个ssd盘不使用.操作系统是ubuntu或是其它linux

   大致步骤:

   1. 安装git

$sudo apt-get install git-core

   2. 下载flashcache源码:

#git clone https://github.com/facebook/flashcache.git

   3. 进入目录编辑

#make
#make install

   //如果失败看提示,一般是内核源码没安装的原因

   4. 加载flashcache模块

#modprobe flashcache

   确定加载完成:

#dmesg |tail
......flashcache: flashcache-1.0 initialized

   表示成功

   另外还可以:

lsmod |grep flashcache

   看到相应的信息即成功.

   为了开机能加载这个模块,需要这个模块名写入/etc/modules中

#echo "flashcache" >> /etc/modules

   好这里完成了基本环境的安装.下面以/home分区加速设制为,其它一样.

   我的ssd分了/dev/sda1 用于/ , /dev/sda2用于了swap 还有/dev/sda3 ,/dev/sda4分区出没使用.我在传统磁盘里划出来100G /dev/sdb1用于/home目前还没挂载.

   5. 格式化/dev/sdb1 如果原来/home节点已经划分有分区, 只用umount掉即可,然后在fstab去掉自动挂载(flashcache目前不能自动挂载)

   #mkfs.ext4 /dev/sdb1

   把原来/home的数据复制或是移到动/dev/sdb1上.

   #mount /dev/sdb1 /mnt

   #cp -r /home/* /mnt

   #umount /mnt

   需在注意cp过去后权限是不是和原来的一样.

   6. 初始化flashcache

   #ls -la /dev/disk/by-uuid/

   找到/dev/sdb1 对应的uuid

#flashcache_create -v -p back home_flashcache /dev/sda3 /dev/disk/by-uuid/4b75b04e-5930-4042-89b8-40894067dac6

   这样即创建完毕.

   7. 挂载那个flash设备

#mount /dev/mapper/home_flashcache /home

   即可以体验flashcache加载的东西了.

   8. 收尾工作,开机自动挂载flashcache加速的设备,利用rc.local完成

   在rc.local里添加:

flashcache_load /dev/sda3
mount /dev/mapper/home_flashcache /home

   这样即可开始挂载/home节点了.

   如果不想使用flashcache技术,可以通过如下命令删除该功能:

   umount /home

   dmsetup remove cachedev

   flashcache_destory

   mount 相应的节点即可

   说明: 以# 开头的操作表示以root权限进行的操作,以$开头的表始以普通用做的操作.

同分类推荐文章

  1. 使用deepseek进行Oracle恢复,引起重大故障 (2026-06-22 10:56:00)
  2. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  3. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)

查看更多 数据库 文章 →

建议继续学习

  1. 我对技术方向的一些反思 (累计阅读 11,316)
  2. MacBook Air与工作效率 (累计阅读 10,660)
  3. SSD的主要缺陷及Wear Leveling技术详解 (累计阅读 10,164)
  4. 基于SSD的数据库性能优化 (累计阅读 8,840)
  5. mac系统更换硬盘及初始化开发环境的记录 (累计阅读 6,623)
  6. fatcache源码浅析 (累计阅读 6,049)
  7. SSD磨损数据的分析报告 (累计阅读 5,162)
  8. Linux 中对 SSD 的优化 Discard,类 TRIM 的功能 (累计阅读 5,113)
  9. SSD的随机写一定很慢吗? (累计阅读 4,271)
  10. 固态硬盘知识汇总 (累计阅读 4,109)