Hello kowa da kowa!
A cikin wannan labarin, za mu ƙaura bayanan GitLab daga PostgreSQL na ciki, wanda aka shigar tare da GitLab, zuwa PostgreSQL na waje, wanda aka riga an shigar akan wani sabar.

NOTE
Ana tabbatar da cewa dukkan ayyukan za su yi aiki a kai CentOS 7.7.1908, PostgreSQL 12 da GitLab 12.4.2-ee.0.
Shiryawa na farko
Mu yi abubuwa uku a gaba:
1. A kunne uwar garke Ƙara wata doka zuwa ga gidan wuta na PostgreSQL wanda ke ba da damar haɗin shiga zuwa tashar PostgreSQL 5432/TCP.
A wurina:
firewall-cmd --add-service=postgresql --zone=internal --permanent
success
firewall-cmd --reload
success2. A cikin wuri guda, amma a cikin fayil ɗin postgresql.conf, ba da damar hanyar sadarwar cibiyar sadarwa don karɓar haɗin da ke shigowa daga waje. Bude fayil ɗin postgresql.conf, nemo layin da aka yi sharhi"#saurari_address = 'localhost'"kuma a ƙarƙashinsa ƙara layi kamar ƙasa. Inda - 10.0.0.2, adireshin da ke dubawa.
A wurina:
vi /var/lib/pgsql/12/data/postgresql.conf
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on;
listen_addresses = 'localhost, 10.0.0.2'
# comma-separated list of addresses;3. Tunda uwar garken GitLab zai haɗu da rumbun adana bayanai na waje, to uwar garke Ana buƙatar kunna PostgreSQL a cikin fayil ɗin pg_hba.conf. Adireshin uwar garken GitLab dina shine 10.0.0.4.
Bari mu buɗe fayil ɗin pg_hba.conf kuma mu ƙara layin a can:
host all gitlab 10.0.0.4/24 md5Zai yi kama da haka:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all postgres md5
# IPv4 local connections:
host all postgres 127.0.0.1/32 md5
host all gitlab 10.0.0.4/24 md5Kuma a ƙarshe, mun sake kunna sabis na postgresql:
systemctl restart postgresql-12.serviceAna fitar da bayanan GitLab
Bari mu yi ajiyar bayanai akan sabar GitLab:
sudo -u gitlab-psql /opt/gitlab/embedded/bin/pg_dumpall -U gitlab-psql --host=/var/opt/gitlab/postgresql > /tmp/internal-gitlab.sqlAjiyayyen ya bayyana a /tmp:
ls -lh
total 836K
-rw-r--r--. 1 root root 836K Nov 18 12:59 internal-gitlab.sqlBari mu kwafi wannan kwafin zuwa uwar garken PostgreSQL:
scp /tmp/internal-gitlab.sql 10.0.0.2:/tmp/
internal-gitlab.sql 100% 835KB 50.0MB/s 00:00Ana shigo da "internal-gitlab.sql" cikin PostgreSQL
Shigo da bayanan cikin PostgreSQL:
sudo -u postgres psql -f /tmp/internal-gitlab.sqlBincika cewa bayanan yana cikin PostgreSQL:
sudo -u postgres psql -lYa kamata layi mai zuwa ya bayyana:
gitlabhq_production | gitlab | UTF8 | en_US.UTF-8 | en_US.UTF-8 |Ana saita GitLab
Bayan shigo da bayanan cikin PostgreSQL, an ƙirƙiri mai amfani da gitlab. Kuna buƙatar canza kalmar sirrin mai amfani.
Canza kalmar sirri:
sudo -u postgres psql -c "ALTER USER gitlab ENCRYPTED PASSWORD 'ПАРОЛЬ' VALID UNTIL 'infinity';"
Password for user postgres:
ALTER ROLESannan, akan uwar garken GitLab, a cikin fayil ɗin sanyi /etc/gitlab/gitlab.rb, zamu nuna duk bayanan PostgreSQL na waje.
Bari mu yi kwafin fayil ɗin gitlab.rb:
cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.origYanzu ƙara waɗannan layin zuwa ƙarshen fayil ɗin gitlab.rb:
# Отключить встроенный PostgreSQL.
postgresql['enable'] = false
# Данные для подключения к внешней базе. Указывайте свои.
gitlab_rails['db_adapter'] = 'postgresql'
gitlab_rails['db_encoding'] = 'utf8'
gitlab_rails['db_host'] = '10.0.0.2'
gitlab_rails['db_port'] = 5432
gitlab_rails['db_database'] = "gitlabhq_production"
gitlab_rails['db_username'] = 'gitlab'
gitlab_rails['db_password'] = '******'Ajiye fayil ɗin /etc/gitlab/gitlab.rb kuma sake saita GitLab:
gitlab-ctl reconfigure && gitlab-ctl restartShi ke nan :)
Babban bukata. Idan ka sanya ragi, rubuta dalilin a cikin sharhi.
source: www.habr.com
