Halo, kali ini saya akan membahas bagaimana cara install Database OpenSource yang paling populer menurut webiste db_enginers PostgreSQL adalah database top 5 untuk kategori database dan top 4 untuk database relational yang bersanding bersama Oracle, Mysql dan Microsoft SQL Server.
seperti biasa klo berbicara operation system yang berkaitan dengan Linux atau UNIX pasti tidak akan lepas dari yang namanya command line (terminal) so buka terminalnya kemudian masukan script berikut:
$ sudo dnf install postgresql-server postgresql-contrib pgadmin3 -y
setelah semuanya di install tahap selajutnya adalah melakukan inisialisasi config untuk data. masukan command berikut berikut ini:
$ sudo postgresql-setup initdb
jika berhasil maka hasilnya seperti berikut:
tetapi jika menemukan error seperti berikut:
solusinya adalah hapus folder pgsql/data
$ sudo rm -rf /var/lib/pgsql/
setelah itu lakukan lakukan initdb lagi, klo berhasil masuk ke step selanjutnya untuk saat ini berarti anda sudah menginstall Database di System anda, apakah udah selesai? tentu belum, kita harus setting untuk menjalankan servicenya tpi ini optional sih apakah mau dijalankan secara otomatis atau dijalankan secara manual oleh kita? klo mau otomatis berikut adalah perintahnya:
$ systemctl enable postgresql.service
nah klo outputnya seperti ini maka settingan ini udah bener:
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to /usr/lib/systemd/system/postgresql.service.
nah sekarang kita harus jalankan servicenya untuk melakukan configurasi password untuk user atau schema defaultnya yaitu postgres
dengan menggunakan perintah berikut:
$ sudo systemctl start postgresql.service
setelah itu bisa cek statusnya apakah sudah jalan atau failed dengan perintah berikut:
$ sudo systemctl status postgresql.service
ini adalah hasilnya:
postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2016-04-18 08:16:38 WIB; 7h ago
Process: 5930 ExecStart=/usr/libexec/postgresql-ctl start -D ${PGDATA} -s -w -t ${PGSTARTTIMEOUT} (code=exited, status=0/SUCCESS)
Process: 5926 ExecStartPre=/usr/libexec/postgresql-check-db-dir %N (code=exited, status=0/SUCCESS)
Main PID: 5934 (postgres)
CGroup: /system.slice/postgresql.service
├─5934 /usr/bin/postgres -D /var/lib/pgsql/data
├─5935 postgres: logger process
├─5937 postgres: checkpointer process
├─5938 postgres: writer process
├─5939 postgres: wal writer process
├─5940 postgres: autovacuum launcher process
└─5941 postgres: stats collector process
Apr 18 08:16:37 localhost.localdomain systemd[1]: Starting PostgreSQL databas...
Apr 18 08:16:37 localhost.localdomain postgresql-ctl[5930]: LOG: redirecting...
Apr 18 08:16:37 localhost.localdomain postgresql-ctl[5930]: HINT: Future log...
Apr 18 08:16:38 localhost.localdomain systemd[1]: Started PostgreSQL database...
Hint: Some lines were ellipsized, use -l to show in full.
tahap selanjutnya jika servicenya udah jalan seperti output diatas kita harus update configurasi file berikut dengan cara update file /var/lib/pgsql/data/pg_hba.conf
untuk lebih mudah bisa gunakan text editor default fedora yaitu gedit
$ sudo gedit /var/lib/pgsql/data/pg_hba.conf
setelah file tersebut terbuka di gedit
maka ubahlah method menjadi md5
dan address
menjadi 0.0.0.0/24
seperti berikut:
kemudian restart servicenya
$ sudo systemctl restart postgresql.service
setelah itu coba login dengan user postgres dan db postgres (masih dalam root):
psql -h localhost -U postgres postgres
berikut outputnya:
Password for user postgres:
psql (9.4.7)
Type "help" for help.
postgres=#
setelah itu ubah password defaultnya menjadi (bebas terserah anda) klo saya menggunakan admin
menggunakan perintah berikut
\password
berikut outpunya:
postgres=# \password
Enter new password: # admin
Enter it again: # admin
kemudian exit dari terminal dan buka lagi terminalnya setelah itu coba login sebagai postgres.
berikut hasilnya:
penjelasanya:
-h
adalah hostname / ip address-U
adalah username kemudian yang diikuti dengan nama databasenya, jadi klo kita perhatikan params diatas ada 2 postgres jadi maksudnya adalah postgres yang pertama nama user / role dan postgres yang kedua adalah nama database.-W
digunakan untuk memastikan bahwa user tersebut memiliki password tetapi jika tidak memiliki password bisa menggukan-w
ok mungkin cukup sekian dulu tentang bagaimana cara install postgresql di Fedora 23