Как предоставить пароль для Spawn Child_Process в Node.js

0

Я пытаюсь создать резервную копию 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}');
});

Вопрос может показаться дубликат, но ни один из ответов не помог мне.

Теги:
child-process
spawn

1 ответ

0

Заменить "-p", "Password" на "-pPassword"

Пример:

const { spawn } = require('child_process');

const mysqldump = spawn('mysqldump', [
    '-u', db.user,
    '-p' + db.password,
    db.database
]);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню