Documentation / @tenancy-node/db / DatabasePluginOptions
Interface: DatabasePluginOptions
Defined in: db/src/database-plugin.ts:61
Properties
admin?
optionaladmin?:Credentials
Defined in: db/src/database-plugin.ts:87
Usuario con permiso de CREATE DATABASE. Por defecto, el de la base central.
central
central:
ConnectionOptions| {url:string; } &object
Defined in: db/src/database-plugin.ts:65
Base central: URL (mysql://user:pass@host:3306/miapp) u opciones sueltas.
Type Declaration
pool?
optionalpool?:object
pool.max?
optionalmax?:number
cleanupOnFailure?
optionalcleanupOnFailure?:boolean
Defined in: db/src/database-plugin.ts:92
Borrar la base creada si falla el aprovisionamiento. Por defecto false.
credentials?
optionalcredentials?:CredentialsMode
Defined in: db/src/database-plugin.ts:83
shared (por defecto): un usuario para todos. per-tenant: usuario y contraseña propios.
defaultServerId?
optionaldefaultServerId?:string
Defined in: db/src/database-plugin.ts:106
Id del servidor de la base central. Por defecto default.
driver
driver:
DatabaseDriver
Defined in: db/src/database-plugin.ts:63
Motor: mysql() de @tenancy-node/db-mysql o postgres() de @tenancy-node/db-postgres.
encryptionKey?
optionalencryptionKey?:string
Defined in: db/src/database-plugin.ts:69
Llave AES-256-GCM (TENANCY_KEY). Obligatoria con credentials: 'per-tenant'.
isolation?
optionalisolation?:"schema"|"database"
Defined in: db/src/database-plugin.ts:79
database (por defecto): una base por tenant. schema: un schema por tenant dentro de una base compartida (PostgreSQL), para hostings que no permiten CREATE DATABASE.
lockTimeoutMs?
optionallockTimeoutMs?:number
Defined in: db/src/database-plugin.ts:104
Espera máxima del candado por tenant. Por defecto 10 000 ms.
migrations?
optionalmigrations?:object
Defined in: db/src/database-plugin.ts:93
central?
optionalcentral?:MigrationsInput
Tus migraciones de la base central (tabla tenancy_central_migrations).
tenant?
optionaltenant?:MigrationsInput
Migraciones de cada tenant: carpeta (.sql o módulos), objeto o un TenancyMigrator.
pipeline?
optionalpipeline?: readonlyPipelineStep[]
Defined in: db/src/database-plugin.ts:102
Pasos del aprovisionamiento. Por defecto ['createDatabase', 'createUser', 'migrate', 'seed'].
placement?
optionalplacement?:PlacementStrategy
Defined in: db/src/database-plugin.ts:89
Dónde crear cada tenant nuevo. Por defecto least-tenants.
pool?
optionalpool?:object
Defined in: db/src/database-plugin.ts:90
idleTimeoutMs?
optionalidleTimeoutMs?:number
max?
optionalmax?:number
maxOpenPools?
optionalmaxOpenPools?:number
prefix?
optionalprefix?:string
Defined in: db/src/database-plugin.ts:73
tenant_ + id + suffix = nombre de la base del tenant.
previousKeys?
optionalpreviousKeys?: readonlystring[]
Defined in: db/src/database-plugin.ts:71
Llaves anteriores, para leer valores cifrados antes de una rotación.
schemaDatabase?
optionalschemaDatabase?:string
Defined in: db/src/database-plugin.ts:81
Modo schema: base donde se crean los schemas. Por defecto, la base central.
seed?
optionalseed?: (db,tenant) =>Promise<void>
Defined in: db/src/database-plugin.ts:100
Datos iniciales de cada tenant.
Parameters
db
tenant
Returns
Promise<void>
ssl?
optionalssl?:unknown
Defined in: db/src/database-plugin.ts:107
suffix?
optionalsuffix?:string
Defined in: db/src/database-plugin.ts:74
tablePrefix?
optionaltablePrefix?:string
Defined in: db/src/database-plugin.ts:67
Prefijo de las tablas del paquete. Por defecto tenancy_.
tenantCredentials?
optionaltenantCredentials?:Credentials
Defined in: db/src/database-plugin.ts:85
Usuario compartido de los tenants. Por defecto, el administrador.