@@ -26,40 +26,44 @@ func (this *DetectDBAction) RunPost(params struct{}) {
2626 var localPassword = ""
2727
2828 // 本地的3306端口是否可以连接
29- conn , err := net .DialTimeout ("tcp" , "127.0.0.1:3306" , 3 * time .Second )
30- if err == nil {
31- _ = conn .Close ()
32- localHost = "127.0.0.1"
33- localPort = "3306"
29+ for _ , tryingHost := range []string {"127.0.0.1" , "localhost" , "172.20.0.2" } {
30+ conn , dialErr := net .DialTimeout ("tcp" , tryingHost + ":3306" , 3 * time .Second )
31+ if dialErr == nil {
32+ _ = conn .Close ()
33+ localHost = tryingHost
34+ localPort = "3306"
3435
35- var username = "root"
36- var passwords = []string {"" , "123456" , "654321" , "Aa_123456" , "111111" }
36+ var username = "root"
37+ var passwords = []string {"" , "123456" , "654321" , "Aa_123456" , "111111" }
3738
38- // 使用 foolish-mysql 安装的MySQL
39- localGeneratedPasswordData , err := os .ReadFile ("/usr/local/mysql/generated-password.txt" )
40- if err == nil {
41- var localGeneratedPassword = strings .TrimSpace (string (localGeneratedPasswordData ))
42- if len (localGeneratedPassword ) > 0 {
43- passwords = append (passwords , localGeneratedPassword )
39+ // 使用 foolish-mysql 安装的MySQL
40+ localGeneratedPasswordData , err := os .ReadFile ("/usr/local/mysql/generated-password.txt" )
41+ if err == nil {
42+ var localGeneratedPassword = strings .TrimSpace (string (localGeneratedPasswordData ))
43+ if len (localGeneratedPassword ) > 0 {
44+ passwords = append (passwords , localGeneratedPassword )
45+ }
4446 }
45- }
4647
47- for _ , pass := range passwords {
48- db , err := dbs .NewInstanceFromConfig (& dbs.DBConfig {
49- Driver : "mysql" ,
50- Dsn : username + ":" + pass + "@tcp(" + configutils .QuoteIP (localHost ) + ":" + localPort + ")/edges" ,
51- Prefix : "" ,
52- })
53- if err == nil {
54- err = db .Raw ().Ping ()
55- _ = db .Close ()
48+ for _ , pass := range passwords {
49+ db , err := dbs .NewInstanceFromConfig (& dbs.DBConfig {
50+ Driver : "mysql" ,
51+ Dsn : username + ":" + pass + "@tcp(" + configutils .QuoteIP (localHost ) + ":" + localPort + ")/edges" ,
52+ Prefix : "" ,
53+ })
54+ if err == nil {
55+ err = db .Raw ().Ping ()
56+ _ = db .Close ()
5657
57- if err == nil || strings .Contains (err .Error (), "Error 1049" ) {
58- localUsername = username
59- localPassword = pass
60- break
58+ if err == nil || strings .Contains (err .Error (), "Error 1049" ) {
59+ localUsername = username
60+ localPassword = pass
61+ break
62+ }
6163 }
6264 }
65+
66+ break
6367 }
6468 }
6569
0 commit comments