pgloader 是一個不錯的多種格式數據同步到pg 的工具,pgloader 使用postrgresql 的copy 協議進行高效的數據同步處理mysql
特性
加載文件到內容pg
- 多種數據源格式的支持
csv、fixed 列、dbase、sqlte、ibm ixf、postgresql、mysql、sql server
- 即時數據轉換
在加載數據以前能夠進行數據調整,清理
- 數據投影
能夠加載須要字段
- 從歸檔文件加載數據
zip、tar、gzip 導入數據
- http(s) 支持
支持http 請求數據的加載
- 目標模式發現
加載數據的時候,pgloader 會考慮現有列,並儘量的猜想csv 格式
- 錯誤中止&&錯誤恢復繼續
在特殊狀況下,源數據別破壞形成沒法徹底遷移,pgloader會忽略錯誤,而且繼續遷移
其餘行
在部分狀況下,多是須要完整數據的
pre
&& post
sql command
能夠方便的在數據加載以前,以及以後進行一些sql 操做,好比索引、表,權限的建立管理
- 僅架構&&僅數據
對於遷移可能只須要進行schema 的遷移,也可能只進行數據的遷移
- 在線alter 架構
能夠在遷移的時候進行數據類型的轉換
- 物化試圖、即時重寫
能夠在遷移的時候將view 轉化爲table
- 分發數據到citus
- 編碼覆蓋
mysql 實際不強制對數據中的數據進行編碼,可是有時爲了理解,有必要進行元數據覆蓋
pgloader 能夠幫助作這樣的事情
- 持續遷移
可讓咱們的數據庫遷移相似持續集成同樣,能夠加強咱們遷移的信心
參考資料
https://pgloader.readthedocs.io/en/latest/
https://github.com/dimitri/pgloadergit