iT邦幫忙

2025 iThome 鐵人賽

DAY 17
0
DevOps

一個n8n免費仔的踩雷告白系列 第 17

鐵人賽 day17 - 不然我們直接複製 n8n DB 好了啦

  • 分享至 

  • xImage
  •  

Hello,我是 KK,今年的鐵人賽,想跟大家分享架設 n8n 遇到的一些挑戰跟意外,就讓我們一起學習吧。

我第一次搬遷 n8n 時,嫌一個一個下載 workflow json 太慢,然後又無法使用 CLI 指令,於是就想:要不然直接複製 DB 表格過去,會不會就全部搬家了呢?

我們在 [[鐵人賽 day16 - workflow 的匯入跟 credential 的問題]] 有提到 credential 跟 workflow 的匯入。如果你還記得的話,我在 [[鐵人賽 day3 - 怎麼在本地架設 n8n]] 也有說到,n8n 是有配合的 DB的,先不論你是 PostgreSQL 或是基本的 SQLite。
如果你前面有照著 [[鐵人賽 day6 - 總是看著你笑到直發寒的 HuggingFace Space]] 裡面的連結,應該會有一個外部的 Supabase PostgreSQL 可以連線。

所以我就試著連線看看,果然可以順利的連線過去,然後就被幾十張表格給嚇到。

https://ithelp.ithome.com.tw/upload/images/20251001/20161625b8FG98QxkH.png

沒關係現代問題可以用現代手段來解決,表格多但 DataGrip 也很強,我們可以用內建的功能 import 到新 n8n 的 PostgreSQL 去。而且我實際上也沒有用到 folder, project 等功能,應該是不難搬才對。

想不到我全部轉移過去之後,開啟新的 n8n,發現完全無法開啟。而且我重點的 credential 依然完全沒有轉移成功。
在我研究後,發現原來 n8n 會依機器不同去產生一組加密用的密鑰,你新增的 credential 內容,都會被加密,以防被人直接偷走 (像我這樣)。所以在當時除了手動重新新增外,沒有其他方法可以轉移 credential。

還好 n8n 改版得很快,後來倒是增加了 credential 的 export/import 功能 [^1]
如此一來,轉移就輕鬆多了。
跟 workflow 類似,我們連到 n8n container 內之後,輸入

n8n export:credentials --all

就能得到一個 json 檔,將它複製到新的機器內,再輸入

n8n import:workflow --input=file.json

如此一來,最重要的 workflow, credential 就都能轉移了

[^1]: CLI commands | n8n Docs


上一篇
鐵人賽 day16 - workflow 的匯入跟 credential 的問題
下一篇
鐵人賽 day18 - Claw Cloud 的問題 - 時間錯誤
系列文
一個n8n免費仔的踩雷告白20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言