golang 编辑以前设置的标志。MySQL 错误 1045

我在用户输入后设置标志以用作 MySQL 数据库的连接参数时遇到问题。下面是我的代码片段:


func init() {


    flag.StringVar(&flagUser, "user", "root", "User")


    reader := bufio.NewReader(os.Stdin)

    fmt.Print("Enter username: ")

    inputUser, _ := reader.ReadString('\n')


    f := flag.Lookup("user")

        if inputUser != f.Value.String() {

            flag.StringVar(&flagUser, "user", inputUser, "User")

        }


    flag.Parse()

}

即使我只调用 flag.Parse 一次并且用户输入也是“root”,我也会得到 1045(“用户 root@localhost 的 mysql 访问被拒绝”),如果我不编辑标志,则不会发生这种情况。我真的很感激关于这个问题的任何建议。


哆啦的时光机
浏览 227回答 1
1回答

料青山看我应如是

在做了一些更多的研究之后,我发现没有必要通过用户输入编辑指定连接参数的标志,因为在运行 go 应用程序时可以传递这样的 mysql 参数(即:-user、-p 等) .
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go