mysql - 如何使用exec.Command登录mysql

标签 mysql go command exec

我想用GoLang的exec.Command登录MySql,确定可以登录成功,但是进不去MySql脚本界面。

程序没有输出任何错误,完成后退出,这不是我想要的,我想进入mysql脚本界面。

代码是这样的:

    host := "localhost"
    user := "root"
    password := "root"

    cmd := exec.Command("mysql","-h"+host,"-u"+user,"-p"+password)
    cmd.Output()

我想在程序运行后看到这个:

键入“帮助;”或 '\h' 寻求帮助。输入'\c'清除当前输入语句。

数据库>

然后我就可以继续写mysql脚本了。 谢谢!

最佳答案

经过我的尝试,答案是这样的:

cmd := exec.Command("mysql","-h"+host,"-u"+user,"-p"+password,"-P"+port)
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
err := cmd.Run()

只需要将os.Stdin传给cmd.Stdin,就可以进入mysql脚本界面。

关于mysql - 如何使用exec.Command登录mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56107734/

相关文章:

go - 使用路径式 amazon aws sdk go

go - 从列表中删除客户端会终止其他连接

c++ - 'char' 之前的预期不合格 ID

MySQL AVG DATEDIFF GROUP BY(如果日期时间为空则 = NOW())

PHP/MySQL调试+优化

mysql - 仅在连接两个表后如何从没有值的表中获取结果

c# - 命令绑定(bind)到中继命令不起作用

javascript - 使用从 PHP 生成的 HTML 调用的函数 AJAX 更新 MYSQL 数据库

amazon-web-services - Auth0 不适用于 Docker 容器 + Elastic beanstalk

emacs - 定义一个调用另一个emacs命令的emacs命令(保留交互式内容)