MySqlBulkLoader可以與事務一起使用嗎?我沒有看到明確將事務附加到加載器實例的方法。有另一種方法嗎?MySqlBulkLoader可以與事務一起使用嗎?
6
A
回答
1
正如MySQL文檔團隊的成員表示here:
It's not atomic. The records loaded prior to the error will be in the
table.
角落找尋工作是將數據導入到專用表,然後執行INSERT INTO ... SELECT ...
這將是原子操作。在龐大的數據集上,這是潛在的問題,因爲長期交易。
1
MySQL manual表示MySqlBulkLoader是'LOAD DATA INFILE'的包裝。如果你指定IGNORE,那 重複上一個獨特的 鍵值的現有行被跳過輸入行
:注視「LOAD DATA INFILE」的文件,我注意到這一段。如果不指定 指定任一選項,則行爲 取決於是否指定LOCAL關鍵字 。如果沒有LOCAL,則在找到重複鍵值 並忽略文本文件 的其餘部分時會發生錯誤 。使用LOCAL時,默認 的行爲與指定IGNORE爲 的行爲相同;這是因爲服務器 無法在操作過程中停止傳輸 文件。
我發現沒有關於交易的討論,但上面的段落表明交易不可能。
解決方法是將數據導入到導入表中,然後使用單獨的存儲過程來使用事務將數據處理到所需的表中。
所以在寫回信
相關問題
- 1. MySQL事務可以與事件調度程序一起使用嗎?
- 2. jQuery可以與Ext.js一起使用嗎?
- 3. ImageMagickNET可以與c#一起使用嗎?
- 4. neo4j可以與NetBeans一起使用嗎?
- 5. HAML可以與Less.js一起使用嗎?
- 6. Lucene.NET可以與MVVM一起使用嗎?
- 7. NSFormatter可以與NSPopUpButton一起使用嗎?
- 8. AsyncFileUpload可以與UpdatePanel一起使用嗎?
- 9. Django可以與py2exe一起使用嗎?
- 10. Console2可以與Powershell一起使用嗎?
- 11. Sinatra可以與IronRuby一起使用嗎?
- 12. markerwithlabel可以與google.maps.circle一起使用嗎?
- 13. @JsonTypeInfo可以與Collections一起使用嗎?
- 14. PowerMock可以與ElasticsearchIntegrationTest一起使用嗎?
- 15. Can Meteor可以與PaaS服務一起使用嗎?
- 16. 可以將msbuild nantcontrib任務與mono的xbuild一起使用嗎?
- 17. App Engine MailService可以與OAuth2 /服務帳戶一起使用嗎?
- 18. SQL Server EKM可以與MS證書服務一起使用嗎?
- 19. IDataContractSurrogate可以與Azure可靠服務和/或參與者一起使用嗎?
- 20. 使用Go可以與Microsoft Sharepoint一起使用嗎?
- 21. 可以將CopyOnWriteArrayList與可變對象一起使用嗎?
- 22. 您可以將RegAsm與可執行文件一起使用嗎?
- 23. Can RowSets可與PreparedStatements一起使用嗎?
- 24. JavaScript fillStyle可與stroke()一起使用嗎?
- 25. each()和prev()可以一起使用嗎?
- 26. sigqueue可以和pthreads一起使用嗎?
- 27. recvmsg()和sendto()可以一起使用嗎?
- 28. JCIFS可以和Jersey一起使用嗎?
- 29. 可以和數組一起使用嗎?
- 30. Dotfuscator和ILMerge可以一起使用嗎?
請注意,這適用於不支持事務的MyISAM表。 InnoDB至少將LOAD DATA ...視爲一項交易。 – nos 2011-09-20 21:28:51