• Perforce服务器的备份还原


    备份:

    Perforce服务器的备份分两个部分:一个是数据库的备份,一个是源文件的备份。数据库的备份简单的说就是创建一个checkpoint然后备份 checkpoint文件。源文件的备份就更简单了,用你喜欢的任何方式做一个Perforce代码库(depot)的备份。

    1、备份数据库

    p4 admin checkpoint -z (或者p4d -r $P4ROOT -z -jc)

    这两个命令作用相同,就是把数据库里的全部信息导出来并生成一个checkpoint文件和一个jounal文件:checkpoint.nnn.gz和journal.n.gz

    cp checkpoint.nnn.gz /backup/location/checkpoint.nnn.gz
    cp journal.nnn.gz /backup/location/journal.nnn.gz

    2、备份源文件

    找到源库的文件夹。默认位置是$P4ROOT(所有db.*文件所在处)下的源库名。比如说如果你有一个depot叫projectA,

    tar czvf projectA.tar.gz $P4ROOT/projectA
    ...
    cp projectA.tar.gz /backup/location

    还原:

    恢复的过程分不同的情况:
    1、数据库损坏但源文件没有受影响。
    2、数据库和源文件都损坏了。

    一、如果只是数据库损坏,你只需要恢复数据库。步骤如下:
    1) 暂停Perforce服务器。

        p4 admin stop

    2) 将所有数据库文件(db.*)改名或移动到另一个文件夹(最好不要直接删除)。

        mv $P4ROOT/db.* /somewhere/safe

    3) 运行p4d从最新的checkpoint和journal文件恢复数据库。

        p4d -r $P4ROOT -jr checkpoint_file journal_file

    注意如果checkpoint和journal是压缩文件的话,需要加上-z标志。

        p4d -r $P4ROOT -z -jr checkpoint_file journal_file

    到这里数据库就应该恢复好了,你可以重新启动Perforce服务器检查恢复是否成功。

    二、数据库和源文件都损坏了。
    1) 如上恢复数据库,但是不需要使用journal文件,因为你需要从备份中恢复源文件,当前的日志文件包含的信息不再适用。

    2) 恢复源文件。从备份中拷贝(如果压缩过的话先解压)源文件到Perforce库文件应在的位置,比如$P4ROOT.

    任何恢复完成后都应该确定所有版本文件没有问题,运行:

        p4 verify -q //...
  • 相关阅读:
    01模拟面试面试题汇总
    第一轮面试
    大觅网03Day
    大觅网02Day
    大觅网01Day
    树状数组
    HH的项链
    小z的袜子
    分块
    扩展欧几里德
  • 原文地址:https://www.cnblogs.com/Byrd/p/2050915.html
Copyright © 2020-2023  润新知