序:
内存关系数据库没有找到开源好用的,很多都是商用。虽然mysql有memory引擎,但写是整体锁表,没法用。
一直想将mysql放入内存中,搜索n次资料,没找到合适的,可能之前思路不对。
最近在测试将mysql放在linux的tmpfs内存盘中,网上找了不少方法,都启动失败。突然想到直接挂载方式,竟然成功。
特别说明:以下方法未经过真实环境长期检测,不知是否存在未知问题。仅供学习参考。
 
步骤如下:
1,操作系统centos7,以mysql官网上的yum rpm方式安装mysql8。
2,mysql的datadir默认路径为/var/lib/mysql(如不是,后续步骤请换为自己的路径)。
3,停止mysql。备份datadir,命令:mv /var/lib/mysql /var/lib/mysql_ori。
4,挂载tmpfs内存盘,命令:mount -t tmpfs -o size=1g tmpfs /var/lib/mysql。
5,将3中备份的数据复制到/var/lib/mysql中,命令:cp -r -a /var/lib/mysql_ori/* /var/lib/mysql。
6,启动mysql,命令:systemctl start mysqld。
7,enjoy!
具体性能没有测试,数据量较小时应该差别不大,如果数据上到二三十GB,当查询需要从磁盘读取数据时,性能应该能提升很多。
由于现在内存价格低廉,弄个20G的内存盘问题不大,虽然重启数据丢失,但结何代码改造当缓存用应该不错的。
前二天使用fio测试的物理盘(非SSD,忘记有没有阵列了),tmpfs,ramfs的性能,总体上tmpfs与ramfs差不多,在顺序读写时物理盘大概是tmpfs的1/10,在随机读写时物理盘大概是tmpfs的1/150。

mysql8使用tmpfs内存磁盘当内存数据库的配置方法的更多相关文章

  1. Excel Access 新建空白文档/打开已有文档 提示内存或磁盘空间不足的解决方法--验证

    服务器上发现,打开mdb数据库,点知道只有个空白的截面,打开已有的excel文件,一样,但多了个提示:内存磁盘空间不足或者关闭不再使用的工作表或者程序.检查过,内存和磁盘很充裕啊.那里不足啊,任务管理 ...

  2. Hbase内存磁盘大致关系

    转自: https://blog.csdn.net/wuwenxiang91322/article/details/51595771 Hbase内存磁盘关系磁盘数 diskNum磁盘容量 diskCa ...

  3. .NET性能优化-使用内存+磁盘混合缓存

    我们回顾一下上一篇文章中的内容,有一个朋友问我这样一个问题: 我的业务依赖一些数据,因为数据库访问慢,我把它放在Redis里面,不过还是太慢了,有什么其它的方案吗? 其实这个问题比较简单的是吧?Red ...

  4. 调整Linux磁盘分区的大小的方法

      昨天数据入库时,一直报错,说磁盘满了,,df -h    一看,发现/目录下只有50G空间,已使用49G:我的程序和dbss都安装在/目录下,ftp到的数据放在/data下的一个子目录下,分解完的 ...

  5. Linux下查看磁盘挂载的几种方法

    Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...

  6. Linux下查看磁盘挂载的三种方法

    Linux下查看磁盘挂载的三种方法 2009-06-05 23:17 好久没有更新日志了,呵呵.不是没有要写的东东.实在抽不出时间来写,要准备公司的考试呢,C++考试.已经有七个月没有写C++代码了, ...

  7. python与java的内存机制不一样;java的方法会进入方法区直到对象消失 方法才会消失;python的方法是对象每次调用都会创建新的对象 内存地址都不i一样

    python与java的内存机制不一样;java的方法会进入方法区直到对象消失 方法才会消失;python的方法是对象每次调用都会创建新的对象 内存地址都不i一样

  8. Windows 系统提示“内存不足”的原因及解决方法

         Windows 系统提示“内存不足”的原因及解决方法 windows XP vista 及windows 7系统的电脑有时候会出现系统提示“内存不足”,这是由多方面原因造成的.本文具体分析下 ...

  9. Windows无法安装到这个磁盘 选中的磁盘具有MBR分区表解决方法

    在安装 win10的时候,会出现这种提示:Windows 无法安装到这个磁盘.选中的磁 盘具有 MBR 分区表.在 EFI 系统上, Windows 只能安装到 GPT 磁盘.出现这种 情况主要是因为 ...

  10. JVM内存的堆、栈和方法区

    JVM的内存分为堆.栈.方法区和程序计数器4个区域 存储内容:基本类型,对象引用,对象本身,class,常量,static变量 堆: 拥有者:所有线程 内容:对象本身,不存放基本类型和对象引用 垃圾回 ...

随机推荐

  1. Java学习笔记:2021年12月31日下午-2022年1月1日上午

    Java学习笔记:2021年12月31日下午-2022年1月1日上午 摘要:主要记录了计算机的电气构成,学习Linux系统的原因以及关于Linux以及相关操作的基础知识. 目录 Java学习笔记:20 ...

  2. P8773 [蓝桥杯 2022 省 A] 选数异或

    题面 给定一个长度为 \(n\) 的数列 \(A_{1}, A_{2}, \cdots, A_{n}\) 和一个非负整数 \(x\), 给定 \(m\) 次查询, 每次询问能否从某个区间 \([l, ...

  3. 基于 VScode 搭建 Verilog 自动格式化

    插件 Verilog-HDL/SystemVerilog/Bluespec SystemVerilog SystemVerilog and Verilog Formatter 工具 https://g ...

  4. git操作失误,提交代码因为网络问题没有成功,然后操作时候点错按钮导致代码全部没有了,也没用备份,如何解决

    最好的提交代码办法, 1.先创建一个空文件夹, 2.然后创建一个在线仓库 3. git remote add origin '仓库地址' 4.查看远程仓库 git remote remove orig ...

  5. 构建api gateway之 http路由实现

    http路由 路由是指路由器从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程. 而这里的http路由其实等同于web开发中,根据http相关参数(比如url.http me ...

  6. LeetCode_387. 字符串中的第一个唯一字符

    写在前面 原文地址:https://leetcode.cn/problems/first-unique-character-in-a-string/ 难度:简单 题目 给定一个字符串 s ,找到 它的 ...

  7. Vue 03 VisualStudioCode 搭建一个Vue 框架 的详细流程

    转:https://blog.csdn.net/A_awen/article/details/122345082 1 下载VisualStudioCode 1.1 官网下载地址 https://cod ...

  8. springcloud 10 spring cloud gateway02 基本使用

    官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.1.RELEASE/reference/html/ 注册 ...

  9. 2211-11Flask入门教程

    本篇记录来自Flask入门教程 准备工作 在通过这本书学习 Flask 开发前,我假设你已经了解了 Python 和 HTML 的基础知识.如果还没有,那么可以先从下面这些在线资源入手: <使用 ...

  10. 亲测有效! Bypass V1.15.5 12306分流抢票助手 for Windows

    亲测有效! Bypass V1.15.5 12306分流抢票助手 for Windows 12306Bypass也就是12306分流抢票软件,是一款全程自动抢票,自动识别验证码,多线程秒单.稳定捡漏, ...