配置gitlab使用外部数据库

vim /opt/gitlab/embedded/service/gitlab-rails/.bundle/config
将BUNDLE_WITHOUT: "development:test:mysql" 修改为
BUNDLE_WITHOUT: "development:test:postgres"

yum -y install ruby-devel
cd /opt/gitlab/embedded/bin
./gem install mysql2

1、创建数据库
#创建数据库
create database gitlab DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

#添加权限
GRANT ALL PRIVILEGES ON gitlab.*TO ‘gitlab‘@‘%‘ IDENTIFIED BY ‘gitlab‘ WITH GRANT OPTION;

#刷新权限
flush privileges;

2、配置gitlab.rb,添加mysql
vim /etc/gitlab/gitlab.rb

#修改数据库配置
gitlab_rails[‘db_adapter‘] = "mysql2"
gitlab_rails[‘db_encoding‘] = "utf8"
gitlab_rails[‘db_database‘] = "gitlab"
gitlab_rails[‘db_username‘] = "gitlab"
gitlab_rails[‘db_password‘] = "gitlab"
gitlab_rails[‘db_host‘] = "127.0.0.1"
gitlab_rails[‘db_port‘] = 3306
postgresql[‘enable‘] = false

3、配置gitlab的依赖
3.1去掉掉postgres依赖
#缺少 mysql2,用ruby的gem工具下载一个,在下载之前,得先配置下ruby的gem与bundle
#编辑config
vim /opt/gitlab/embedded/service/gitlab-rails/.bundle/config
将原来的mysql替换成postgres,我们不需要postgers的包了。
这里写图片描述

3.2安装mysql依赖
安装依赖,需要指定版本,可以先安装后,在执行gitlab-rake gitlab:check查看安装的版本。

gitlab几乎所有的命令都在此目录下

cd /opt/gitlab/embedded/bin/

##安装mysql
./gem install mysql2

yum -y install ruby-devel
mkdir -p /opt/gitlab/embedded/lib/ruby/include/
cp /usr/include/ruby/ruby.h /opt/gitlab/embedded/lib/ruby/include/

#删除mysql
./gem uninstall mysql2

#安装指定版本
./gem install mysql2 -v "0.3.20"

#查看版本
./gem list | grep mysql

4、检查配置
这个检查,是为了保证咋们的配置绝对的正确。不然直接搞,会死得很惨的。这个地方会有很多错误的,具体可以看我的常见问题,说不定有一样的。

#查看配置是否ok,如果数据库ok了 可以直接执行gitlab-rake gitlab:setup,来创建数据库的表。
gitlab-rake gitlab:check

5、初始化gitlab
执行gitlab-rake gitlab:setup命令,来初始化gitlab.

#初始化gitlab
gitlab-rake gitlab:setup

我们执行了gitlab-rake gitlab:setup 之后,会提示以前的数据信息会丢失掉。当然我们不设定为yes,后面咋玩啊。

成功后之后,就会创建一个root用户

6、重启服务
#####后面几个gitlab-ctl 常用命令,这次配置用不到
#配置服务
gitlab-ctl reconfigure;

#重启服务
gitlab-ctl restart;

#查看启动情况
gitlab-ctl tail

7、查看数据库信息
可以看到数据库中,多出了好多张表,然后服务也正常启动了

#可以看到好多表已经自动创建了。
show tables;

服务正常启动

常见问题
1、仓库存储目录权限
人家提供了解决方案了,解决办法就是给仓库设定gt用户的权限 sudo chown -R git:git /var/opt/gitlab/git-data/repositories

default... no
User id for git: 995. Groupd id for git: 993
Try fixing it:
sudo chown -R git:git /var/opt/gitlab/git-data/repositories
For more information see:
doc/install/installation.md in section "GitLab Shell"
Please fix the error above and rerun the checks.

2、gitlab没有mysql2的依赖
Specified ‘mysql2‘ for database adapter, but the gem is not loaded. Add gem ‘mysql2‘ to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). excluded from capture due to environment or should_capture callback
1
解决办法,安装依赖

#到bin目录下,执行gem的命令
cd /opt/gitlab/embedded/bin

#安装指定版本的mysql驱动
gem install mysql2 -v "0.3.20"

3、gitlab找不到表的问题
如果驱动安装成功后,执行gitlab-rake gitlab:check,如果是表不存在,可以执行下面代码,来创建表。

gitlab-rake gitlab:setup

4、gitlab-shell self-check failed
自动检查失败,导致这个问题的原因是没找到自己的服务器,解决方案是在本地的hosts中指向自己的服务器。
解决方案,/etc/hosts添加 127.0.0.1 localhost 就可以了、我先测试功能

vim /etc/hosts

#添加
127.0.0.1 localhost

原文地址:http://blog.51cto.com/207698/2133703

时间: 2024-10-10 01:40:37

配置gitlab使用外部数据库的相关文章

openfire3.9.3服务器的外部数据库配置mysql

之前自己玩过openfire的源码编译,部署,用的内置数据库,只是好奇而已.现如今对openfire有一点理解了,尝试用mysql来重新配置最新openfire服务器,使得可视化,可拓展性更好些. 准备工作: 准备事项 1.安装mysql (5.5.8,任一版本都可)  附带一个可视化工具(navicat); 2.下载最新openfire服务器(3.9.3);  http://www.igniterealtime.org/ 要稍微读懂点英文呵: 3.导入openfire解压目录中的mysql脚本

使用事务码DBCO实现SAP链接外部数据库以及读取例程

一.链接SQLServer数据库 执行事务码DBCO,点新条目按钮,填写如下图所示信息 这里的连接信息很接近 Sql Server 的连接字符串,但是参数名略有不同.指定主机IP.数据库名即可. 二.链接DB2数据库 执行事务码DBCO,点新条目按钮,填写如下图所示信息 连接信息看上去比较直接,分别是数据库名.端口号.主机IP地址. 三.链接Oracle数据库 执行事务码DBCO,点新条目按钮,填写如下图所示信息 连接信息比较隐晦,必须在 SAP 应用服务器上安装 Oracle Client,然

quickbuild 设置使用外部数据库

很多装了Quickbuild的同学,都没有连数据库,就直接用于项目生产了,这是极度危险的.先不说性能会在构建数目越来越庞大的情况下会越来越差,就如果服务器突然断电重启,也会导致数据丢失,启动的时候就报错了,只能用到备份去恢复(如果没备份,那...). 下面就说说怎么设置使用外部数据库吧. 其实在启动的时候,就有提示,按着引导,就能设置好了,这里只是给个中文版步骤: 一.第一次打开quickbuild,会提示: 二.如果点击了上图中的this guide就可以看到官方说明: 三.其实官方说的很清楚

centos/debian配置gitlab 7.1x来搭建自建的git仓库.

centos/debian配置gitlab 7.1x来搭建自建的git仓库. 前言:因为公司的某些历史原因, 有大量的代码还在csv/svn上. 新来的项目不得不走这个,同时,github的enterprise 2500$/y/10p的价格对于多变的项目和人员也不合适. 也为了让某些不习惯使用linux的开发使用上git, 就放弃了之前的gitolite server, 进而采用gitlab来搭建. www.gitlab.com 是gitlab的仓库, 以前的历史版本, 需要先配置gitolit

访问GitLab的PostgreSQL数据库

1.登陆gitlab的安装服务查看配置文件 cat /var/opt/gitlab/gitlab-rails/etc/database.yml production: adapter: postgresql encoding: unicode collation: database: gitlabhq_production //数据库名 pool: 10 username: 'gitlab' //用户名 password: host: '/var/opt/gitlab/postgresql' /

docker安装配置gitlab详细过程

获取镜像 1.方法一 1 docker pull beginor/gitlab-ce:11.0.1-ce.0 2.方法二如果服务器网路不好或者pull不下来镜像,只能在其它网路比较好的机器上pull下来镜像,导出成一个文件,再下载上传到网路不好的机器上,然后再从文件中导出来,这样在网络不好的机器上也能使用docker镜像了. 运行 1.通常会将 GitLab 的配置 (etc) . 日志 (log) .数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录. 1 2 3 mk

配置gitlab gerrit jenkins

配置gerrit 在gerrit创建jenkins用户 把jenkins用户加入Non-Interactive的组中 Projects -> List -> All-Projects Projects -> Access -> Edit -> 找到 Reference: refs/heads/* 项 -> Add Permission -> Label Verified-> Group Name 里输入 Non-Interactive Users ->

Centos7安装配置gitlab

Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-server sudo yum install postfix sudo yum install cronie sudo service postfix start sudo chkconfig postfix on sudo lokkit -s http -s ssh 使用清华大学gitlab的镜像http

XML配置中 引入外部property文件

新建properties配置文件 内容如下: jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc\:mysql\://localhost\:3306/book_mybatis?user\=root&password\=root&useUnicode\=true&characterEncoding\=UTF-8 有两个属性, ①jdbc.dirverClassName ; ②jdbc.url. <!-- 导入属性配置