N8N
Supabase
Hướng dẫn kết nối n8n với Supabase PostgreSQL và xử lý các lỗi thường gặp.
Kết nối n8n với Supabase
Hướng dẫn này mô tả cách cấu hình n8n để sử dụng Supabase làm cơ sở dữ liệu, bao gồm các lỗi thường gặp và cách khắc phục.
Cấu hình kết nối
Supabase không hỗ trợ kết nối trực tiếp qua IPv4 — hostname db.<project-ref>.supabase.co chỉ trả về địa chỉ IPv6. Thay vào đó, hãy sử dụng Connection Pooler để có địa chỉ IPv4.
Lấy thông tin kết nối Pooler
- Vào Supabase Dashboard > Connect hoặc truy cập trực tiếp vào URL sau, thay
[YOUR-PROJECT-ID]bằng ID dự án của bạn:
https://supabase.com/dashboard/project/YOUR-PROJECT-ID?showConnect=true&connectTab=direct&method=transaction
- Chọn tab Direct > Transaction Pooler để xem thông tin kết nối.

- Sao chép các thông tin sau:
| Biến môi trường | Giá trị |
|---|---|
DB_POSTGRESDB_HOST | aws-0-<region>.pooler.supabase.com |
DB_POSTGRESDB_PORT | 6543 |
DB_POSTGRESDB_DATABASE | postgres |
DB_POSTGRESDB_USER | postgres.<project-ref> |
DB_POSTGRESDB_PASSWORD | Mật khẩu Database của bạn |
DB_POSTGRESDB_SSL | true |
- Khởi tạo hàm uuid_generate_v4()
Supabase cài extensionuuid-ossptrong schemaextensions, nhưng n8n tìm hàm này ở schemapublic. Bạn cần tạo hàm chuyển tiếp trong schemapublic:CREATE OR REPLACE FUNCTION public.uuid_generate_v4() RETURNS uuid LANGUAGE sql AS $$ SELECT extensions.uuid_generate_v4(); $$;
Dùng port 6543 (Transaction mode), không phải 5432. User phải có dạng
postgres.<project-ref>, không phải chỉ postgres.Xử lý sự cố
getaddrinfo ENOTFOUND db.<project>.supabase.co
Hostname kết nối trực tiếp chỉ có IPv6. Hãy chuyển sang dùng Transaction Pooler như hướng dẫn ở trên.
function "uuid_generate_v4" does not exist
Hàm uuid_generate_v4() không tồn tại trong schema public. Hãy tạo hàm chuyển tiếp như hướng dẫn ở trên để giải quyết lỗi này.