ddstats-server/libs/database/init.js

33 lines
871 B
JavaScript

import Database from 'better-sqlite3'
import initLog from '../utils/log.js'
/* Export DB for use in other files */
export let sqlite = undefined
export let skinDB = undefined
const log = initLog("Database")
/**
* This initalizes the ddnet.sqlite and skindata.sqlite DB...
* @module db/dbInit
*/
export function dbInit() {
log("Starting up databases...")
/* load in db using better-sqlite3 */
sqlite = new Database(process.env.DDNET_SQLITE_PATH ?? 'data/ddnet.sqlite', { verbose: console.log });
skinDB = new Database(process.env.DDNSS_SQLITE_PATH ?? 'data/skindata.sqlite', { });
/* WAL mode */
sqlite.pragma('journal_mode = WAL');
/* Unsafe mode */
sqlite.unsafeMode()
/* Load external extensions */
sqlite.loadExtension('./math-func.so')
log("Loaded in 'ddnet.sqlite'!")
log("Loaded in 'skindata.sqlite'!")
}