#>Mhafid http://blog.mhafid.com A problem is a chance for you to do your best Sun, 09 Feb 2020 23:25:36 +0000 en-US hourly 1 https://wordpress.org/?v=5.3.2 http://blog.mhafid.com/wp-content/uploads/2019/06/cropped-favicon-32x32.png #>Mhafid http://blog.mhafid.com 32 32 How to Terminate PostgreSQL Sessions http://blog.mhafid.com/how-to-terminate-postgresql-sessions/?utm_source=rss&utm_medium=rss&utm_campaign=how-to-terminate-postgresql-sessions http://blog.mhafid.com/how-to-terminate-postgresql-sessions/#respond Sun, 09 Feb 2020 23:25:35 +0000 http://blog.mhafid.com/?p=1729 Ada sesuatu yang ingin dilakukan terhadap database akan tetapi sering kali kita melupakan bahwa database tersebut sedang di akses oleh beberapa user / aplikasi yang menyebabkan database tersebut memiliki sebuah session untuk mengikat autorisasi.

Pada tutorial ini saya hendak membuat replicate / duplikasi dari sebuah database postgresql dimana duplikasi tersebut dapat dilakukan apabila session dari database yang ingin di duplikasi terbebas. Postgresql yang digunakan adalah versi 10 dan terinstall di Sistem Operasi berbasis linux CentOs (tutorial ini bisa dijalankan pada versi postgresql berapapun dan pada OS apapun).

Langkah yang harus dilakukan adalah :

  1. Masuk akses ke database menggunakan user postgres (sudo su postgres / su – postgres)
  2. Setelah itu masukan password akses menggunakan username postgres. (bukan password root OS ya)
  3. Jalankan perintah SQL dibawah ini :

SELECT pg_terminate_backend(pg_stat_activity.pid)FROM pg_stat_activity WHERE pg_stat_activity.datname = ‘namadatabase‘ AND pid <> pg_backend_pid();

Output dari Syntax SQL diatas adalah akan menampilkan sederetan list session yang di terminate (dimatikan). Setelah itu kalian bisa bebas melakukan apapun terhadap database tersebut.

Catatan : Perintah SQL ini tidak mematikan service postgresql / merestart nya dan tidak mematikan / mendisconnect-kan aplikasi yang terhubung dengan database tersebut.

]]>
http://blog.mhafid.com/how-to-terminate-postgresql-sessions/feed/ 0
Solve Problem TypeError: sequence index must be integer, not ‘slice’ http://blog.mhafid.com/solve-problem-typeerror-sequence-index-must-be-integer-not-slice/?utm_source=rss&utm_medium=rss&utm_campaign=solve-problem-typeerror-sequence-index-must-be-integer-not-slice http://blog.mhafid.com/solve-problem-typeerror-sequence-index-must-be-integer-not-slice/#respond Mon, 27 Jan 2020 03:27:56 +0000 http://blog.mhafid.com/?p=1726 Beberapa waktu lalu saya memiliki permasalahan untuk koneksi ke database postgresql dengan muncul error message : TypeError: sequence index must be integer, not ‘slice’ .

Error ini terjadi apabila kalian menggunakan database postgresql dengan menggunakan koneksi psycopg2. Kesalahan ini terjadi ketika versi django, python, psycopg dan psycopg-binary nya tidak saling compatible versioningnya.

Disini saya ingin share yang compatible librarynya dengan python 3.5 dan django versi 2 :

pip install psycopg2==2.7.7

pip install psycopg-binary==2.8.4

Sekarang lakukan restart service dan jalankan kembali service python kalian.

]]>
http://blog.mhafid.com/solve-problem-typeerror-sequence-index-must-be-integer-not-slice/feed/ 0
Cara Membuka Port di CentOS 7 dengan Firewalld http://blog.mhafid.com/cara-membuka-port-di-centos-7-dengan-firewalld/?utm_source=rss&utm_medium=rss&utm_campaign=cara-membuka-port-di-centos-7-dengan-firewalld http://blog.mhafid.com/cara-membuka-port-di-centos-7-dengan-firewalld/#respond Sun, 26 Jan 2020 04:54:21 +0000 http://blog.mhafid.com/?p=1724 CentOs salah satu OS yang sangat memperhatikan sistem keamanan, maka kerap kali centOs sangat banyak diminati untuk keperluan server. Disini saya terbiasa melakukan development dan production untuk aplikasi yang saya ciptakan untuk di install di server centOs. Salah satunya adalah pengaturan akses port. Bisa jadi apabila kalian membuat sebuah protokol misalkan dengan port 8080 atau port 8000 atau port lainnya, maka tidak langsung bisa diakses dikarenakan harus di berikan izin oleh firewalld. Caranya adalah :

firewall-cmd –permanent –add-port=100/tcp

Anda bisa rubah untuk “100” menjadi port yang ingin anda izinkan dibukan, setelah itu akan muncul pesan success.

Lakukan refresh Firewalld nya dengan perintah

firewall-cmd –reload

Pengaturan seperti ini akan bersifat permanent, dan apabila ingin melihat daftar list port yang sudah dibukakan oleh Firewalld adalah dengan cara dibawah ini :

firewall-cmd –list-ports

Hasilnya adalah “10000/tcp 5432/tcp 19999/tcp 3389/tcp 8000/tcp 8081/tcp”

Semoga bermanfaat

]]>
http://blog.mhafid.com/cara-membuka-port-di-centos-7-dengan-firewalld/feed/ 0
Not Found 404 Media Files Django http://blog.mhafid.com/not-found-404-media-files-django/?utm_source=rss&utm_medium=rss&utm_campaign=not-found-404-media-files-django http://blog.mhafid.com/not-found-404-media-files-django/#respond Sat, 04 Jan 2020 08:32:14 +0000 http://blog.mhafid.com/?p=1670 Apabila kalian sudah terbiasa bercoding dengan menggunakan Django Framework terutama untuk bermain dengan jquery atau file javascript embed. Pernah kalian mengalami file not found ketika mengInclude kan file Javascript ?

Pertama yang harus kalian lakukan adalah melakukan setting terhadap media penyimpanan file extended, di dalam file settings.py

SITE_ROOT = os.path.realpath(os.path.dirname(file))

BASE_DIR = os.path.dirname(os.path.dirname(__file__))


MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/')


MEDIA_URL = '/media/'

SITE_ROOT = os.path.realpath(os.path.dirname(file))

MEDIA_ROOT = os.path.join(BASE_DIR, ‘media’).replace(‘\’, ‘/’)

Setelah itu buka file urls.py kalian dan tambahkan

from django.conf import settings

from django.conf.urls.static import static



urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Selamat mencoba

]]>
http://blog.mhafid.com/not-found-404-media-files-django/feed/ 0
Django Math Templates http://blog.mhafid.com/django-math-templates/?utm_source=rss&utm_medium=rss&utm_campaign=django-math-templates http://blog.mhafid.com/django-math-templates/#respond Tue, 24 Dec 2019 23:45:23 +0000 http://blog.mhafid.com/?p=1665 Hallo pecinta coding, pesan saya adalah jangan pernah menyerah apabila kalian mengalami error mode atau kesulitan dalam bercoding. Konsistenlah dalam menyelesaikan suatu permasalahan karena dengan adanya permasalahan pikiran kita akan dibawa untuk berfikir dan menggali lebih dalam.

Disini saya menemukan kasus, bagaimana fungsi aritmatika seperti perkalian, pengurangan, pembagian dll bisa di eksekusi didalam html tentunya dengan menggunakan python, dalam hal ini saya menggunakan framework Django.

Pertama kalian harus menginstall library package dan memasangnya didalam core django kalian.

Silahkan kunjungi : https://pypi.org/project/django-template-maths/

Bagaimana cara pemakainnya ? sudah dijelaskan didalam tutorial diatas. akan tetapi bagaimana jika ingin menggunakan beberapa fungsi artimatika ? sedangkan di dalam contoh hanya menggunakan 1 jenis fungsi aritmatika.

Seperti punya saya dibawah ini :

50000|mul:10|div:100

Artinya ? 50.000 di kalikan 10 dan hasilnya dibagi 100

Bagaimana mudah bukan ?

]]>
http://blog.mhafid.com/django-math-templates/feed/ 0
Beego PostgreSQL API http://blog.mhafid.com/beego-postgresql-api/?utm_source=rss&utm_medium=rss&utm_campaign=beego-postgresql-api http://blog.mhafid.com/beego-postgresql-api/#respond Mon, 09 Dec 2019 03:17:18 +0000 http://blog.mhafid.com/?p=1661 Tahun lalu saya menggunakan Beego untuk urusan API, hanya saja dengan menggunakan data dari MySQL dan PostgreSQL. Hanya saja baru sekarang saya sempatkan untuk menuliskan command line BeeGo menggunakan koneksi PostgreSQL.

Untuk tata cara menginstall bisa baca disini : http://blog.mhafid.com/install-beego-framework/

Untuk membuat API dengan MySQL bisa baca disini : http://blog.mhafid.com/beego-test-connection-mysq/

Sebelum mengikuti tutorial ini, ada beberapa hal yang harus sudah ada :

  • Golang
  • Database PostgreSQL (Databasenya sudah ada)
  • Install Beego

bee api dapenbri_ftpbri -driver=postgres -conn=postgres://postgres:postgres@127.0.0.1:5432/dapenbri_ftpbri?sslmode=disable

]]>
http://blog.mhafid.com/beego-postgresql-api/feed/ 0
Cara Mudah Installasi Pyhton di Windows http://blog.mhafid.com/cara-mudah-installasi-pyhton-di-windows/?utm_source=rss&utm_medium=rss&utm_campaign=cara-mudah-installasi-pyhton-di-windows http://blog.mhafid.com/cara-mudah-installasi-pyhton-di-windows/#respond Mon, 04 Nov 2019 01:06:37 +0000 http://blog.mhafid.com/?p=1645 Halo sobat, disini saya mau berbagi saja mungkin cara ini sudah banyak diketahui banyak orang. Saya sering kali melakukan aktifitas coding di OS Linux dimana python sudah tersedia dengan versi 2.7. Bagaimana dengan di Windows ? pada tutorial ini saya menggunakan Windows 10.

Download Package Python di alamat https://www.python.org/

Setelah selesai didownload, install file hasil downloadnya yang berekstensi *.exe

Setelah itu kalian buka Command Prompt dengan mengetikan “CMD” di startmenu, ketikan “python” seperti pada gambar dibawah ini :

]]>
http://blog.mhafid.com/cara-mudah-installasi-pyhton-di-windows/feed/ 0
Cara Mudah Mengatasi PhpPgadmin Login Failed http://blog.mhafid.com/cara-mudah-mengatasi-phppgadmin-login-failed/?utm_source=rss&utm_medium=rss&utm_campaign=cara-mudah-mengatasi-phppgadmin-login-failed http://blog.mhafid.com/cara-mudah-mengatasi-phppgadmin-login-failed/#respond Thu, 31 Oct 2019 05:08:45 +0000 http://blog.mhafid.com/?p=1642 Siapa disini yang biasa menggunakan postgresql sebagai database untuk development ? dan menggunakan PhpPgadmin sebagai client based nya ? Disini saya akan menjelaskan solve problem dari permasalahan yang sering kali dihadapi oleh kebanyakan orang setelah melakukan installasi PhpPgAdmin.

Anda sudah menginstall postgresql dan sudah sukses ? jika sudah sekarang apakah kalian mempunya user role untuk masuk ke postgresqlnya ? Jika sudah, yuk installasi client based nya dengan menggunakan PhpPgadmin.

Saya tidak akan menjelaskan cara installasi PhpPgadmin, tetapi setelah kalian login PhpPgadmin dengan username dan passwordnya terjadi kegagalan / Login Failed.

Caranya adalah kalian akan bermain di terminal dan ketikan perintah dibawah ini :

sudo su postgres -c psql template1

ALTER USER postgres WITH PASSWORD ‘passwordkalianbebas’;

nanti apabila berhasil akan keluar hasil bahwa ALTER ROLE

Sekarang kalian coba kembali masuk ke dalam PhpPgadmin melalui username postgres dan passwordkalianbebas.

]]>
http://blog.mhafid.com/cara-mudah-mengatasi-phppgadmin-login-failed/feed/ 0
MySQL Test di Terminal MacOS http://blog.mhafid.com/mysql-test-di-terminal-macos/?utm_source=rss&utm_medium=rss&utm_campaign=mysql-test-di-terminal-macos http://blog.mhafid.com/mysql-test-di-terminal-macos/#respond Wed, 16 Oct 2019 04:19:12 +0000 http://blog.mhafid.com/?p=1636 Halo teman-teman, disini saya ingin berbagi mengenai penggunaan mysql di MacOS. Apabila kalian terbiasa menggunakan Linux sudah tidak asing lagi dengan MacOS.

Bagiamana cara mengakses MySQL di MacOS tengan terminal ?

Cara yang biasa dilakukan di Linux adalah dengan

sudo mysql -u root -p

Jika kalian menggunakan MacOS

/usr/local/mysql/bin/mysql -u root -p

Maka nanti Kilian akan dimintai password.!

Semoga berhasil.

]]>
http://blog.mhafid.com/mysql-test-di-terminal-macos/feed/ 0
Modify Button Form Django Admin http://blog.mhafid.com/modify-button-form-django-admin/?utm_source=rss&utm_medium=rss&utm_campaign=modify-button-form-django-admin http://blog.mhafid.com/modify-button-form-django-admin/#respond Sun, 06 Oct 2019 01:57:19 +0000 http://blog.mhafid.com/?p=1632 Hello Sobat Coding, disini saya ingin berbagi tips bagi kalian yang suka membuat aplikasi dengan menggunakan Django Framework.

Dalam kasus ini saya menginginkan sebuah form untuk button aksinya modify sesuai dengan keperluan saya. Secara default button form pada django terdiri dari Delete, Save and New, Save and Continue, Save. Dimana kali ini saya hanya membutuhkan Save saja tanpa button lainnya.

Caranya adalah masuk kedalam view admin.py kalian, pastikan coding dibawah ini di letakan pada Class Objek kalian.

Class Contoh():

def change_view(self, request, object_id, form_url=”, extra_context=None):
extra_context = extra_context or {}
extra_context[‘show_save_and_add_another’] = False
extra_context[‘show_save_and_continue’] = False
extra_context[‘show_save’] = True
extra_context[‘show_delete’] = False

return super(Contoh, self).change_view(request, object_id,
form_url, extra_context=extra_context)

Yang saya berikan cetak tebal adalah button yang kalian bisa Hide Show sesuai dengan kebutuhan kalian.

Semoga berhasil

]]>
http://blog.mhafid.com/modify-button-form-django-admin/feed/ 0