+1来自@MatteoRagni的回答,显示了如何在Golang中执行stdin重定向。
但这是我使用的一个简单替代方法:
cmd := exec.Command("/usr/local/mysql/bin/mysql", "-h127.0.0.1", "-P3333", "-uusr", "-pPassxxx", "-Ddtb_test", "-e", "source /Users/XXX/documents/test/scripts/olds/script_XXX.sql")
您不必使mysql客户端使用stdin重定向读取脚本。相反,您可以使mysql客户端执行特定的命令
source <scriptname>。
PS:我也不会在代码中输入主机,端口,用户和密码。这意味着,只要更改这些连接参数,就必须重新编译程序。同样,在命令行上以纯文本格式使用密码也不安全。相反,我将所有连接参数放入默认文件中并使用
mysql--defaults-file=FILENAME。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)