zoukankan      html  css  js  c++  java
  • gitlab数据备份与恢复

    gitlab数据备份与恢复

    一、备份数据

    1)修改配置文件

    • /etc/gitlab/gitlab.rb
    # gitlab_rails['backup_path'] 备份保存的位置,这里是默认位置,可修改成指定的位置
    # gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
    gitlab_rails['backup_path'] = "/data/gitlab_backup/"
    
    # (该配置可不处理)设置备份保存的时间,超过此时间的日志将会被新覆盖
    gitlab_rails['backup_keep_time'] = 604800  # 这里是默认设置,保存7天,配置文件中默认为注释的
    
    # 特别注意:
    # 如果自定义了备份保存位置,则要修改备份目录的权限,比如:
    chown -R git.git /data/gitlab_backup/
    
    • 配置完成后要重启以使配置生效
    # 重读配置文件
    gitlab-ctl reconfigure  
    
    # 重启gitlab
    gitlab-ctl restart
    

    2)设置定时任务

    crontab使用:https://www.cnblogs.com/linagcheng/p/15384800.html

    # 每天凌晨2点定时创建备份
    # 将一下内容写入到定时任务中 crontab -e
    0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
    
    # 备份策略建议:
    #     本地保留3到7天,在异地备份永久保存
    

    3)备份时间的识别

    # 备份后的文件类似这样的形式:1641278530_2022_01_04_10.7.5_gitlab_backup.tar,可以根据前面的时间戳确认备份生成的时间
    date  -d  @1641278530
    

    二、恢复数据

    1)停止数据写入服务

    # 停止数据写入服务
    gitlab-ctl stop unicorn
    gitlab-ctl stop sidekiq
    

    2)进行数据恢复并重启

    # 进行恢复
    gitlab-rake gitlab:backup:restore BACKUP=1641278530_2022_01_04_10.7.5  # 这个时间戳就是刚刚备份的文件前面的时间戳
    
    # 重启
    gitlab-ctl restart
    
    博客内容仅供参考,部分参考他人优秀博文,仅供学习使用
  • 相关阅读:
    将log4Net记录的日志导入数据库操作指南
    算法40 leetcode 155.最小栈
    c++求以3为底的对数 遇到243 怎么也通不过
    算法36 动规初探&&斐波那契&&尾递归
    算法38 5. 最长回文子串
    算法39 leetcode22. 括号生成
    算法34 堆排序heapsort
    算法37 动规求数组和
    算法35 力扣twosum
    c++ vector size()18446744073709551615 bug
  • 原文地址:https://www.cnblogs.com/linagcheng/p/15762512.html
Copyright © 2011-2022 走看看