Cara Menghubungkan PrismaDB Dengan MySQL Hostinger
Ketika membuat aplikasi di ReactJS, kita membutuhkan koneksi database untuk memasukkan data data yang diinginkan. Termasuk tabel data user, product dan category yang penting untuk bisnis. Database yang biasa digunakan biasanya adalah MySQL. Terkadang tech stack seperti LAMP (Linux, Apache, MySQL, PHP) menjadikan kita sebagai programmer lumayan terisolori jikalau ingin menghubungkan aplikasi yang menggunakan bahasa pemograman selain PHP seperti Javascipt, Golang, dsb ke MySQL. Maka dari itu terkadang kita membutuhkan ORM khusus seperti Sequalize atau yang akan dibahas di postingan ini PrismaDB agar aplikasi kita bisa berkomunikasi dengan database
Apa Itu PrismaDB?
PrismaDB logo |
PrismaDB adalah ORM (Object Relational Mapping) untuk Typescript dan NodeJS ke semua jenis database apapun. Bisa MySQL, PostgreeSQL, MongoDB hingga CockroachDB
Sedangkan, MySQLnya sendiri hanya disediakan pada server lokal. Sehingga, untuk menghubungkannya secara public kita membutuhkan hosting atau penyedia layanan yang khusus memanage database kita, contohnya sendiri adalah PlanetScale
Apa Itu PlanetScale?
PlanetScale logo |
PlanetScale adalah platform khusus untuk database yang terdistribusi secara serverless. Kalo kita ingin mendeploy aplikasi kita secara public. Kita harus menginstallnya dulu di dalam VPS (beda kasus lagi seumpma kita menyewa hosting), dan mengekspos port dan urlnya. Dengan Planetscale kita bisa menginstal segala jenis database dengan mudah dan mengirimkan driver url-nya di dalam env variabel aplikasi kita
Namun ada kelemahannya, PlanetScale memberikan harga tertentu jikalau kita ingin menambah jumlah database. Tentu ini sangat menyebalkan bukan
Apalagi untuk kasus saya sendiri, saya sudah menyewa hosting dari Hostinger. Rasanya sayang sekali seumpama saya tidak memanfaatkan database bawaan dari Hostinger untuk saya gunakan ke dalam project saya
Alih alih saya menyewa kedua layanan database ini, kenapa tidak saya gunakan saja datbase bawaan Hostinger meskipun saya harus ngulik lagi nih cara menghubungkannya secara remote menggunakan driver URL
Langkah Langkah
Pastikan kalian sudah memiliki hosting dari Hostinger. Perlu saya akui biaya hosting dari Hostinger begitu mahal, kalo ditanya kenapa saya memilihnya karena kena racun iklan dari Pak Sandhika Galih wkwkw
Buat Database dengan cara masuk hPanel, di sidebar pilih Database, Management lalu masukkan nama database, username, dan password
Setelah berhasil dibuat, kalian bisa melihat akan ada list berisi database apa saja yang sudah berhasil. Nantinya kita akan memilih database apa yang akan kita hubungkan ke dalam aplikasi kita
Di sidebar pilih Database lalu Remote MySQL
Disana tertera IP Hostname yang akan kita masukkan ke dalam url driver kita, termasuk mana saja yang berhak mengakses database yang kita ijinkan.
Ceklis Any Host, pilih database yang kita inginkan. Lalu klik Create
Setelah itu kita buka aplikasi React kita dan tambahkan teks berikut
DATABASE_URL="mysql://username_database:password_database@IP_hostname:3306/nama_database"
template url ini bisa kalian jumpai di dokumentasinya langsung
Lalu masukkan perintah npx prisma generate
dan npx prisma db push
Maka jika berhasil, akan menghasilkan output seperti ini
Comments
Post a Comment