Я пытаюсь создать резервную копию mysql своего приложения с помощью mysqldump. Детский процесс spawn кажется неспособным написать пароль. Это все, что я пробовал до сих пор.
var spawn = require('child_process').spawn("mysqldump",
["-u", "Username",
"DBName",
">", "./Backup/DB_Backup.sql",
"-p", "Password"]);
spawn.stdin.write("P");
spawn.stdin.write("a");
spawn.stdin.write("s");
spawn.stdin.write("s");
spawn.stdin.write("w");
spawn.stdin.write("o");
spawn.stdin.write("r");
spawn.stdin.write("d");
spawn.stdin.write("\n");
spawn.stdin.write("Password\n");
spawn.stdout.on('data', (data) => {
console.log('stdout: ${data}');
spawn.stdin.write("Password\n");
});
spawn.stderr.on('data', (data) => {
console.log('stderr: ${data}');
});
spawn.on('close', (code) => {
console.log('child process exited with code ${code}');
});
Вопрос может показаться дубликат, но ни один из ответов не помог мне.
Заменить "-p", "Password"
на "-pPassword"
Пример:
const { spawn } = require('child_process');
const mysqldump = spawn('mysqldump', [
'-u', db.user,
'-p' + db.password,
db.database
]);