没有删除过服务器全部数据的经历,不足以谈人生。。。。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
JiaFeiX
V2EX    云计算

没有删除过服务器全部数据的经历,不足以谈人生。。。。

  •  
      JiaFeiX 2015-11-27 11:30:40 +08:00 10751 次点击
    这是一个创建于 3684 天前的主题,其中的信息可能已经有所发展或是发生改变。



    82 条回复    2015-11-28 23:25:50 +08:00
    JiaFeiX
        1
    JiaFeiX  
    OP
       2015-11-27 11:31:26 +08:00
    现在在新的主机上从头来过,人生好艰难。。。。
    Zzzzzzzzz
        2
    Zzzzzzzzz  
       2015-11-27 11:34:28 +08:00   9
    ?1
    chinassl
        3
    chinassl  
       2015-11-27 11:36:20 +08:00
    异地备份,异地备份,异地备份,重要事情说 3 遍
    Daemon
        4
    Daemon  
       2015-11-27 11:36:31 +08:00
    之前没用一个快照,创建镜像吗,有个镜像也好。。
    moro
        5
    moro  
       2015-11-27 11:37:41 +08:00
    及份,及份,及份
    重要的事情三遍!
    800126
        6
    800126  
       2015-11-27 11:38:13 +08:00
    我是来寻开心的。
    ckz
        7
    ckzx  
       2015-11-27 11:40:46 +08:00
    被你们搞的整个人都不好了。赶紧上服务器手动再备份个先。
    wy315700
        8
    wy315700  
       2015-11-27 11:42:10 +08:00
    数据库层都没有备份吗,
    realpg
        9
    realpg  
    PRO
       2015-11-27 11:47:58 +08:00
    你们的备份呢?
    另外,延时删除?多占用的时间付费了么……
    zsen
        10
    zsen  
       2015-11-27 11:54:04 +08:00   8
    ```
    #!/bin/bash

    # 配制开始,根据需要修改以下值
    # 备份文件保存目录
    Backup_Home="/home/Backup/"

    # 需要备份的站点目录,多目录用空格隔开
    Backup_WWW_Dir="/home/wwwroot/www_Dir"

    # 需要备份的数据库名 All 或 输入类似 db1 db2 的列表清单
    Backup_DB_Name="dbname"

    # 数据库配置
    DB_HOST=localhost
    DB_User=user
    DB_Pass=pass

    # 备份 MYSQL 时生成 CREATE 数据库语句
    CREATE_DATABASE="yes"

    # 发生到邮件的地址
    Mail_TO="your@mail"

    # 保留数据库备份文件的天数
    Backup_DB_Date=5
    # 保留网站目录备份文件的天数
    Backup_Code_Date=5

    # 邮件发送方式
    Mail_Type="mail"

    # 配制结束,以下内容不需要修改

    # 当前备份日期和时间
    DATE=`date +%Y%m%d`
    DEL_SQL_DATE=`date -d -${Backup_DB_Date}day +%Y%m%d`
    DEL_CODE_DATE=`date -d -${Backup_Code_Date}day +%Y%m%d`
    OPT="--quote-names --opt"

    # 检查备份路径是否存在,不存在则建立
    if [ ! -e "${Backup_Home}" ]; then
    mkdir -p "${Backup_Home}"
    fi

    # 删除备份目录下前设定天数的备份数据
    rm -f ${Backup_Home}DB_${DEL_SQL_DATE}.sql.gz
    rm -f ${Backup_Home}Code_${DEL_CODE_DATE}.tar.gz

    # 检查是否需要生成 CREATE 数据库语句
    if [ "${CREATE_DATABASE}" = "yes" ]; then
    OPT="${OPT} --databases"
    else
    OPT="${OPT} --no-create-db"
    fi

    # 检查是否是备份所有数据库
    if [ "${Backup_DB_Name}" = "all" ]; then
    Backup_DB_Name="--all-databases"
    fi

    BACKUP_DB_FILE=DB_${DATE}.sql.gz
    BACKUP_CODE_FILE=Code_${DATE}.tar.gz

    cd ${Backup_Home}

    # 备份数据库
    `which mysqldump` --user=${DB_User} --password=${DB_Pass} --host=${DB_HOST} ${OPT} ${Backup_DB_Name} | gzip > "${BACKUP_DB_FILE}"
    #`which mysqldump` --host=${DB_HOST} ${OPT} ${Backup_DB_Name} | gzip > "${BACKUP_DB_FILE}"
    # 备份网站目录。此处用了绝对路径,解压时需注意
    tar zcPf ${BACKUP_CODE_FILE} ${Backup_WWW_Dir}

    # 将备份文件保存至指定邮箱
    if [ "${Mail_Type}" = "mail" ]; then
    echo "MySQL DataBase and website Code Backup." | mail -s "DB&Code Backup ${DATE}" -a ${BACKUP_DB_FILE} -a ${BACKUP_CODE_FILE} -r [email protected] ${Mail_TO}
    fi

    if [ "${Mail_Type}" = "mutt" ]; then
    echo "MySQL DataBase and website Code Backup." | mutt -s "DB&Code Backup ${DATE}" ${Mail_TO} -a ${BACKUP_DB_FILE} -a ${BACKUP_CODE_FILE}
    fi
    ```
    UG1u8zhQxhvqXNrk
        11
    UG1u8zhQxhvqXNrk  
       2015-11-27 11:56:42 +08:00
    @zsen 好人。。
    loading
        12
    loading  
       2015-11-27 11:58:14 +08:00 via Anroid   1
    没事,我们都是开过光贴了符的服务器,这种事不会发生的。
    zsen
        13
    zsen  
       2015-11-27 11:58:49 +08:00
    @burgleaf 谢谢( )

    然后 crontab -e 加定时任务
    当然,还有一些基本配置要设置。。。

    另外,``` 这个不是代码加亮的么?
    sghcel
        14
    sghcel  
       2015-11-27 12:02:29 +08:00
    @zsen 好人啊,收了放VPS上
    kozora
        15
    kozora  
       2015-11-27 12:04:51 +08:00
    前天手欠 azure 挂载硬盘的时候,把挂载到 Home 目录了,而我网站目录就在 home ,天了噜,然后查了些资料,因为 azure 删机器是默认不删除硬盘的,然后把原来的机器删掉了,然后开个新机器,把旧机器上的硬盘作为数据盘挂载到新的机器上,数据又回来了
    irockytan
        16
    irockytan  
       2015-11-27 12:05:07 +08:00
    @Zzzzzzzzz 怎么这么眼熟?这是哪个游戏来着?
    xdeng
        17
    xdeng  
       2015-11-27 12:10:06 +08:00
    @Daemon
    @realpg 客服都说了 换系统 备份会自动删除的
    Phariel
        18
    Phariel  
       2015-11-27 12:16:20 +08:00
    @irockytan 仙剑
    10iii
        19
    10iii  
       2015-11-27 12:19:38 +08:00   1
    自己的玩具网站:
    VPS 忘续费,遭删,重新弄整个网站,两天周末加一周晚上。
    VPS 又忘续费,遭删,重新弄整个网站,两天周末加一个晚上。
    VPS 再次忘续费,遭删。没动力了。
    另一个玩具网站:
    某日登录 VPS 管理页,误以为这个 VPS 是闲置空的,那更新一下 ubuntu 版本到比较新的 LTS 吧。然后,重新弄整个网站,一个周末。
    chairuosen
        20
    chairuosen  
       2015-11-27 12:26:02 +08:00
    所以我买了 Linode 的 Backup 服务
    HanSonJ
        21
    HanSonJ  
       2015-11-27 12:28:40 +08:00
    没试过删除,试过 chmod -fR 000 /
    msg7086
        22
    msg7086  
       2015-11-27 12:43:35 +08:00
    重要的网站一定不要做 MySQL 的 cronjob 定时备份。
    vh2h
        23
    vh2h  
       2015-11-27 13:03:45 +08:00
    @10iii 一个坑跳进去了三次
    lyragosa
        24
    lyragosa  
       2015-11-27 13:06:30 +08:00
    virtualmin 用户表示用自带的备份工具
    LINAICAI
        25
    LINAICAI  
       2015-11-27 13:19:25 +08:00
    没有 rm -rf 过的人生不完整
    cnsoft
        26
    cnsoft  
       2015-11-27 13:26:52 +08:00
    所以说 大家是时候了解一下 数据方舟了. 来个视频
    wesley
        27
    wesley  
       2015-11-27 13:28:54 +08:00
    crontab + dropbox
    再也不怕 VPS 忘续费了
    moe3000
        28
    moe3000  
       2015-11-27 13:29:58 +08:00
    看来有必要找个测试服务器让我的人生完整一下

    @zsen 学习了
    beneo
        29
    beneo  
       2015-11-27 13:37:10 +08:00
    线上服务器必须高可用,怎么也是两台机器
    xuhaoyangx
        30
    xuhaoyangx  
       2015-11-27 13:41:48 +08:00
    @zsen 感谢
    davidyin
        31
    davidyin  
       2015-11-27 13:47:50 +08:00
    平时都是用类似 10 楼的脚本,每晚定时备份,上传到家里的备份服务器上。
    一天一次。
    gamexg
        32
    gamexg  
       2015-11-27 14:13:56 +08:00
    刚刚转移一个网站,测试通过后删除临时文件时将刚刚转移过来的网站也删掉了。还好源没有动,重做了一次。
    KenGe
        33
    KenGe  
       2015-11-27 14:16:26 +08:00
    我是用的多备份~ 省时省力
    gamexg
        34
    gamexg  
       2015-11-27 14:16:37 +08:00
    @msg7086 ??有什么坑?
    gzlock
        35
    gzlock  
       2015-11-27 14:18:29 +08:00 via Android
    通常都是上 FTP 删文件
    xupefei
        36
    xupefei  
       2015-11-27 14:35:26 +08:00
    https://github.com/xupefei/VPS-Daily-Backup-Script

    放一个以前写的自动备份脚本,使用前请务必修改脚本中的路径。
    这脚本用在某网站上一年多了,从来没出过问题,很靠谱。
    Kokororin
        37
    Kokororin  
       2015-11-27 15:26:09 +08:00
    每天自动备份到 Dropbox
    xjoker
        38
    xjoker  
       2015-11-27 15:38:53 +08:00
    家里的服务器挂着 goodsync 文件有变化就同步
    simapple
        39
    simapple  
       2015-11-27 15:40:38 +08:00
    淘宝的购买记录现在也不正常了
    cai314494687
        40
    cai314494687  
       2015-11-27 15:42:41 +08:00
    哈哈 我删过
    ryd994
        41
    ryd994  
       2015-11-27 15:52:22 +08:00 via Android
    幸好我上次只是删了全部 Nginx 配置而已
    dump 内存,从 Nginx 内存里吧配置文件抠出来
    nooper
        42
    nooper  
       2015-11-27 16:00:15 +08:00 via iPad
    我做的都是自动化的运维。任何一台服务器给我十分钟的时间我便能够自动构建应用
    mahone3297
        43
    mahone3297  
       2015-11-27 16:08:17 +08:00
    @Zzzzzzzzz 这个图片好。。。好应景。。。。好经典。。。
    sholmesian
        44
    sholmesian  
       2015-11-27 16:54:01 +08:00
    多备份 +1
    yytsjq
        45
    yytsjq  
       2015-11-27 17:11:10 +08:00
    我现在是服务器每天自动备份,然后上传到 Dropbox 、 Google Cloud Storage 还有 KeyCDN Push 空间,只保留最近 7 天的备份文件。这样应该能避免悲剧了吧。。
    msg7086
        46
    msg7086  
       2015-11-27 18:07:27 +08:00 via Android
    @gamexg 没有坑。只不过 mysql 复制已经很成熟了,不应该去冒险。
    neoblackcap
        47
    neoblackcap  
       2015-11-27 18:19:20 +08:00
    其实我想知道,为什么有云的,还要贸然同一台机器上面重装。重新开个实例不更好么?反正也花不了多少钱,新实例能正常运行了再删除旧实例
    qj12kkp
        48
    qj12kkp  
       2015-11-27 19:23:10 +08:00
    我只用过 drop database `xx` - > -
    Xrong
        49
    Xrong  
       2015-11-27 20:16:51 +08:00
    数据库每天自动备份,楼主你这太不小心了。。。
    29EtwXn6t5wgM3fD
        50
    29EtwXn6t5wgM3fD  
       2015-11-27 20:50:00 +08:00 via Android
    脚本自动备份百度云
    zjqzxc
        51
    zjqzxc  
       2015-11-27 20:56:03 +08:00
    @xupefei 好像看到了。。数据库的 root 密码。。。希望这不是真的。。
    hei1000
        52
    hei1000  
       2015-11-27 21:02:23 +08:00 via Android
    没有以 root 权限执行过 rm -rf / 不足以说自己用过 Linux
    xupefei
        53
    xupefei  
       2015-11-27 21:06:59 +08:00
    @zjqzxc 的确不是真的 lol
    Hyperion
        54
    Hyperion  
       2015-11-27 21:09:30 +08:00   1
    哼,这算什么!

    早期某家提供商客服不提供任何维护,然而我因为一次不小心配置错了 vps 的登录私钥,导致无法登陆…

    找客服未果,我自己亲手忍痛格掉…
    tntsec
        55
    tntsec  
       2015-11-27 21:11:20 +08:00
    本地 百度网盘 七牛三层备份
    http://www.tntsec.com/archives/256.html
    pynix
        56
    pynix  
       2015-11-27 21:18:27 +08:00
    快照。。。
    jsthon
        57
    jsthon  
       2015-11-27 22:30:55 +08:00
    吓得我赶紧去创建了一个自定义镜像
    raptor
        58
    raptor  
       2015-11-27 22:33:41 +08:00
    运维水平太不靠谱了…

    我自己的 BLOG 都有多重备份,在 VPS 上做数据库备份,然后 rsync 到家里的备份服务器上,然后这个备份服务器用 ZFS 做快照,保留十几份。定期还有离线备份。
    crowds
        59
    crowds  
       2015-11-27 22:50:28 +08:00
    自己的网站而已
    又不是停了之后一坨人拿你问罪
    有什么大不了的
    Daddy
        60
    Daddy  
       2015-11-28 00:59:04 +08:00
    @Hyperion SolusVM 管理后台,可以让你用特定账户密码登陆的
    qw7692336
        61
    qw7692336  
       2015-11-28 01:11:41 +08:00
    刚刚 rm -rf 了自己电脑硬盘的根目录
    syy
        62
    syy  
       2015-11-28 01:29:10 +08:00
    每天自动备份到 Dropbox
    chairuosen
        63
    chairuosen  
       2015-11-28 01:31:55 +08:00
    @qw7692336 装点 Adobe 全家桶
    qw7692336
        64
    qw7692336  
       2015-11-28 01:34:47 +08:00
    @chairuosen
    装了会怎样。。
    求恢复软件
    AstroProfundis
        65
    AstroProfundis  
       2015-11-28 01:41:41 +08:00
    @qw7692336 装了会让你有更多时间在删到用户文件之前按 Ctrl+C...
    qw7692336
        66
    qw7692336  
       2015-11-28 01:45:47 +08:00
    @AstroProfundis
    不治本
    AstroProfundis
        67
    AstroProfundis  
       2015-11-28 01:50:05 +08:00
    @qw7692336 这只是个梗而已,别认真...
    qw7692336
        68
    qw7692336  
       2015-11-28 01:53:57 +08:00
    @AstroProfundis 我听说过放大文件的,没听说过 adobe 全家的
    twl007
        69
    twl007  
       2015-11-28 07:06:03 +08:00
    曾经干过…… 格了硬盘忘了同步磁盘信息了…… 然后重启之后…… = = ||||||
    ahillgian
        70
    ahillgian  
       2015-11-28 09:00:30 +08:00
    可怜.
    Showfom
        71
    Showfom  
    PRO
       2015-11-28 10:37:53 +08:00 via iPhone
    楼上的有些备份脚本居然发到邮箱的.....你们的数据库是有多小...
    realpg
        72
    realpg  
    PRO
       2015-11-28 10:47:10 +08:00
    @Showfom
    干货数据库本身确实可能很小。
    之前做的一个七百多万用户的项目, MYSQL 文件压缩后也不过 20MB
    Showfom
        73
    Showfom  
    PRO
       2015-11-28 10:52:23 +08:00 via iPhone
    @realpg 太小了 我这随便压缩后都上百 M 了
    realpg
        74
    realpg  
    PRO
       2015-11-28 10:55:55 +08:00
    @Showfom
    跟业务有关啊
    我现在还维护一个项目,整个项目的 DB 里面只有 username 一个字符类变量,其他全是各种长短 int ,包含 password 都是 int 存储,就是为了查询速度以及容量小方便自动随时迁移
    zsen
        75
    zsen  
       2015-11-28 12:07:49 +08:00
    那个脚本里面还是有一些坑需要填的。

    比如我用的是 postfix ,默认只能发 10M 的附件,需要手动更改配置文件来发送大附件。目前我自己跑的是 20M 是没问题的,因为我的备份文件压缩后木有超过 20M ,所以最大能发多大的附件,没实际测试过。

    另外,在 mac 下, mail 是没有-s 添加附件这一功能的。至于 linux 下面,是不是所有版本都支持,我也不清楚。建议可以使用 mutt 来。

    至于说数据库压缩之后还超大的,我认为就需要更严谨和科学的数据容灾机制了,比如主从数据库的实时同步不止是数据库,程序文件也是这样,这样万一失误可以马上无缝切换到备用系统中去,而不影响业务。

    换句话说,这样的备份脚本,更多的还是适合于个人网站,或者小项目。商业系统中的生产环境需要更完善的权限控制机制(比如题主说的,以及回复中说到的`rm -rf / `的情况),以及我上面说到的更严谨的备份机制。
    GNiux
        76
    GNiux  
       2015-11-28 12:49:51 +08:00 via iPhone
    很喜欢这种帖子!学习了

    (别扁我…
    wdlth
        77
    wdlth  
       2015-11-28 13:16:41 +08:00
    我是备份到 Box 、 Copy 和 DropBox 。
    JiaFeiX
        78
    JiaFeiX  
    OP
       2015-11-28 13:37:00 +08:00
    我现在用 [多备份] 提供的服务, 但还是有很多坑
    zinev
        79
    zinev  
       2015-11-28 13:49:52 +08:00
    中午不睡,下午崩溃是真的。。。

    打算把公司服务器上的网站文件拖下来改点功能,大白天的全部拖下来影响正常访问,于是备份数据库之后和网站所有文件打了个 zip 包,打完之后想把压缩包里面的图片文件删了,

    嗯,没睡醒,把网站目录下的图片文件夹全给删了,

    顿时整个办公司都停下休息了,

    嗯,还好上司好,没吊打我
    markmx
        80
    markmx  
       2015-11-28 14:10:39 +08:00
    有一次 正式和本地同步数据.
    结果变成了 正式和正式..
    结果只剩表了.




    还好开启了日志功能. 中午整到 夜里 12 点. 通过日志恢复了数据..
        81
    Pepsigold  
       2015-11-28 21:46:14 +08:00 via Android
    必须留名!
    zzxa
        82
    zzxa  
       2015-11-28 23:25:50 +08:00
    难道 lz 你叫 peter 吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2572 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 06:02 PVG 14:02 LAX 22:02 JFK 01:02
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86