Tại sao nên dùng Supabase để tạo PostgreSQL database?
Supabase đang trở thành lựa chọn phổ biến cho các nhà phát triển muốn triển khai cơ sở dữ liệu PostgreSQL nhanh chóng và an toàn. Không chỉ cung cấp cơ sở dữ liệu quan hệ mạnh mẽ, Supabase còn tích hợp sẵn Authentication, Storage, Auto-Backup, và Real-time — tất cả trong một nền tảng.
Với Supabase, bạn không cần phải lo lắng về việc quản lý server hay cài đặt phức tạp. Chỉ cần vài cú nhấp chuột, bạn đã có một PostgreSQL database sẵn sàng để sử dụng, đi kèm với các công cụ quản trị trực quan và API tự động sinh ra. Đây là giải pháp lý tưởng cho cả dự án cá nhân lẫn sản phẩm thương mại.
Bước 1: Đăng ký và tạo project trên Supabase
Để bắt đầu, truy cập trang chủ của Supabase và đăng ký tài khoản. Sau khi đăng nhập, bạn sẽ được chuyển đến Dashboard — nơi quản lý tất cả các project của mình.
Nhấp vào New project, điền thông tin:
– Project name: Đặt tên cho project (ví dụ: blog-app).
– Password: Đặt mật khẩu cho database.
– Region: Chọn vùng lưu trữ dữ liệu (nên chọn gần với người dùng nhất).
Sau khi xác nhận, Supabase sẽ tự động khởi tạo PostgreSQL database cho bạn. Quá trình này thường mất khoảng 2 phút. Khi hoàn tất, bạn sẽ thấy thông tin kết nối (URL và public key) — hãy lưu lại cẩn thận.
Bước 2: Khám phá Table Editor và SQL Editor
Sau khi project được tạo, bạn sẽ được dẫn đến giao diện quản trị. Hai công cụ quan trọng nhất là Table Editor và SQL Editor.
– Table Editor: Cho phép bạn tạo bảng, thêm cột, thiết lập khóa chính, chỉ mục một cách trực quan. Bạn có thể thêm dữ liệu mẫu ngay trong giao diện.
– SQL Editor: Cung cấp console để chạy các câu lệnh SQL trực tiếp, hữu ích khi bạn cần backup, restore, hoặc thực hiện các tác vụ phức tạp.
Ví dụ, để tạo một bảng users với các trường id, name, email, bạn có thể dùng câu lệnh:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL,
email TEXT UNIQUE NOT NULL
);Bước 3: Tạo và quản lý role, user
Mặc định, Supabase tạo một role admin cho bạn. Tuy nhiên, với các ứng dụng thực tế, bạn nên tạo các role riêng biệt với quyền hạn cụ thể để đảm bảo bảo mật.
Sử dụng SQL Editor để tạo role mới:
CREATE ROLE app_user WITH LOGIN PASSWORD 'your_password';
GRANT SELECT, INSERT, UPDATE ON users TO app_user;
GRANT USAGE, SELECT ON SEQUENCE users_id_seq TO app_user;