数据库数据恢复环境:
合肥某大学一台安装redhat linux操作系统的服务器,采用ext3文件系统,服务器部署有mysql数据库用来存储&管理教职员工和学生的信息。
编写好的脚本每天会定时将数据库文件打包成tar.gz备份到本地磁盘的其他分区并删除前一天的备份文件。
数据库故障&分析:
服务器遭受攻击,所有数据库文件(包括备份)被恶意删除。
本案例是ext3文件系统数据被删除,若删除的文件数量比较少且删除后没有或者只有很少的写入,恢复出数据的概率比较高。
数据库数据恢复过程:
1、对故障服务器所有硬盘以只读方式进行镜像备份,镜像过程中发现所有硬盘的物理状态良好。
2、根据用户提供的信息确定原数据库文件及备份文件的存储路径。查看系统日志发现服务器遭受攻击这一天的数据库文件已经备份成功,而且数据库备份文件所在分区在数据库文件被恶意删除后只有很少的写入操作,而原数据库文件所在的系统分区在数据库文件被恶意删除后又生成过新的系统及临时文件。
3、分析数据库备份文件所在分区,根据文件系统保留的备份文件相关信息,北亚数据恢复工程师将文件inode结点回溯至数据删除前的状态,然后将备份文件迁移出来。
4、解压所有恢复出来的tar.gz文件,并将数据库文件附加到准备好的数据库环境中对数据库记录进行校验,确认数据无误后交付给用户验证。
5、用户亲自对数据库文件进行验证,没有发现问题。协助用户把恢复出来的数据迁移到用户准备好的环境中。
服务器数据安全Tips:
1、操作系统密码尽量设置复杂以增加系统、数据存储和应用的安全性;
2、数据库文件的备份最好不要直接备份到服务器本地硬盘,最好能通过网络或者其他方式备份到其他存储中;
3、发现数据丢失后应尽快停止所有的针对丢失数据所在分区的操作。