Drizzle와 SingleStore 연동하기

Drizzle를 SingleStore 데이터베이스와 함께 사용하려면 mysql2 드라이버를 사용해야 합니다.

Drizzle ORM은 drizzle-orm/singlestore 패키지를 통해 mysql2를 기본적으로 지원합니다.

1단계 - 패키지 설치

npm
yarn
pnpm
bun
npm i drizzle-orm mysql2
npm i -D drizzle-kit

위 명령어를 사용하여 drizzle-ormmysql2 패키지를 설치하고, 개발용으로 drizzle-kit을 설치합니다.

2단계 - 드라이버 초기화 및 쿼리 실행

mysql2
mysql with config
import { drizzle } from "drizzle-orm/singlestore";

const db = drizzle(process.env.DATABASE_URL);

const response = await db.select().from(...)

기존 드라이버를 제공해야 하는 경우:

Client connection
Pool connection
import { drizzle } from "drizzle-orm/singlestore";
import mysql from "mysql2/promise";

const connection = await mysql.createConnection({
  host: "host",
  user: "user",
  database: "database",
  ...
});

const db = drizzle({ client: connection });
IMPORTANT

DDL 마이그레이션과 함께 제공되는 내장 migrate 함수를 사용할 때는 단일 client 연결을 사용하는 것을 강력히 권장합니다.

쿼리 목적이라면 비즈니스 요구에 따라 client 또는 pool 중 하나를 자유롭게 사용할 수 있습니다.

제한 사항

현재 SingleStore 방언에는 SingleStore 데이터베이스 측에서 작동하지 않는 몇 가지 제한 사항과 기능이 있습니다:

다음 단계는 무엇인가요?