mysql数据迁移到另一个硬盘

1.停mysql

/etc/init.d/mysql stop

2.创建新mysql数据目录

mkdir -m 777 /home/mysql

3.复制数据文件

cp -r /usr/local/mysql/data/ /home/mysql/

4.数据目录归属mysql用户

chown -R mysql:mysql /home/mysql/data

5.更改my.cnf和mysql文件的datadir字段

vim /etc/my.cnf        改datadir = /home/mysql/data
vim /etc/init.d/mysql    改datadir = /home/mysql/data

6.启动mysql

/etc/init.d/mysql start

1. 确定新硬盘的挂载点 首先,需要确定新硬盘的挂载点,可以通过以下命令查看: ``` sudo fdisk -l ``` 可以根据硬盘的大小和文件系统类型来确定新硬盘的挂载点,比如 `/dev/sdb1`。 2. 停止 MySQL 服务 在迁移数据之前,需要先停止 MySQL 服务,可以使用以下命令: ``` sudo systemctl stop mysql ``` 3. 备份旧数据迁移数据之前最好先备份旧数据,可以使用以下命令: ``` sudo mysqldump -u root -p --opt --all-databases > backup.sql ``` 其中,`root` 是 MySQL 的用户名,`--opt` 表示使用优化选项,`--all-databases` 表示备份所有数据库,`backup.sql` 是备份文件的名称。 4. 拷贝旧数据到新硬盘 将旧数据拷贝到新硬盘的挂载点下,可以使用以下命令: ``` sudo cp -r /var/lib/mysql /mnt/sdb1/ ``` 其中,`/var/lib/mysql` 是 MySQL 数据的默认存储路径,`/mnt/sdb1/` 是新硬盘的挂载点。 5. 修改 MySQL 配置文件 需要修改 MySQL 的配置文件 `/etc/mysql/mysql.conf.d/mysqld.cnf`,将数据存储路径修改为新硬盘的挂载点,可以使用以下命令: ``` sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf ``` 找到以下行: ``` datadir=/var/lib/mysql ``` 将其改为: ``` datadir=/mnt/sdb1/mysql ``` 然后保存并退出。 6. 修改 AppArmor 配置文件 需要修改 AppArmor 的配置文件 `/etc/apparmor.d/usr.sbin.mysqld`,将数据存储路径修改为新硬盘的挂载点,可以使用以下命令: ``` sudo nano /etc/apparmor.d/usr.sbin.mysqld ``` 找到以下行: ``` /var/lib/mysql/ r, /var/lib/mysql/** rwk, ``` 将其改为: ``` /mnt/sdb1/mysql/ r, /mnt/sdb1/mysql/** rwk, ``` 然后保存并退出。 7. 重启 MySQL 和 AppArmor 修改完配置文件之后,需要重启 MySQL 和 AppArmor,可以使用以下命令: ``` sudo systemctl restart mysql sudo systemctl restart apparmor ``` 8. 确认数据是否迁移成功 可以使用以下命令查看 MySQL 数据的存储路径是否已经修改为新硬盘的挂载点: ``` sudo mysql -u root -p -e "SHOW VARIABLES LIKE 'datadir'" ``` 如果输出结果中的 `Value` 为新硬盘的挂载点,则说明数据已经成功迁移
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值