如何迁移MariaDB或MySQL数据目录?

MySQL & MariaDB

1 前言

一个问题,一篇文章,一出故事。
笔者之前的数据库使用默认部署在根目录下,现在想迁移至专用的数据分区,于是整理此文。

2 最佳实践

2.1 停机数据库

/etc/init.d/mysqld status
/etc/init.d/mysqld stop

需要注意的是,根据实际情况,也可以使用如下命令,

systemctl status mysqld.service
systemctl stop mysqld.service

2.2 修改数据库存储目录

vim /etc/my.cnf

配置修改如下,

[mysqld]
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
#...

2.3 检查存储目录

ls /data/

注:以上确认本章需要的存储目录已经准备就绪

2.4 迁移数据目录

mv /var/lib/mysql/ /data/

另外,根据配置文件的定义,默认目录需要使用如下命令重建,

mkdir -p /var/lib/mysql/
chown mysql:mysql /var/lib/mysql/
chmod 700 /var/lib/mysql/

2.5 启动数据库服务

/etc/init.d/mysqld start

需要注意的是,根据实际情况,也可以使用如下命令,

systemctl start mysqld.service

2.6 检查数据库服务

/etc/init.d/mysqld status

需要注意的是,根据实际情况,也可以使用如下命令,

systemctl status mysqld.service
没有评论

发表评论

MySQL & MariaDB
如何测试MySQL配置参数语法?

1 前言 一个问题,一篇文章,一出故事。 笔者需要修改MySQL服务端的参数,想到nginx有“ng …

MySQL & MariaDB
如何单独备份MySQL的表?

1 前言 一个问题,一篇文章,一出故事。 笔者遇到用户需要单独备份MySQL某库的某表数据的情况,想 …

MySQL & MariaDB
如何恢复MySQL特定表的数据?

1 前言 一个问题,一篇文章,一出故事。 笔者今天与DBA配合做数据恢复,DBA要求把完整的逻辑备份 …