关于数据库的各种备份与还原姿势详解
数据库的冷备份与热备份 数据导出不完全等于数据备份: 数据导出是指将数据库中的数据逆向成SQL语句进行导出,所以导出的是SQL文件。通常用作把数据从一个系统迁移到另一个系统,目的是屏蔽系统之间的差异性 数据备份是指将数据库中数据存储的相关文件进行拷贝,用于保存一个数据库的全部物理数据,所以备份后的数据与原本数据在细节及状态上都是完全一致的。不会像SQL那样在使用了一些函数的情况下,可能会在不同的时间点或不同的系统上产生不一样的结果 冷备份与热备份: 冷备份:在数据库已经关闭的情况下,对数据的备份称作冷备份 热备份:与冷备份相反,在数据库节点不停机的状态下进行的备份被称作热备份 冷备份的限制: 数据库必须停机备份,这对一些线上数据库是无法接受的 备份的数据文件非常占用存储空间,并且不支持增量备份 冷备份是备份所有的数据文件和日志文件,所以无法单独备份某个逻辑库和数据表 联机冷备份: 单节点的数据库在冷备份时需要停机,这就会对业务系统产生影响。为了解决这个问题,我们可以组建集群然后挑选集群中的一个节点进行停机冷备份。由于集群中还有其他节点在运行,所以不必担心影响正在运行的系统。等备份结束之后再启动该节点,这样就能解决停机备份带来的影响 热备份的限制: 数据库在热备份的时候会全局加读锁,备份期间节点只能读取数据不能写入数据 联机热备份: 同样的方式,为了避免全局加锁