[ Agent ] [ App ] - fix mysql init bugs - 6

This commit is contained in:
zeaslity
2023-11-28 12:00:19 +08:00
parent 67ca7aa001
commit 8e0706a4ba

View File

@@ -6,6 +6,7 @@ import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"os"
"strings"
)
func MysqlSqlFileLoad(jackeyLoveIp string, jackeyLoveFileList []string) (bool, []string) {
@@ -40,15 +41,18 @@ func MysqlSqlFileLoad(jackeyLoveIp string, jackeyLoveFileList []string) (bool, [
defer jackeyLove.Close()
// 逐行读取 SQL 文件并执行
query := ""
scanner := bufio.NewScanner(jackeyLove)
for scanner.Scan() {
sqlStatement := scanner.Text()
// 这里可以添加逻辑来忽略空行或注释行
if sqlStatement == "" || sqlStatement[:2] == "--" {
if sqlStatement == "" || sqlStatement[:2] == "--" || sqlStatement[:2] == "/*" {
continue
}
// 执行 SQL 语句
_, err := db.Exec(sqlStatement)
query += sqlStatement + " "
if strings.Contains(sqlStatement, ";") {
_, err := db.Exec(query)
if err != nil {
executeError := fmt.Sprintf("[MysqlSqlFileLoad] - jackeyLoveFile %s 执行出错: %s, 错误信息: %s", jackeyLove.Name(), sqlStatement, err.Error())
log.Error(executeError)
@@ -56,6 +60,10 @@ func MysqlSqlFileLoad(jackeyLoveIp string, jackeyLoveFileList []string) (bool, [
executeError,
}
}
// reset
query = ""
}
}
// 检查扫描过程中是否有错误