应用场景
当使用mysql集群数据库的时候,有时候会误删一些数据,那么数据就缺失了完整性,现在需要将数据进行备份,将误删的数据还原出来,这样保证数据的完整性。
操作步骤
注:这里备份还原的思想是,在数据库操作中,不小心把之前的集群数据库中原有的比较重要的数据删除了,可以通过此方法进行备份,还原。
1 备份
首先到管理节点(192.168.202.20 node1)上进行数据的备份,操作如下:
# /usr/local/src/mysql/bin/ndb_mgm
-- NDB Cluster -- Management Client --
# ndb_mgm> start backup
此时可以删除数据库中自己建的一些数据库,或者数据表,都可以进行还原
需要重新启动集群。
2 还原
注:还原操作在数据节点进行还原,在数据节点上进行恢复。每个节点都得还原一次,因为数据分散集群中的每个节点上。
第一个数据节点,假设为192.168.202.21 (node2),执行如下命令:
#/usr/local/src/mysql/bin/ndb_restore -n 2 -m -b 1 -r /usr/local/src/mysql/data/BACKUP/BACKUP-1/
第二个数据节点,假设为192.168.202.22(node3),执行如下命令:
#/usr/local/src/mysql/bin/ndb_restore -n 3 -b 1 -r /usr/local/src/mysql/data/BACKUP/BACKUP-1/
第三个数据节点,假设为192.168.202.23(node4),执行如下命令:
#/usr/local/src/mysql/bin/ndb_restore -n 4 -b 1 -r /usr/local/src/mysql/data/BACKUP/BACKUP-1/
第二个数据节点,假设为192.168.202.24(node5),执行如下命令:
#/usr/local/src/mysql/bin/ndb_restore -n 5 -b 1 -r /usr/local/src/mysql/data/BACKUP/BACKUP-1/
- 注:
-
-m是元数据。就是表和库的目录,所以-m只执行一次,在第一个数据节点执行。
-r 开关是记录集合。
-n 当前的数据节点。
-b 备份的节点,主节点。
注:最后备份完,还不能看到数据,由于还原的时候不能自动恢复库名,所以数据库名得自己建,根据在第一个数据节点下备份的元数据表结构,建立数据库,当数据库建完,数据库下面的表,数据就自动还原。