在配置文件有有默认的  备份路劲

 sudo  vim  /etc/gitlab/gitlab.rb

默认在这个  路径下面

/var/opt/gitlab/backups

然后默认的备份时间是  7天 ,604800秒。 保留7天的数据。

然后这边我们自定义,备份的时间和路径。 这边我们修改下 ,一般时间(7天)不动。

目录 不需要我们手动创建,    gitlab-ctl reconfigure   的时候,会自动创建目录。

修改完成后, 重新加载配置,重启gitlab

gitlab-ctl  reconfigure
gitlab-ctl  restart

我们检查新生成的目录, 在root里面。

有的实际场景需要。 可以给他重新授权。  非必要操作。

chown  -r   git.git  /home/data/gitlab/backups/

然后我们可以手动执行一次,

 /usr/bin/gitlab-rake gitlab:backup:create                   #备份指令 

执行完成

然后查看备份目录,多了.tar的备份的文件。 文件前面部分其实是unix的时间戳。

然后我们把它写在crontab  里面。 就能自动执行了。

数据的恢复操作

当我们在生产环境中进行了误操作,可以使用备份的数据进行恢复。

我们这边首先将 gitlab上的 项目删除。

将下面app1  进行删除

在admin-area,进入项目。

直接点delete,就行了 。

删除之后,项目就没了。

现在我们按流程进行数据恢复。 先关闭以下服务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

使用执行进行恢复

/usr/bin/gitlab-rake gitlab:backup:restore  BACKUP=1572598604_2019_11_01_11.0.3
#这边的数字,就是备份文件的时间戳,需要注意。

遇到continue,直接yes 就行了。

备份完成后,restart gitlab

gitlab-ctl  restart

再次登录 gitlab,项目 就出来了。

进入项目后查看下, 之前的代码 应该都在。

还有一种方法。 不推荐,只是参考下

他所有的代码其实在 gitlab 自己的 repositories  下面

ll /var/opt/gitlab/git-data/repositories/proj1/

只备份代码的话。备份这个 .git的文件也可以。。
但是 所有的用户关系并不在里面。只是纯代码。  所有 不推荐这种方法。 可能尴尬的时候能用下。 上面那种用工具备份恢复 是最好的 。

6.gitlab 备份的更多相关文章

  1. gitlab备份及迁移

    Gitlab 创建备份 使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份: gitlab-rake gitlab:ba ...

  2. gitlab备份、恢复、升级

    1.备份 gitlab的备份很简单,只要使用命令: gitlab-rake gitlab:backup:create 即可将当前的数据库.代码全部备份到/var/opt/gitlab/backups ...

  3. gitlab备份及恢复

    gitlab备份步骤 https://blog.csdn.net/qq_31666147/article/details/79844107 gitlab版本  下载地址 https://mirrors ...

  4. Gitlab备份和恢复操作记录

    前面已经介绍了Gitlab环境部署记录,这里简单说下Gitlab的备份和恢复操作记录: 1)Gitlab的备份目录路径设置 [root@code-server ~]# vim /etc/gitlab/ ...

  5. 转载:Gitlab备份和恢复操作记录

    转载:Gitlab备份和恢复操作记录 包含了备份和数据恢复的操作记录,实验可行 前面已经介绍了Gitlab环境部署记录,这里简单说下Gitlab的备份和恢复操作记录: 1)Gitlab的备份目录路径设 ...

  6. GitLab备份的创建与恢复

    使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份: gitlab-rake gitlab:backup:create使 ...

  7. Gitlab+Jenkins学习之路(四)之gitlab备份和恢复

    gitlab的备份和恢复 (1)创建备份目录,并授权 [root@linux-node1 ~]# mkdir /data/backups/gitlab -p [root@linux-node1 ~]# ...

  8. Git学习-->如何通过Shell脚本实现 监控Gitlab备份整个过程并且通过邮件通知得到备份结果?

    一.背景 Git学习–>如何通过Shell脚本自动定时将Gitlab备份文件复制到远程服务器? http://blog.csdn.net/ouyang_peng/article/details/ ...

  9. gitlab 备份

    gitlab 备份 gitlab-rake gitlab:backup:create 执行之后,就会生成一个备份文件 [root@iZuf6dztc469onegfborf5Z backups]# l ...

  10. Gitlab备份、迁移、恢复和升级

    Gitlab备份.迁移.恢复和升级 自建的Gitlab服务器常常会因为使用时间的增长,其空间容量等硬件需求都需要升级,或者迁移至更高配置的服务器上.备份.迁移.恢复.升级过程如下 1.gitlab备份 ...

随机推荐

  1. keepass可以在浏览器中使用吗?

    KeePass不提供浏览器扩展,因此当您访问登录页面时,它不会弹出并提示您.您可以将登录信息从KeePass复制粘贴到网页上的相应框中,甚至可以使用拖放操作将用户名和密码移至上方,但这不是最方便的解决 ...

  2. git pull出错:cannot pull into a repository with state: merging_resolved"

    git pull 出错解放办法:1.尝试先提交现有代码到本地,再更新2.git reset —hard

  3. 解决 eclipse出现 Address already in use: bind,以及tomcat端口占用

    在项目开发中,有时候我们发现回报这个错:解决 eclipse出现 Address already in use: bind 产生的原因是端口占用,比如你的8080端口,已经有一个进程在访问使用,但是你 ...

  4. Codeforces Round #594 (Div. 1) C. Queue in the Train 模拟

    C. Queue in the Train There are

  5. MacOS命令行打包+签名+公证+生成dmg文件

    关于dmg文件是什么,和为什么要进行公证? 简单说下,dmg文件就是一个可直接在mac上安装的安装包,我自己的理解是就像windows上的exe安装包一样: 公证是将app传到苹果商店去做认证,如果不 ...

  6. java(二)变量

    基础数据类型: 数值型:整型(byte.short.int.long).浮点型(float.double)java各整数类型有固定的表数范围和字段长度,不受具体os的影响,以保持java的可移植性:j ...

  7. path()函数

    path()函数具有以下四个参数 route 必须 view 必须 kwargs 可选 name 可选 route route是一个匹配URL的准则(类似正则表达式) 当Django响应一个请求时,它 ...

  8. HTML+css基础 标签

    图片标签:<img src="./imgs/1.jpg" alt=“一种对图片解释说明的” /> HTML   超文本标记语言   英文名称: hyper  text  ...

  9. 依赖注入在 dotnet core 中实现与使用:3 使用 Lazy<T> 延迟实例化

    有些对象我们并不想一开始就实例化,由于性能或者功能的考虑,希望等到使用的时候再实例化.考虑存在一个类 A, 它使用了依赖的类 B,在 A 中,只有某些不常用到的方法会涉及调用 B 中的方法,多数情况下 ...

  10. C++ 类的前向声明的用法

    我们知道C++的类应当是先定义,然后使用.但在处理相对复杂的问题.考虑类的组合时,很可能遇到俩个类相互引用的情况,这种情况称为循环依赖. 例如: class A { public: void f(B ...