linux下如何移动MySQL数据库到挂载磁盘

1342人浏览 / 0人评论 / 添加收藏

今天忽然想给自己的单片机装一个mysql,但是大家都知道单片机的存储空间都是很小的,所以就涉及到把数据库移动到挂载的硬盘上。我们废话少说,反正网上傻逼太多,答案都是互相复制的,根本不能用。

首先,简单说一下文件系统fat,只有这个文件系统可以把磁盘挂载给某个用户,其他文件系统mount之后就挂给root了,导致mysql没有权限调用。因为mysql使用的是mysql用户访问磁盘的。

所以要把磁盘格式化为fat,使用mkfs.fat  /dev/****命令  一秒就好了。

然后就是挂载给mysql用户,首先查看mysql用户的uid和gid,分别是用户号和组号,通过cat /etc/passwd查看,理论上在最下面,

你看到的是mysql:x:111:112:……这样类似的 111就是uid 112就是gid可能你的和我的不一样。

然后比如说你的挂载磁盘是/dev/sda1 就使用如下命令

mount /dev/sda1 /database -o uid=111,gid=112


 

然后就是修改/etc/mysql下的配置文件  我的在/etc/mysql/mariadb.conf.d下的一个50-server.cnf的文件。

把datadir改为/database 这个database就是你之前挂载的位置,可以自行修改。然后把/var/lib/mysql下的数据库文件复制进去,重启服务就行了。

全部评论