PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Kontrol Versi PostgreSQL dengan Atlassian Bitbucket

Dalam rekayasa sistem, komunikasi adalah elemen kunci untuk mencapai kesuksesan pada proyek apa pun. Ini karena ini sangat penting untuk seluruh siklus pengembangan; mulai dari mengumpulkan persyaratan hingga memberikan produk minimum yang layak.

Menggunakan sistem kontrol versi terdistribusi (seperti Git - standar industri), pengembang dapat mengirimkan potongan kecil kode dan bekerja sama dengan layanan seperti Bitbucket yang dibangun di sekitarnya. Hosting Bitbucket dimungkinkan ketika data yang dihasilkan oleh penggunanya memiliki database untuk disimpan, seperti halnya PostgreSQL, tetapi mengintegrasikan keduanya memerlukan konfigurasi tambahan untuk dijalankan di mesin yang berbeda.

Ikhtisar Jaringan

Jaringan area lokal dapat meneruskan informasi antar program tanpa perlu memaparkannya ke jaringan luar, tergantung di mana pengguna akan berada.

1.1. Jaringan area lokal (LAN).

Dengan pemisahan masalah, Bitbucket dan PostgreSQL dapat berbicara satu sama lain untuk mencapai tujuan bersama, menyediakan platform sistem kontrol versi terdistribusi.

1.2. Bitbucket mengakses PostgreSQL.

PostgreSQL bergantung pada soket yang disediakan oleh sistem operasi, sehingga data cluster disimpan di balik pintu yang dilindungi oleh aturan firewall.

1.3. Sumber data PostgreSQL.

Memulai

Tidak banyak yang bisa dikatakan karena ini adalah proses yang cukup sederhana. PostgreSQL perlu disiapkan dengan pengguna dan database baru yang siap untuk Bitbucket.

PostgreSQL

# Bagian 1:Mempersiapkan database.$ pg_lsclusters$ sudo systemctl -a | grep postgres$ sudo -u postgres psql -c "\du" -c "\l"
2.1. Memverifikasi apakah ada cluster yang sudah berjalan.
# Bagian 2:Membuat pengguna (peran) dan database baru.$ sudo -u postgres psql -c "buat peran thiago dengan kata sandi login createb 'Th14g0_P4ssw0rd'"$ psql -d postgres -c "buat database bitbucket_db"$ psql -d bitbucket_db -c "\du" -c "\l"
2.2. Pemilik database bukan superuser postgres.
# Bagian 3:Mengubah konfigurasi cluster (postgresql.conf).$ sudo -u postgres psql -c "show config_file"$ sudo cat /etc/postgresql/11 /main/postgresql.conf | grep listen_addresses$ sudo sed -i "s|#listen_addresses ='localhost'|listen_addresses ='\*'\t|" /etc/postgresql/11/main/postgresql.conf$ sudo cat /etc/postgresql/11/main/postgresql.conf | grep listen_addresses
2.3. Mengizinkan koneksi jarak jauh (postgresql.conf).
# Bagian 4:Mengubah konfigurasi cluster (pg_hba.conf).$ sudo wc -l /etc/postgresql/11/main/pg_hba.conf$ sudo tail -3 /etc /postgresql/11/main/pg_hba.conf$ sudo sed -i "$ a # Izinkan koneksi jarak jauh (listen_addresses ='*') dengan otentikasi" /etc/postgresql/11/main/pg_hba.conf$ sudo sed -i " $ a host\tall\t\tall\t\t192.168.0.0/16\t\tmd5" /etc/postgresql/11/main/pg_hba.conf$ sudo sed -i "$ a host\tall\t\ tinggi\t\t::/0\t\t\tmd5" /etc/postgresql/11/main/pg_hba.conf$ sudo wc -l /etc/postgresql/11/main/pg_hba.conf$ sudo tail -3 /etc/postgresql/11/main/pg_hba.conf
2.4. Mengubah izin akses (pg_hba.conf).
# Bagian 5:Memulai ulang cluster.$ sudo -u postgres psql -c "show listen_addresses"$ ss -nlp | grep 5432$ sudo systemctl restart [email protected]$ sudo -u postgres psql -c "tampilkan listen_addresses"$ ss -nlp | grep 5432
2.5. Menerapkan perubahan.
# Bagian 6:Membuka pintu.$ sudo ufw status$ sudo ufw allow 5432/tcp$ sudo ufw status$ ip addr show
2.6. Mengonfigurasi firewall dan menampilkan alamat IP.
# Bagian 7:Tetapkan sandi untuk peran pengguna super.$ sudo -u postgres psql -c "\password"
2.7. Mengubah kata sandi admin.

Bitbucket

Inilah yang perlu Anda lakukan di sisi Bitbucket.

# Bagian 1:Memverifikasi apakah pengaturan sebelumnya sudah benar.$ telnet 192.168.0.106 5432# (Opsional) Menggunakan psql.$ sudo -u postgres psql -h 192.168.0.106 -p 5432 -d bitbucket_db -U thiago - c "\conninfo"
3.1. Menjangkau database dari jarak jauh.
# Bagian 2:Mengekstrak Server Bitbucket.$ ls$ tar xzf atlassian-bitbucket-6.10.0$ ls$ du -sh atlassian-bitbucket-6.10.0$ tree -L 1 atlassian-bitbucket -6.10.0$ tree -L 1 atlassian-bitbucket-6.10.0/bin
3.2. Skrip untuk Linux dan Windows.
# Bagian 3:Memodifikasi skrip (set-bitbucket-home.sh).$ mkdir bitbucket-home$ echo $(pwd)/bitbucket-home$ cat atlassian-bitbucket-6.10.0 /bin/set-bitbucket-home.sh | grep BITBUCKET_HOME=$$ sed -i 's|BITBUCKET_HOME=$|BITBUCKET_HOME=/home/thiago/Documents/severalnines.com/database-blog/bitbucket-home|' atlassian-bitbucket-6.10.0/bin/set-bitbucket-home.sh$ cat atlassian-bitbucket-6.10.0/bin/set-bitbucket-home.sh | grep BITBUCKET_HOME=/
3.3. Konfigurasi BITBUCKET_HOME.
# Bagian 4:Memodifikasi skrip (set-jre-home.sh).$ readlink -f $(yang java)$ cat atlassian-bitbucket-6.10.0/bin/set-jre-home. sh | grep JRE_HOME=$$ sed -i's|JRE_HOME=$|JRE_HOME=/usr/lib/jvm/java-11-openjdk-amd64|' atlassian-bitbucket-6.10.0/bin/set-jre-home.sh$ cat atlassian-bitbucket-6.10.0/bin/set-jre-home.sh | grep JRE_HOME=/
3.4. Konfigurasi JRE_HOME (Java).
# Bagian 5:Memeriksa perangkat keras.$ cat /proc/cpuinfo | prosesor grep | wc -l$ gratis -h
3.5. Core CPU dan RAM saat startup.
# Bagian 6:Menjalankan Server Bitbucket dengan Elasticsearch.$ ./atlassian-bitbucket/bin/start-bitbucket.sh$ free -h
3.6. Menjalankan dengan Elasticsearch (Default).
# Bagian 7:Menjalankan Server Bitbucket tanpa Elasticsearch.$ ./atlassian-bitbucket/bin/start-bitbucket.sh --no-search$ free -h
3.7. Mengeksekusi tanpa Elasticsearch (Menghemat 1 GB RAM).
# Bagian 8:Lihat sekilas BITBUCKET_HOME.$ du -sh bitbucket-home$ tree -L 1 bitbucket-home
3.8. Di dalam BITUCKET_HOME.

Mengintegrasikan PostgreSQL &Bitbucket

Setelah mengkonfigurasi PostgreSQL dan Bitbucket, integrasinya harus dilakukan melalui browser (http://localhost:7990/).

4.1. Bitbucket memulai.
# Menampilkan tabel$ psql -h 192.168.0.106 -d bitbucket_db -c "\dt"
4.2. Mencantumkan tabel database saat ini.

Sekarang Anda dapat menyiapkan Bitbucket untuk menggunakan Java Persistence API, dengan Hibernate sebagai implementasinya, untuk membuat model domain dalam database, menggunakan driver PostgreSQL JDBC.

4.3. Konfigurasi Sumber Data.
# Menampilkan tabel (lagi)$ psql -h 192.168.0.106 -d bitbucket_db -c "\dt"
4.4. Daftar lagi, menampilkan 10 dari 164 baris.
# Memverifikasi kumpulan koneksi.$ psql -h 192.168.0.106 -d bitbucket_db -c "select pid,usename,application_name,state from pg_stat_activity where datname ='bitbucket_db'" 4.5. Menampilkan kumpulan koneksi. 

Kesimpulan

Perlu diingat bahwa jika jaringan Anda menggunakan DHCP, sebaiknya konfigurasikan alamat IP ke statis di router Anda, atau Bitbucket mungkin gagal saat mencoba menemukan PostgreSQL nanti.

Sebagian besar blog ini telah menggunakan ekspresi reguler untuk mengubah file konfigurasi tanpa membuka editor teks, tetapi mereka juga dapat digunakan di browser web untuk tujuan debugging, coba cari pesan kesalahan “tidak bisa ubah direktori ke ?:Izin ditolak” dengan tanda kutip ganda, atau masalah lain yang mungkin Anda temukan, mengganti jalur khusus komputer dengan karakter pengganti '?'.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana Membandingkan Dua Skema di PostgreSQL

  2. Perintah PostgreSQL VALUES Dijelaskan

  3. lastInsertId tidak berfungsi di Postgresql

  4. Jenis JOIN apa yang digunakan

  5. Temukan Induk secara Rekursif menggunakan Query