当前位置: 首页 > news >正文

备份和恢复Gitlab数据

1、备份配置文件

注:还原需要的配置文件

/etc/gitlab/gitlab.rb
/etc/gitlab/gitlab-secrets.json

2、备份数据,数据默认保存在/var/opt/gitlab/backups目录。

gitlab-rake gitlab:backup:create

接下来恢复数据,需要注意的是gitlab对应版本必须一致

3、复制数据到新Gitlab默认备份目录

cp 备份文件_gitlab_backup.tar /var/opt/gitlab/backups/

4、设置访问权限777

chmod 777 /var/opt/gitlab/backups/*.tar

5、恢复数据

#停止gitlab
gitlab-ctl stop unicorn
gitlab-ctl stop sideki
#必须线先将备份的gitlab.rb和gitlab-secrets.json文件放在你的gitlab对应目录下 
#修改gitlab.rb里面gitlab对应的ip为你现在gitlab的访问ip

#TIMESTAMP_NUMBER不包含_gitlab_backup.tar(你的备份tar文件)
gitlab-rake gitlab:backup:restore BACKUP=TIMESTAMP_NUMBER
yes-->yes

注:恢复过程中的gitlab数据库报错,根据错误信息搜索操作就可以解决
异常信息如下

Restoring PostgreSQL database gitlabhq_production ... ERROR:  must be owner of extension pg_trgm
ERROR:  must be owner of extension btree_gist
ERROR:  must be owner of extension btree_gist
ERROR:  must be owner of extension pg_trgm

解决方法

1、修改postgresql相关配置

# 修改以下配置文件,修改端口监听地址,默认监控localhost,* 代表all
$ vim /var/opt/gitlab/postgresql/data/postgresql.conf
 
listen_addresses = '*'
 
# 以下配置文件新增以下两行
$ vim /var/opt/gitlab/postgresql/data/pg_hba.conf
 
local   all         all                               trust
host    all         all                               127.0.0.1/32 trust

2、重启gitlab服务(目的是为了重启gitlab数据库)

$ gitlab-ctl restart

3、修改

$ su - gitlab-psql
 
$ /opt/gitlab/embedded/bin/psql -h 127.0.0.1 gitlabhq_production
 
gitlabhq_production=# ALTER USER gitlab WITH SUPERUSER;
 
ALTER ROLE
 
gitlabhq_production=# \q
 
$ exit

然后在执行上面恢复操作

相关文章:

  • Kali在线安装包一些小问题
  • vue中常用的修饰符
  • 骨架图算法
  • Git --》如何在IDEA中玩转Git与GitHub?
  • C++中的继承(继承基本概念、菱形虚拟继承内存模型)
  • 怎样从零开始训练一个AI车手?
  • 【Spring Cloud】新闻头条微服务项目:文章内容安全审核(新增DFA+OCR过滤敏感词需求)
  • 猿创征文|给妈妈做个相册——在服务器上搭建Lychee相册的保姆级教程
  • 利用云服务器搭配宝塔面板解禁网易云
  • Proximal Policy Optimization Algorithms
  • ARM KEIL流程_job
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname
  • SpringBoot——快速整合EasyExcel实现Excel的上传下载
  • Vue 国际化之 vue-i18n 的使用
  • 7、Java——for循环打印九九乘法口诀表
  • 【刷算法】从上往下打印二叉树
  • js递归,无限分级树形折叠菜单
  • k8s如何管理Pod
  • NSTimer学习笔记
  • Vue组件定义
  • 半理解系列--Promise的进化史
  • 第十八天-企业应用架构模式-基本模式
  • 关于字符编码你应该知道的事情
  • 近期前端发展计划
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 使用common-codec进行md5加密
  • 使用SAX解析XML
  • 微信小程序设置上一页数据
  • 学习笔记:对象,原型和继承(1)
  • 7行Python代码的人脸识别
  • 说说我为什么看好Spring Cloud Alibaba
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #预处理和函数的对比以及条件编译
  • (+4)2.2UML建模图
  • (003)SlickEdit Unity的补全
  • (C语言)fread与fwrite详解
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (强烈推荐)移动端音视频从零到上手(上)
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转)视频码率,帧率和分辨率的联系与区别
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET 使用 XPath 来读写 XML 文件
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .net下的富文本编辑器FCKeditor的配置方法
  • .NET运行机制
  • .net中我喜欢的两种验证码
  • /boot 内存空间不够
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)