2015-01-29 1 views
0

사용자 입력 후 플래그를 설정하여 MySQL 데이터베이스 연결 매개 변수로 사용하는 데 문제가 있습니다.골란 편집 이전에 설정된 플래그. MySQL 오류 1045

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를 호출하고 사용자 입력은 또한 "루트"하더라도, 나는 1045 수 ("사용자 루트 @ localhost를 거부 MySQL의 액세스") : 다음은 내 코드의 조각이다 , 플래그를 편집하지 않으면 발생하지 않습니다. 나는이 문제에 대한 제안을 정말 고맙게 생각한다.

다시 한번 감사드립니다.

답변

0

더 많은 연구를 한 후, 사용자 입력을 통해 연결 매개 변수를 지정하는 플래그를 편집 할 필요가 없다는 것을 알았습니다. 이동 응용 프로그램 (예 : -user, --user)을 실행할 때 이러한 mysql 매개 변수를 전달할 수 있기 때문에, p 등).