现在都是云时代了。个人和企业基本上都不在托管服务器了,比较维护和成本都比较高,都买的vps或者云服务器。一来不用担心硬件坏,而来不用担心数据丢失。云很好的解决了这个问题。但是问题是云提供商赠送的高性能系统盘非常小。一般都是20G到30G吧。win没办法提供40G。今天就不说win的转移了。只说linux的。在初次安装mysql 的时候都是使用yum将数据库目录安装在了系统盘。水平高的可以直接通过编译方式指定路径了。使用了一段时间之后数据库存储量变大,快将20GB的存放空间占满了。因此必须将存放数据空间换地方了。下边是转移的过程,经过实践验证的。教程不是转载也不是忽悠人。转发请保持版权,快盘下载支持你。
1.检查mysql数据库存放目录
mysql -u root -p
提示你输入root密码:密码是啥,不要告诉我你不知道。
#进入数据库
show variables like '%dir%';
#查看sql存储路径
(查看datadir 那一行所指的路径,这个图是本篇教程转移后的路径,)
quit; 退出mysql
2.停止mysql服务
service mysqld stop
3.创建新的数据库存放目录
mkdir /data/mysql
4.移动/复制之前存放数据库目录文件,到新的数据库存放目录位置
cp -R /usr/local/mysql/data/* /data/mysql/ #或 mv /usr/local/mysql/data/* /data/mysql
记得移动的是data目录下的文件,而不是data目录。
* 一定要带上。* 一定要带上。* 一定要带上。
5.修改mysql数据库目录权限以及配置文件
chown mysql:mysql -R /data/mysql/ vim /etc/my.cnf datadir=/data/mysql (制定为新的数据存放目录) vim /etc/init.d/mysqld datadir=/data/mysql
6.启动数据库服务
service mysqld start
说明:根据以上的简单6步操作,已经成功的数据库目录更换路径了。
如果你是编译安装的mydql,需要转移,方法是一样的。只不过是my.cnf文件中凡是出现datadir的路径都要改成新的路径。不管是yum,rpm和编译安装,三种方式都我测试了。可能是我太无聊了吧。谁介绍个妹子聊聊。
备注:以上系统为CentOS 7.6 x64 mysql-5.5.13