У меня проблема с получением данных с удаленного сервера.Я использую Sequelize ORM для связи с удаленными БД, которые имеют опцию --read-only.Я не хочу создавать, добавлять или удалять любые БД или таблицы на этом сервере, мне просто нужно получить данные с этого сервера.Вот почему я добавил опции при подключении к БД с помощью sequelize.sync ()
const express = require('express');
const ISOMessageModel = require('../../models/v1/incognito/iSOMessagesModel');
const router = express.Router();
var Sequelize = require('sequelize');
const testCheck = (req, res, next) => {
console.log('In incognito controller');
const sequelize = new Sequelize('db', 'user', 'password', {
host: 'host',
port: 3306,
dialect: 'mysql',
pool: {
max: 5,
min: 0,
acquire: 30000,
idle: 10000
},
});
sequelize
.authenticate()
.then(() => {
console.log('Connection has been established successfully.');
})
.catch(err => {
console.error('Unable to connect to the database:', err);
});
const objectModel = sequelize.define('ISOMessages',ISOMessageModel);
Хост правильный, его просто отредактировали, например.Модель выглядит следующим образом:
var Sequelize = require('sequelize');
const ISOMessageModel = {
id: {
type: Sequelize.STRING,
unique: true,
primaryKey: true,
allowNull: false
},
message: {
type: Sequelize.TEXT,
allowNull: false
},
status: {
type: Sequelize.ENUM,
values: ['SUCCESS', 'FAILED']
},
provider: {
type: Sequelize.ENUM,
values: ['UFC', 'GC']
},
singularResponse: {
type: Sequelize.TEXT
},
userId: {
type: Sequelize.INTEGER
},
cardId: {
type: Sequelize.STRING
},
amount: {
type: Sequelize.INTEGER
},
commission: {
type: Sequelize.INTEGER
},
location: {
type: Sequelize.TEXT
}
}
module.exports = ISOMessageModel;
Я синхронизирую Sequelize с параметрами:
{force: false, alter: false}
sequelize.sync({force: false, alter : false }).then(() => {
console.log('Do query from objectModel');
}).catch(function(err) {
console.log(err, "Something went wrong with the Database Update!")
});
ошибка: ошибка: сервер MariaDB работает с параметром --read-only, поэтому он не может выполнить этот оператор.Как я выяснил после некоторых исследований {force: false, alter: false} во время синхронизации не должен записывать или обновлять данные, поэтому не могу понять, почему я получаю эту ошибку.
Спасибо.