LNMP环境下独立安装Mysql5.7.18 并对数据库文件进行本地物理迁移 (需暂停数据库服务方式)
前几天读研时候的同学要我帮忙给解决一个问题,就是Redhat服务器下面安装了LNMP,并且由于分区的划分不当导致MySQL数据库中存放数据库的盘区内空间被急剧消耗,由于该应用主要是数据分析及备份所用,所以可以随时停止服务,并不需要随时在线,对此我给出了一个服务迁移MySQL数据库文件的解决方案,具体如下:
为了能够更真实的模拟对方的生产环境,我在个人的云服务器上进行LNMP的环境安装及配置,由于使用的是帮瓦工的VPS,其内存只选用了1G的配置,平时也是偶尔去墙外逛逛所用,LNMP官网下载安装程序进行安装,刚开始进行就提示报错,要求内存要1G以上,由此中断,后决定在自己的个人电脑上进行实施。
由于不想在自己的个人电脑上乱安装软件,尤其是这种个人集成的多种软件的安装包,因为很清楚这种安装包一般往往是安装特容易,不过是大量的下载安装组件,编译安装,但是由于其中会涉及大太多的非大众的独特设置,由此在卸载时会比较棘手,因此我选择用Ubuntu的安装U盘来Try Ubuntu, 然后实现,这样除了硬盘不是自己本机的,其他如CPU等都是物理机的,性能会比较好,而且U盘是有还原的不怕无法还原。但是,很可悲的是安装了几个小时之后提示硬盘空间不足,十分的悲催,我这一看我这16G的U盘空间全满,实在是要人崩溃,没想到这东西这么吃资源,我这个可是花费了四五个小时弄的东西。后来一狠心,在自己一块不用的移动硬盘上安装了UBUNTU16.04系统,物理启动,再次实现操作。
现给出LNMP的官方地址,有兴趣的可以试试,安装十分便捷,傻瓜式的安装,不过特别吃资源,耗时间:
由于有了前车之鉴,这次我决定研究一下再安装,否则这么吃资源的东西,再安装4、5个小时以后出现什么问题我是要奔溃的,这东西搞上几天实在是话不算,由于是朋友所托,没法子硬着头皮去搞。
这一次我先看了看README,发现了好东西,看来以后安装东西还是要先看看自身所带的说明的,其中有以下这么一句话:
可选2,执行:./install.sh db 可以直接单独安装MySQL或MariaDB数据库。
因为我所要用到的只有MYSQL数据库,由此我只执行这一句话就OK了,这样还会比较节省资源及时间。
执行后的安装选项:
由于我要测试的是5.7.18,所以选择4。
具体的物理迁移参考此文:
https://www.cmhello.com/change-lnmp-www-datadir.html#comments
首先,在数据库中写入表等数据,然后停止数据库服务:
service mysql stop
查看是否关闭:
service mysql status
确认关闭,然后再打开 /etc/my.cnf 文件:
将带有 /usr/local/mysql/var/ 字符串进行修改,假设你要迁移后的文件位置在 /home/XXX 中, 便把 /usr/local/mysql/var/ 改为 /home/XXX/var ,
然后保存退出,记住是所用的 /usr/local/mysql/var/ 字符串进行修改 。
下一步便是物理迁移,使用mv 命令, 将 /usr/local/mysql/var 文件 移动为 /home/XXX/var 。
重启服务, service mysql start 。
查询数据,插入数据,证明成功迁移。
posted on 2018-01-25 12:07 Angry_Panda 阅读(318) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
2017-01-25 C++ 内存拷贝函数 memcpy
2017-01-25 插入排序------直接插入排序
2017-01-25 选择排序------直接选择排序
2017-01-25 交换排序------冒泡法 及其优化