数据库迁移-------通过ibdata1文件和数据库文件迁移

根据老大需求将阿里云swarm集群的业务迁移出来,遇到问题:
容器数据库无法启动,但是全部的数据存放在NAS存储磁盘上,可通过nfs共享,但无sql文件
注意:这样数据迁移必须确保有数据库文件和ibdata1文件

步骤:
一、迁移服务器上配置容器数据库一样的版本
二进制安装mysql5.7.22,能正常启动
tar -xvf mysql5.7.22-linux-glibc2.12-x86_64.tar

二、nfs挂载NAS存储磁盘
mount -t nfs -o vers=3,nolock,proto=tcp,noresvport 123456:/ /mnt

三、清空数据库下所有文件,cp容器数据库文件到数据库数据目录下
rm -rf /data/mysql/*
\cp -r /mnt1/mysql /data/mysql/
chown -R mysql.mysql /mnt4/mysql/

四、启动数据库,查看错误日志信息和报错信息

排错接近一小时后修改成一下配置文件启动成功:
[mysqld]
user = mysql #指定用户启动
basedir = /usr/local/mysql
datadir = /mnt4/mysql
socket = /tmp/mysql.sock
port = 3306
character-set-server = utf8
log-error = /var/log/mysql/mysql-error.log
pid-file = /mnt4/mysql/mysql_3306.pid
innodb_temp_data_file_path = ibtmp1:3000M:autoextend:max:5G #重点-启动数据库需要临时表空间,特别第一次启动。18M提升到3000M才无报错

启动mysql
/usr/local/mysql/bin/mysqld --user=mysql & #不指定用户启动报错

posted @ 2019-11-28 12:00  A学无止境A  阅读(367)  评论(0编辑  收藏  举报