mysql8使用tmpfs内存磁盘当内存数据库的配置方法

内存关系数据库没有找到开源好用的,很多都是商用。虽然mysql有memory引擎,但写是整体锁表,没法用。

一直想将mysql放入内存中,搜索n次资料,没找到合适的,可能之前思路不对。

最近在测试将mysql放在linux的tmpfs内存盘中,网上找了不少方法,都启动失败。突然想到直接挂载方式,竟然成功。

特别说明:以下方法已经很长时间没有在真实环境中测试过了,不知道是否有未知的问题。仅供参考。

[En]

Special note: the following methods have not been tested in the real environment for a long time, I do not know whether there are unknown problems. It is for reference only.

步骤如下:

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。

Original: https://www.cnblogs.com/sun51586/p/16580047.html
Author: sun51586
Title: mysql8使用tmpfs内存磁盘当内存数据库的配置方法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/505048/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • day03-拉取在线用户功能

    多用户即时通讯系统03 4.编码实现02 4.2功能实现-拉取在线用户 4.2.1思路分析 客户端想要知道在线用户列表,就要向服务器发送请求(Message),因为只有服务器端保持…

    数据库 2023年6月11日
    0157
  • 前端JavaScript-每日一题

    2022 09 本文来自博客园,作者:吴知木,转载请注明原文链接:https://www.cnblogs.com/zh1q1/p/16726853.html Original: h…

    数据库 2023年6月11日
    083
  • atomic 原子自增工程案例

    案例 1 : 简单用法 atomic_int id; atomic_fetch_add(&id, 1) atomic_uint id; atomic_fetch_add(&…

    数据库 2023年6月9日
    083
  • MySQL日志系统bin log、redo log和undo log

    MySQL日志系统bin log、redo log和undo log 今人不见古时月,今月曾经照古人。 简介:日志是MySQL数据库的重要组成部分,记录着数据库运行期间各种状态信息…

    数据库 2023年6月14日
    074
  • go context详解

    Context通常被称为上下文,在go中,理解为goroutine的运行状态、现场,存在上下层goroutine context的传递,上层goroutine会把context传递…

    数据库 2023年6月9日
    093
  • Python–module–OS

    csharp;gutter:true; import os a = os.getcwd() # 获取当前的操作目录 b = os.chdir("C:\Users&quot…

    数据库 2023年6月9日
    080
  • 代码圈复杂度

    回到我们日常的写代码的场景,我们一直在说系统很复杂,那到底什么是系统复杂度呢?最近几天,一直在改项目里别人写的代码,某些方法复杂无注释。怎么才能写的一手可读,可扩展,可维护[注1]…

    数据库 2023年6月14日
    082
  • 使用Typora + 阿里云OSS + PicGo 打造个人图床

    使用Typora + 阿里云OSS + PicGo 打造个人图床 为什么要打造图床? 让笔记远走高飞 试问以下场景: 我们要 markdown 笔记放到某博客上,直接进行复制即可。…

    数据库 2023年6月9日
    089
  • CentOs安装Nginx

    安装 gcc pcre pcre-devel zlib OpenSSL 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需…

    数据库 2023年6月11日
    071
  • Collection

    ArrayList底层使用了数组存储 LinkedList底层使用双向链表 HashSet底层是一个HashMap支持,HashMap底层物理实现一个Hash表 LinkedHas…

    数据库 2023年6月14日
    079
  • Decorator 装饰(结构型)

    Decorator 装饰 (结构型) 一:描述: Decorator 装饰模式是动态地给一个对象增加一些额外的功能职责特性。 来替换以前使用的继承来静态扩展对象的功能,避免子类的增…

    数据库 2023年6月11日
    073
  • 977.有序数组的平方

    给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 示例 1: 输入:nums = [-4,-1,0,3,10]输出…

    数据库 2023年6月16日
    082
  • Python 垃圾回收总结

    前言 最近在阅读《垃圾回收的算法与实现》,里面将讲到了一些常用的垃圾回收(Garbage Collect)算法,如:标记-清除、引用计数、分代回收等等。后面讲到了 Python 的…

    数据库 2023年6月6日
    093
  • [LeetCode]1464. 数组中两元素的最大乘积

    给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值。 请你计算并返回该式的最大值。 示例 1: 输入…

    数据库 2023年6月9日
    071
  • Redisson

    ​ Redisson是架设在Redis基础上的一个Java驻内存数据网格(In-Memory Data Grid)。充分的利用了Redis键值数据库提供的一系列优势,基于Java实…

    数据库 2023年6月6日
    084
  • Java 多线程共享模型之管程(下)

    共享模型之管程 wait、notify wait、notify 原理 Owner 线程发现条件不满足,调用 wait 方法,即可进入 WaitSet 变为 WAITING 状态 B…

    数据库 2023年6月16日
    095
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球