Lewati ke konten utama

Konfigurasi Database

Flowra menggunakan Knex di bawahnya. Konfigurasi database berada di app/Config/Database.js dan digunakan oleh DatabaseManager.

Konfigurasi default​

app/Config/Database.js
module.exports = {
default: 'default',
connections: {
default: {
client: 'mysql2',
connection: {
host: process.env.DB_MYSQL_HOST_PRIMARY || process.env.DB_MYSQL_HOST || '127.0.0.1',
user: process.env.DB_DEFAULT_USERNAME || 'root',
password: process.env.DB_DEFAULT_PASSWORD || '',
database: process.env.DB_DEFAULT_DATABASE || 'flowra',
port: parseInt(process.env.DB_MYSQL_PORT_PRIMARY || process.env.DB_MYSQL_PORT, 10),
},
},
defaultRead: {
client: 'mysql2',
connection: {
host: process.env.DB_MYSQL_HOST_READONLY || process.env.DB_MYSQL_HOST || '127.0.0.1',
user: process.env.DB_DEFAULT_USERNAME || 'root',
password: process.env.DB_DEFAULT_PASSWORD || '',
database: process.env.DB_DEFAULT_DATABASE || 'flowra',
},
},
},
};

Alias koneksi​

  • default adalah koneksi utama.
  • defaultRead digunakan untuk operasi read jika tersedia.

Services dan models bisa memilih alias koneksi lewat base class Service.

Konfigurasi CLI​

orm.cli.config.js membaca konfigurasi database dan memetakannya ke perintah Knex CLI. Anda bisa override nama koneksi dengan environment variable seperti KNEX_CONNECTION.

Ganti database​

Untuk memakai PostgreSQL atau database lain, ubah nilai client dan connection di app/Config/Database.js. Bagian lain tetap sama.

Satu sumber kebenaran

Flowra membaca dari app/Config/Database.js saat runtime dan dari orm.cli.config.js untuk migrasi CLI, jadi Anda hanya menjaga satu sumber kebenaran.