我使用 mysqldump 命令轉儲 sql 表中的一些信息。為此,我閱讀了有關 mysqldump 的內容。然后,為了進行測試,我創建了一個可以在終端 shell 中運行的直接命令。該命令成功地產生了我需要的結果。然后我必須在我的應用程序代碼中實現該命令。我的應用程序在 golang 中。使用exec.Command()我將能夠運行該命令。但在執行命令時出現運行時錯誤。我在終端中遇到的錯誤是:退出狀態 2:mysqldump:出現錯誤:1044:選擇數據庫時“用戶''@'localhost'對數據庫'db_name'的訪問被拒絕”我使用的命令:產生成功結果的直接命令 sudo mysqldump -h 127.0.0.1 --no-create-info db_name table_name --where='id=1121' > /path/of/file/php1_dump.sql我在 golang 中使用的代碼:cmd := exec.Command("sh", "-c", "mysqldump -h 127.0.0.1 --no-create-info db_name table_name --where='id=1121' > /home/iron/go/php1_dump.sql")var out bytes.Buffervar stderr bytes.Buffercmd.Stdout = &outcmd.Stderr = &stderrerr := cmd.Run() // give the above error I mentionedif err != nil { fmt.Println(fmt.Sprint(err) + ": " + stderr.String()) fmt.Println("errrrrrrrrrrrrrrrrrrrr", err) // exit status 2}fmt.Println("Result: " + out.String())我還嘗試了以下命令:sudo mysqldump -h 127.0.0.1 -u root -p --no-create-info bk_admin wp_merchants --where='id=1121' > /home/iron/go/php1_dump.sql上述命令要求輸入密碼。但我沒有設置 phpmysqladmin 的任何密碼:請告訴我我哪里做錯了?
- 2 回答
- 0 關注
- 171 瀏覽
添加回答
舉報
0/150
提交
取消