Восстановите MySQL sql дамп nodejs без mysqldump - PullRequest
0 голосов
/ 24 февраля 2020

Имеется sql файл. Он должен быть использован для тестовых случаев. Мне нужно восстановить это. Я хотел бы восстановить его без сторонних утилит. Я сделал несколько попыток. Я получаю новые ограничения, которые я не могу решить легко. Более простое решение должно существовать. Другие решения, которые я видел в сетях, не удовлетворяют требованиям. Я не могу восстановить функции из-за точек с запятой в sql тексте.

async function rawSQLFromFile(connection, path) {
  const text = fs.readFileSync(path).toString()
  const queries = text.split(';')
  for(const query of queries) {
    await runQuery(connection, query)
  }
}

Я использую mysql библиотека Но она не имеет функциональности.

1 Ответ

0 голосов
/ 24 февраля 2020

Не проверено, хотя это должно работать с вашей библиотекой:

const connection = mysql.createConnection({
  // described at https://www.npmjs.com/package/mysql#multiple-statement-queries
  multipleStatements: true,
  // your connection options follow here
});
connection.query(yourSqlFileContent, (err) => { console.log(err ? err : 'restored!') });
...