WSO2 APIM menggunakan Mysql sebagai database
agus merdeko

agus merdeko @agusmerdeko

About: Lebih dari 15 tahun menjadi Developer. Sekarang fokus dalam API Management dan Integrasi mengunakan produk WSO2

Location:
Indonesia
Joined:
Feb 11, 2025

WSO2 APIM menggunakan Mysql sebagai database

Publish Date: Feb 23
0 0

Secara default WSO2 API Manager menggunakan H2 sebagai databasenya, yang berlokasi di /repository/database. Database H2 ini tidak disarankan digunakan untuk production, sebaiknya gunakan RDBMS seperti Oracle, PostgreSQL, MySQL, MS SQL, dll.

Di artikel sebelumnya kita masih menggunakan H2 sebagai databasenya, oleh karena itu sekarang kita akan mencoba mengganti databasenya menggunakan Mysql.

Persiapan Awal

  • Pertama Mysql telah terinstall, dalam tutorial ini yang digunakan Mysql bawaan Ubuntu 24.04 yaitu versi 8.0.41
  • Download MySQL Java Connector di MySQL Connector/J (Archived Versions), pilih Product Version: 8.0.* dengan Operating System: Platform Independent, download file zip atau tar di daftar file yang tersedia.

Download mysql java connector

Setting Database

  • Login ke dalam mysql dengan perintah:
sudo mysql
Enter fullscreen mode Exit fullscreen mode
  • Buat user untuk mengakses database dari wso2 apim, disini kita buat user apimuser dengan password apimpass, silahkan ubah sesuai kebutuhan.
create user 'apimuser'@'localhost' identified by 'apimpass';
Enter fullscreen mode Exit fullscreen mode
  • Buat database dengan nama apim_db dan shared_db.
CREATE DATABASE apim_db character set latin1;
CREATE DATABASE shared_db character set latin1;
Enter fullscreen mode Exit fullscreen mode
  • Selanjutnya kita akan beri akses user yang sebelumnya dibuat agar bisa mengakses database.
grant all privileges on apim_db.* to 'apimuser'@'localhost';
grant all privileges on shared_db.* to 'apimuser'@'localhost';
Enter fullscreen mode Exit fullscreen mode
  • Reload hak akses dengan perintah:
FLUSH PRIVILEGES;
Enter fullscreen mode Exit fullscreen mode
  • Keluar dari mysql.
quit;
Enter fullscreen mode Exit fullscreen mode
  • Saatnya untuk mengimport tabel yang diperlukan kedalam database. Pertama kita akan mencoba mengimport tabel di apim_db.
sudo mysql apim_db < <APIM_HOME>/dbscripts/apimgt/mysql.sql
Enter fullscreen mode Exit fullscreen mode
  • Selanjutnya kita import tabel di shared_db.
sudo mysql shared_db < <APIM_HOME>/dbscripts/mysql.sql
Enter fullscreen mode Exit fullscreen mode

Merubah Database WSO2 API Manager

  • Salin file MySQL Java Connector yang sebelumnya telah didownload (mysql-connector-j-8.0.*.jar) ke folder <APIM_HOME>/repository/components/lib/
  • Buka file konfigurasi wso2 api manager dengan perintah:
vim <APIM_HOME>/repository/conf/deployment.toml
Enter fullscreen mode Exit fullscreen mode
  • Disini kita tinggal rubah mysql url, database, dll, yang dibutuhkan untuk mengakses database. Pertama rubah bagian database apim_db.
[database.apim_db]
type = "mysql"
url = "jdbc:mysql://localhost:3306/apim_db?allowPublicKeyRetrieval=true&useSSL=false"
username = "apimuser"
password = "apimpass"
driver = "com.mysql.cj.jdbc.Driver"
Enter fullscreen mode Exit fullscreen mode
  • Selanjutnya kita rubah bagian database shared_db.
[database.shared_db]
type = "mysql"
url = "jdbc:mysql://localhost:3306/shared_db?allowPublicKeyRetrieval=true&useSSL=false"
username = "apimuser"
password = "apimpass"
driver = "com.mysql.cj.jdbc.Driver"
Enter fullscreen mode Exit fullscreen mode
  • Simpan file konfigurasi, dan restart WSO2 API Manager.

Selesai sudah untuk tutorial kali ini, jangan lupa kalau ada pertanyaan silahkan kirim komentar dibawah, sampai jumpa lagi di artikel selanjutnya.

Comments 0 total

    Add comment