diff --git a/db.js b/db.js index 5ae1d6e5..86e0b8e1 100644 --- a/db.js +++ b/db.js @@ -1973,6 +1973,8 @@ module.exports.CreateDB = function (parent, func) { if (props.host) { cmd += ' -h ' + props.host; } if (props.port) { cmd += ' -P ' + props.port; } + if (props.awsrds) { cmd += ' --single-transaction'; } + // SSL options different on mariadb/mysql var sslOptions = ''; if (obj.databaseType == 4) { diff --git a/meshcentral-config-schema.json b/meshcentral-config-schema.json index bd44e2d5..750754a2 100644 --- a/meshcentral-config-schema.json +++ b/meshcentral-config-schema.json @@ -22,6 +22,7 @@ "password": { "type": "string", "description": "MariaDB password" }, "connectionLimit": { "type": "number", "description": "MariaDB connection limit" }, "database": { "type": "string", "default": "meshcentral", "description": "Name of MariaDB database used" }, + "awsrds": { "type": "boolean", "default": false, "description": "Set true to resolve LOCK TABLE permissions on AWS RDS." }, "ssl": { "type": "object", "description": "SSL Options. Set to true (boolean) for default options.", @@ -43,6 +44,7 @@ "user": { "type": "string", "description": "MySQL username" }, "password": { "type": "string", "description": "MySQL password" }, "database": { "type": "string", "default": "meshcentral", "description": "Name of MySQL database used" }, + "awsrds": { "type": "boolean", "default": false, "description": "Set true to resolve LOCK TABLE permissions on AWS RDS." }, "ssl": { "type": "object", "description": "SSL Options. Set to true (boolean) for default options.",