首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实现所谓的“数据库版本控制”?

如何实现所谓的“数据库版本控制”?
EN

Stack Overflow用户
提问于 2013-07-24 00:47:48
回答 3查看 107关注 0票数 1

我使用Yii框架和MySQL编写了一个Web应用程序。

现在,老板希望“将所有更改存储在数据库中”,以便能够在有人破坏当前版本数据中的一些重要信息时恢复较旧的数据。

在数据库中存储所有更改的内容是模糊的。我不确定我们到底应该做什么。

如何满足这个模糊的老板的要求?

我们能用MySQL日志做到这一点吗?使用MySQL日志做这件事有什么好处和坏处?我们真的需要一个程序员(我)来从MySQL日志中恢复一些(可能不是全部)数据吗?可以使MySQL (部分)数据恢复变得简单吗?

或者,我是否应该努力手动(而不是使用MySQL日志)在特定的MySQL表中存储所有旧数据?

EN

回答 3

Stack Overflow用户

发布于 2013-07-24 00:51:37

我猜您所描述的是一个审计跟踪,它可以方便地返回并查看历史记录,但至于恢复,则需要手动操作。

看看创建审计跟踪的技术。

票数 3
EN

Stack Overflow用户

发布于 2013-07-24 01:32:45

您可能想尝试使用诸如eactsasversioned之类的searching the extensions library来归档对记录所做的编辑。我不确定它是否保存删除的记录,但它似乎接近你想要的。

票数 1
EN

Stack Overflow用户

发布于 2013-07-24 02:20:27

如果您正在寻找可以轻松恢复的内容,则可能需要定期运行备份脚本。我在cron中使用bash脚本(如下所示)每小时备份一次我担心的数据库。我的数据库相当小,所以这只需要几秒钟,如果你是超级偏执狂,可以增加到每15分钟运行一次。

代码语言:javascript
复制
    #!/bin/bash
    dbName1="li_appointments"
    dbName2="lidb_users"
    dbName3="orangehrm_li"

    fileName1=$dbName1"_`date +%Y.%m.%d-%H:%M:%S`.sql"
    fileName2=$dbName2"_`date +%Y.%m.%d-%H:%M:%S`.sql"
    fileName3=$dbName3"_`date +%Y.%m.%d-%H:%M:%S`.sql"

    backupDir="/home/backups/mysql"

    mysqldump -u backup_user --password='********************************' $dbName1 > $backupDir/$fileName1
    mysqldump -u backup_user --password='********************************' $dbName2 > $backupDir/$fileName2
    mysqldump -u backup_user --password='********************************' $dbName3 > $backupDir/$fileName3

    bzip2 $backupDir/$fileName1
    bzip2 $backupDir/$fileName2
    bzip2 $backupDir/$fileName3

    gpg -c --passphrase '********************************' $backupDir/$fileName1".bz2"
    gpg -c --passphrase '********************************' $backupDir/$fileName2".bz2"
    gpg -c --passphrase '********************************' $backupDir/$fileName3".bz2"


    rm $backupDir/*.bz2

    echo "Backups completed on `date +%D`" >> $backupDir/backuplog.log
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17816221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档