
如有必要,請將其移至正確的位置。不確定在哪裡可以得到最好的答案。
我需要創建一個報告應用程序,如果可能的話,我想使用 Ubuntu 來完成它。原始資料來自基於裝置的應用程序,該應用程式可以定期將分隔日誌檔案透過 FTP 傳輸到指定位置。我想開發一種機制來使用該數據來更新 MySQL 資料庫(待創建),該資料庫將用於建立計劃報告,最終透過電子郵件發送給各個分發組(以 Excel 格式的 PDF 形式)。我們有內部智慧來建立各種 MySQL 查詢(並設計資料庫),但 Linux/Ubuntu 不知道如何確定最佳方法。我們正在使用 Crystal Reports 對 Windows 端的另一個應用程式執行類似的操作,但考慮到需要分發此應用程序,我們希望不必處理 Windows 許可成本等...
我需要有關正確工具/方法的建議,還需要建議我在哪裡可以找到合格的資源,這些資源可以在不花費大量成本的情況下有效地完成此任務。
答案1
您可以使用以下語法從命令列解析命令:
mysql -u {user} -p{password} {database} <{text.file}
這將解析從 {text.file} 到 {database} 的所有行。該文字檔案需要包含有效的 MySQL 指令,並且密碼以純文字形式顯示,ps
因此您可能需要將其保留下來my.cnf
(安全性第一)。
2種方法...
您可以使用MySQL命令載入數據(有關更多選項,請參閱連結):
載入資料[LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE {text2.file} INTO TABLE {表}
在 text.file 內將文字檔案插入表中。這可能會覆蓋現有的行,因此您每次都需要建立新檔案。載入資料非常非常快。較短的方法(來自 Caesium 評論的一行):
mysql -u {user} -p {pass} -e "LOAD DATA {rest of command}" {db}
您可以將很多
INSERT INTO
' 放入 text.file 中。這比 LOAD DATA 慢,但更容易實現。