西門子的WINCC軟件提供了方便的變量歸檔,報警歸檔備份功能。但沒想到的是Wincc用戶歸檔沒有自動備份功能。配方數(shù)據(jù)及用戶歸檔存儲的報表記錄數(shù)據(jù)確是生產(chǎn)的關(guān)鍵數(shù)據(jù),需要定時定期備份。
當然,西門子也提供了標準的接口函數(shù)提供導出功能。是的,一個表一個表的導出功能。項目變了,配方多了一種重新編輯腳本重新導出?;陧椖繉嶋H情況,拋棄了西門子官方提供的方法,選擇了其他的方法處理備份數(shù)據(jù)。
在此,提供三種昌暉儀表使用過的Wincc用戶歸檔備份方法,歡迎大家一起討論!
方法一:完整性備份為bak文件
借用強大的SQL語法,通過VBS執(zhí)行SQLCMD指令,執(zhí)行已經(jīng)測試完成的T-SQL備份指令。由于需要使用cmdshell指令,SQL默認為關(guān)閉狀態(tài)需要在T-SQL指令中開啟,結(jié)束完成后記得關(guān)閉,否則SQL處于危險狀態(tài)。結(jié)合Wincc可以靈活的定義重復執(zhí)行的時間??梢造`活控制備份的周期,備份文件的保留方式。具體看現(xiàn)場實際要求,部分腳本如下:
實際測試,備份速度基本是ms級別,截圖如下。
方法二:導出表數(shù)據(jù)使用BCP指令
BCP實用工具可以在Microsoft SQL Server實例和用戶指定格式的數(shù)據(jù)文件間大容量復制數(shù)據(jù)。使用BCP實用工具可以將大量新行導入SQL Server表,或?qū)⒈頂?shù)據(jù)導入數(shù)據(jù)文件。除非與queryout選項一起使用,否則使用該實用工具不需要了解Transact-SQL知識。BCP既可以在CMD提示符下運行,也可以在SSMS下執(zhí)行。
如圖所示:導出對應的表的數(shù)據(jù),如果表名有固定的標簽,可以靈活的控制表的數(shù)據(jù)導出,即使外部新建表單或者新加數(shù)據(jù)都無需調(diào)整腳本。通過VBS執(zhí)行SQLCMD,可以靈活控制表的名稱。
方法三:使用WINCC提供的C指令WinCC ODK uaArchiveExport與uaArchiveImport函數(shù)
詳細的指令有興趣的可以查詢西門子的官方幫助手冊。當然官方的是最安全可靠的,靈活度卻少了很多,不到最后一刻腳本都可能根據(jù)需要調(diào)整。對C腳本的功底要求也很高,具體的腳本可以根據(jù)官方指導文件處理。
作者:寧凌
相關(guān)閱讀
常見WinCC安裝問題及注意事項
西門子WINCC項目文件夾刪除不掉怎么辦
用工具Configuration Tool合并兩個WINCC項目的方法
共有訪客發(fā)表了評論
網(wǎng)友評論