Node.js 如何使用exec函数处理mysql命令行密码提示
我不知道id如何在exec函数中传递密码变量。 我尝试运行它,但没有出现提示Node.js 如何使用exec函数处理mysql命令行密码提示,node.js,Node.js,我不知道id如何在exec函数中传递密码变量。 我尝试运行它,但没有出现提示 const {user,password,database} = require('./config.js'); const { exec } = require('child_process'); const comm = `mysql -u ${user} -p ${database} < ${QUERY_PATH} ` exec(comm) const{user,password,database}=r
const {user,password,database} = require('./config.js');
const { exec } = require('child_process');
const comm = `mysql -u ${user} -p ${database} < ${QUERY_PATH} `
exec(comm)
const{user,password,database}=require('./config.js');
const{exec}=require('child_process');
const comm=`mysql-u${user}-p${database}<${QUERY\u PATH}`
行政主任(通讯)
我想唯一缺少的部分是使用回调,正如中的节点所建议的那样。替换:
exec(comm)
作者:
这样,您需要手动键入密码。如果您不想手动键入密码(不推荐使用,mySQL使用第二种方法警告安全问题),则代码为:
const comm = `mysql -u${user} -p${password} ${database} < ${QUERY_PATH}`
第三个正是我需要的。谢谢你好@Jgonzalez25。如果这个答案已经解决了你的问题,请考虑通过点击复选标记来接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。谢谢
const comm = `mysql -u${user} -p${password} ${database} < ${QUERY_PATH}`
exec(comm, (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.error(`stderr: ${stderr}`);
});