zoukankan      html  css  js  c++  java
  • Gitlab用户信息批量导出

    前言

        因运维体系中涉及到用户权限管理及统计,需将Gitlab用户数据提取出来并录入到公司内部自建的权限统计平台。

        本文将对Gitlab的用户信息数据批量导出进行操作说明!

    思路

        A)要对数据进行批量的导出,当然第一想法是将数据库中对应的库、表相关数据进行导出即可;

        B)通过Navicat数据库工具连接Gitlab的Postgresql数据库,能够很方便的查找相关数据及信息导出,但工具在电脑本地,Gitlab在服务器,存在连接授权、连接信息等相关配置,这些操作可能涉及到服务重启等操作,对现用的Gitlab服务存在潜在的隐患,故工具方式弃用;

        C)故笔者选择:登陆Gitlab服务器进行数据库登陆、数据查询及信息导出操作;

    操作

    # 根据配置文件,定位相关信息

    [root@l-git4 ~]# cat /var/opt/gitlab/gitlab-rails/etc/database.yml

    # 查看Gitlab对应的系统用户

    [root@l-git4 ~]# cat /etc/passwd | grep gitlab

    # 根据信息登陆数据库

    # 切换用户

    [root@l-git4 ~]# su - gitlab-psql

    # 登陆数据库(-h指定host,-d指定数据库)

    -sh-4.2$ psql -h /var/opt/gitlab/postgresql -d gitlabhq_production

    # 查看帮助信息

    gitlabhq_production=# h

    # 查看数据库

    gitlabhq_production=# l

    # 查看库中的表(执行命令后,按回车键显示更多表信息)

    gitlabhq_production=# dt

    # 通过筛查,可在库中找到users表,相关用户信息都记录在表中!

    # 查看users表结构

    gitlabhq_production=# d users

    # 查看表信息

    gitlabhq_production=# SELECT * FROM users;

    # 查看users表中的name字段

    gitlabhq_production=# SELECT name FROM users;

    # 登出数据库

    gitlabhq_production=# q

    # 确定表表users中的 username , email , state 字段是需要提取的信息,进行导出操作

    -sh-4.2$  echo 'select username,email,state from users;' |psql -h /var/opt/gitlab/postgresql -d gitlabhq_production > info.txt

  • 相关阅读:
    【UWP】仅在TextBlock文本溢出时显示Tooltip
    Vue CSS引用背景图片问题
    使用C#与CefSharp相互调用所踩过的坑
    使用JS在网页上查看显示PDF文件
    VS 代码提示默认不选中 解决办法
    Windows Server 2012 R2更新(KB2919355)
    在ASP.NET Core 3.1中使用Swagger
    SQL SERVER 数据库授权指定用户
    第一篇博客
    观察者模式
  • 原文地址:https://www.cnblogs.com/kazihuo/p/11200585.html
Copyright © 2011-2022 走看看