我需要将数据移动到其他文件夹并在我的cent os db服务器上驱动。
我添加了新的硬盘驱动器(因为空间不足),
我有一个1TB的硬盘驱动器,我有一个新的2TB,我想将数据放在同一台服务器上(托管在数据中心中的专用服务器)
我想知道在不丢失任何数据的情况下迁移数据的简便方法是什么?
目前,我的数据位于:/var/lib/mysql/
cent os。mysql version is 5.1
我需要将数据移动到其他文件夹并在我的cent os db服务器上驱动。
我添加了新的硬盘驱动器(因为空间不足),
我有一个1TB的硬盘驱动器,我有一个新的2TB,我想将数据放在同一台服务器上(托管在数据中心中的专用服务器)
我想知道在不丢失任何数据的情况下迁移数据的简便方法是什么?
目前,我的数据位于:/var/lib/mysql/
cent os。mysql version is 5.1
Answers:
第1步
首先设置驱动器(假设它已安装并在fstab中正确设置),然后创建新的MySQL目录:
sudo mkdir /path/to/new/mysql
确保此文件夹具有正确的权限:
chown -R mysql:mysql /data/mysql
现在,您可以在复制数据时关闭服务。将数据从当前数据目录复制到新数据目录,例如:
sudo cp -R /var/lib/mysql/* /path/to/new/mysql/
或者,如果您愿意或可以放心的话,可以分别复制每个数据库,可以使用以下mv
命令移动文件夹。
第2步
您可以在中更改MySQL数据的位置my.cnf
。如果您不知道此文件在哪里,可以运行以下命令:
locate my.cnf
这将为您提供my.cnf所在的路径。然后编辑文件:
sudo vi /etc/mysql/my.cnf
(当然,您必须替换路径)
现在寻找datadir = /var/lib/mysql
并更新至datadir = /path/to/new/mysql
。
然后重启mysql
sudo /etc/init.d/mysqld restart
几天/几周后,如果您感到舒适,则可以删除旧文件夹(/ var / lib / mysql)或备份其中的所有内容。