mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-18 04:26:01 +00:00
readonly support for mysql
This commit is contained in:
@@ -28,7 +28,7 @@ const drivers = driverBases.map(driverBase => ({
|
||||
...driverBase,
|
||||
analyserClass: Analyser,
|
||||
|
||||
async connect({ server, port, user, password, database, ssl }) {
|
||||
async connect({ server, port, user, password, database, ssl, isReadOnly }) {
|
||||
const connection = mysql2.createConnection({
|
||||
host: server,
|
||||
port,
|
||||
@@ -44,6 +44,9 @@ const drivers = driverBases.map(driverBase => ({
|
||||
// multipleStatements: true,
|
||||
});
|
||||
connection._database_name = database;
|
||||
if (isReadOnly) {
|
||||
await this.query(connection, 'SET SESSION TRANSACTION READ ONLY');
|
||||
}
|
||||
return connection;
|
||||
},
|
||||
async close(pool) {
|
||||
|
||||
@@ -41,7 +41,7 @@ const dialect = {
|
||||
const mysqlDriverBase = {
|
||||
...driverBase,
|
||||
showConnectionField: (field, values) =>
|
||||
['server', 'port', 'user', 'password', 'defaultDatabase', 'singleDatabase'].includes(field),
|
||||
['server', 'port', 'user', 'password', 'defaultDatabase', 'singleDatabase', 'isReadOnly'].includes(field),
|
||||
dumperClass: Dumper,
|
||||
dialect,
|
||||
defaultPort: 3306,
|
||||
|
||||
Reference in New Issue
Block a user