feat: support connecting to mysql/mariadb without secure connection support

This commit is contained in:
tianzhou
2023-12-19 12:24:25 +08:00
parent 10a1e8acc9
commit 2c6ec0ce78

View File

@ -25,7 +25,22 @@ const getMySQLConnection = async (connection: Connection): Promise<mysql.Connect
rejectUnauthorized: false,
};
}
const conn = await mysql.createConnection(connectionOptions);
let conn;
if (connection.ssl) {
conn = await mysql.createConnection(connectionOptions);
} else {
try {
conn = await mysql.createConnection(connectionOptions);
} catch (error) {
if (error instanceof Error && error.message.includes("Server does not support secure")) {
connectionOptions.ssl = undefined;
conn = await mysql.createConnection(connectionOptions);
} else {
throw error;
}
}
}
return conn;
};