极狐GitLab如何配置使用独立数据库?

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLabhttps://gitlab.cn/install?channel=content\&utm_source=csdn 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。

极狐GitLab 在 5 月 28 日正式发布了 AI 产品驭码CodeRider。现已开启免费试用,登录官网:https://coderider.gitlab.cn/ 即可申请试用。

更多关于极狐GitLabhttps://gitlab.cn 或者 DevOps 的最佳实践,可以关注文末的极狐GitLab 公众号。

学习极狐GitLab 的相关资料:

  1. 极狐GitLab 官网https://gitlab.cn
  2. 极狐GitLab 官网文档https://docs.gitlab.cn
  3. 极狐GitLab 论坛https://forum.gitlab.cn/
  4. 极狐GitLab 安装配置https://gitlab.cn/install
  5. 极狐GitLab 资源中心https://resources.gitlab.cn/
  6. AI 产品驭码CodeRiderhttps://coderider.gitlab.cn/

搜索【极狐GitLab】公众号,后台输入加群 ,备注gitlab,即可加入官方微信技术交流群。

配置使用极狐独立数据库 (BASIC SELF)

本指南记录了如何配置启用极狐独立数据库。

要使用极狐独立数据库,你需要将极狐GitLab 实例配置为使用多数据库支持。

注意事项

极狐独立数据库目前仅支持 Linux 安装包,暂不支持其他如 Docker 等方式的极狐GitLab。

基于 Linux 安装包的配置步骤

  1. 如果是全新安装,请先按照安装方法让极狐GitLab 实例启动运行起来。

  2. 创建配置的备份:

    sudo cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.org

  3. 编辑 /etc/gitlab/gitlab.rb 并保存更改。

    Gitlab JH database settings

    gitlab_rails['databases']['jh']['enable'] = true
    gitlab_rails['databases']['jh']['db_database'] = "gitlabhq_production_jh"
    gitlab_rails['databases']['jh']['db_database_tasks'] = true
    gitlab_rails['databases']['jh']['db_migrations_paths'] = "jh/db/migrate"
    gitlab_rails['databases']['jh']['db_schema_migrations_path'] = "jh/db/schema_migrations"

  4. 设置数据库权限:

    sudo su - gitlab-psql
    /bin/bash
    psql -h /var/opt/gitlab/postgresql -d template1

    在 psql 内执行

    ALTER USER gitlab CREATEDB;

  5. 运行 sudo gitlab-ctl reconfigure 命令

  6. 运行迁移脚本:

    步骤一

    sudo gitlab-rails db:create:jh

    步骤二

    sudo gitlab-rails db:migrate:jh

  7. 检查数据库,确认极狐独立数据库(gitlabhq_production_jh)已经被正确创建好:

    sudo gitlab-psql -c 'select version()'

    PostgreSQL 13.11 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0, 64-bit
    (1 row)

    sudo gitlab-psql -c 'SELECT pg_database.datname as "dbname", pg_database_size(pg_database.datname)/1024/1024 AS size_in_mb FROM pg_database ORDER by size_in_mb DESC'

    在输出列表中应该能看到 gitlabhq_production_jh 出现

    复制代码
          dbname         | size_in_mb

    ------------------------+------------
    gitlabhq_production | 71
    gitlabhq_production_jh | 7

  8. 运行sudo gitlab-ctl restart重启极狐GitLab 实例。

此时,极狐GitLab 实例应该启动并正常运行,且已同时支持主数据库和极狐独立数据库。

极狐独立数据库的备份和恢复

目前暂时不支持gitlab-backup的备份方式。可以使用 PostgreSQL 的工具来进行备份和恢复。

备份极狐独立数据库
复制代码
sudo su - gitlab-psql

$ pg_dump -h /var/opt/gitlab/postgresql -d gitlabhq_production_jh -f /path/to/backup/jhdb_bak.sql
恢复极狐独立数据库
复制代码
sudo su - gitlab-psql

$ psql -h /var/opt/gitlab/postgresql -d gitlabhq_production_jh < /path/to/backup/jhdb_bak.sql
相关推荐
橘猫云计算机设计1 分钟前
net+MySQL中小民营企业安全生产管理系统(源码+lw+部署文档+讲解),源码可白嫖!
数据库·后端·爬虫·python·mysql·django·毕业设计
黄嚯嚯7 分钟前
Mysql8.0 推出的强大功能 窗口函数(Window Functions)
数据库·mysql
特立独行的猫a13 分钟前
redis客户端库redis++在嵌入式Linux下的交叉编译及使用
linux·数据库·c++·redis·redis客户端库
程序猿零零漆34 分钟前
【金仓数据库征文】金仓数据库:国产化浪潮下的技术突破与行业实践
数据库·金仓数据库 2025 征文·数据库平替用金仓
浩浩测试一下1 小时前
SQL注入高级绕过手法汇总 重点
数据库·sql·安全·web安全·网络安全·oracle·安全架构
Pasregret1 小时前
缓存与数据库一致性深度解析与解决方案
数据库·缓存·wpf
skywalk81631 小时前
Graph Database Self-Managed Neo4j 知识图谱存储实践2:通过官方新手例子入门(未完成)
数据库·知识图谱·neo4j
Lucky GGBond1 小时前
MySQL 报错解析:SQLSyntaxErrorException caused by extra comma before FROM
数据库·mysql
Claudio2 小时前
【MySQL】联合索引和覆盖索引(索引失效的误区讲解+案例分析)
数据库
纪元A梦2 小时前
Redis最佳实践——性能优化技巧之监控与告警详解
数据库·redis·性能优化