数据库迁移

  •  database2上面的操作:把数据库目录copy到云硬盘上
mount /dev/xvdd /srv
cd /srv/
copy /data/mysql  .
cd /srv/mysql
vim relay-log.info 
vim master.info 
umount /srv
  •  然后把云硬盘挂载到masterdb上
cd /srv/mysql/
mv mysql/ mysql_2
mount /dev/xvdg /mnt
cd /srv/
 cp -a /mnt/mysql .
service mysql stop
cd /srv/mysql
rm master.info
rm relay-log.info 
rm relay-log.info
rm database0-relay-bin.*
rm master.info
service mysql stop
service mysql start
umount /mnt
mysql -uroot -p -Dmomo_production 然后start slave;这里面还有些坑。需要修改
show slave status\G
change master to master_host='192.168.23.1',  MASTER_LOG_FILE = 'mysql-bin.002744', MASTER_LOG_POS = 53037531, master_user='slave', master_password='1234qwer';

这样

  • database3 原来就是作为slave从database同步数据的,只需要把master改为masterdb即可。
  • database0 
database0 上的步骤就是 挂载含有mysql文件的云硬盘。
修改mysql配置文件  vim /etc/mysql/my.cnf 
同样要修改/etc/apparmor.d/usr.sbin.mysqld 文件(修改之后要通过service apparmor reload )需要增加这两行:
/srv/mysql/ r,
/srv/mysql/** rwk,
 

还需要 

rm relay-log.info 

rm database2-relay-bin.*

rm master.info  

 

 

  • 其他一些细节
mysql配置文件中:slave-skip-errors=1062;

 

你可能感兴趣的:(数据库迁移)