Gerbuuun
Gerbuuun
Explore posts from servers
DTDrizzle Team
Created by Gerbuuun on 5/8/2024 in #help
Database and Drizzle checkpoints are out of sync due to custom migrations.
Hi, Due to some custom written migrations (SQLite table changes iykyk) the latest snapshot and current state of the database are out of sync. Is there a way to get them back in sync?
1 replies
DTDrizzle Team
Created by Gerbuuun on 7/3/2023 in #help
Drizzle-kit database push connection error
When trying to run drizzle-kit push:mysql to push my schema to Planetscale, I get the following error. Am I missing something?
drizzle-kit push:mysql
drizzle-kit: v0.19.3
drizzle-orm: v0.27.0

No config path provided, using default 'drizzle.config.ts'
Reading config file '/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/drizzle.config.ts'
/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:34877
const createConnectionErr = new Error();
^

Error: getaddrinfo ENOTFOUND ${DATABASE_HOST}
at createConnection2 (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:34877:35)
at connectToMySQL (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:36958:60)
at Command.<anonymous> (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:52048:28) {
code: 'ENOTFOUND',
errno: -3008,
sqlState: undefined
}

Node.js v20.2.0
drizzle-kit push:mysql
drizzle-kit: v0.19.3
drizzle-orm: v0.27.0

No config path provided, using default 'drizzle.config.ts'
Reading config file '/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/drizzle.config.ts'
/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:34877
const createConnectionErr = new Error();
^

Error: getaddrinfo ENOTFOUND ${DATABASE_HOST}
at createConnection2 (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:34877:35)
at connectToMySQL (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:36958:60)
at Command.<anonymous> (/Users/gerbuuun/ghq/github.com/Gerbuuun/my-admin-nuxt/node_modules/.pnpm/[email protected]/node_modules/drizzle-kit/index.cjs:52048:28) {
code: 'ENOTFOUND',
errno: -3008,
sqlState: undefined
}

Node.js v20.2.0
This is my drizzle.config.ts
import type { Config } from "drizzle-kit";
import * as dotenv from "dotenv";
dotenv.config();

export default {
schema: "./database/schema/*",
out: "./drizzle",
driver: "mysql2",
dbCredentials: {
connectionString: process.env.DATABASE_URL as string,
},
} satisfies Config;
import type { Config } from "drizzle-kit";
import * as dotenv from "dotenv";
dotenv.config();

export default {
schema: "./database/schema/*",
out: "./drizzle",
driver: "mysql2",
dbCredentials: {
connectionString: process.env.DATABASE_URL as string,
},
} satisfies Config;
And my .env file looks like this:
# Database
DATABASE_HOST=aws.connect.psdb.cloud
DATABASE_USERNAME=<hidden>
DATABASE_PASSWORD=<hidden>
DATABASE_NAME=<hidden>
DATABASE_URL=mysql://${DATABASE_USERNAME}:${DATABASE_PASSWORD}@${DATABASE_HOST}/${DATABASE_NAME}?ssl={"rejectUnauthorized":true}
# Database
DATABASE_HOST=aws.connect.psdb.cloud
DATABASE_USERNAME=<hidden>
DATABASE_PASSWORD=<hidden>
DATABASE_NAME=<hidden>
DATABASE_URL=mysql://${DATABASE_USERNAME}:${DATABASE_PASSWORD}@${DATABASE_HOST}/${DATABASE_NAME}?ssl={"rejectUnauthorized":true}
4 replies
DTDrizzle Team
Created by Gerbuuun on 4/17/2023 in #help
Syntax error mysql migration using composite primary key
--> statement-breakpoint
CREATE TABLE `member_to_address` (
`member_id` varchar(32) NOT NULL,
`address_id` varchar(32) NOT NULL
);
ALTER TABLE `member_to_address` ADD PRIMARY KEY(`member_id`,`address_id`);
--> statement-breakpoint
CREATE TABLE `member_to_address` (
`member_id` varchar(32) NOT NULL,
`address_id` varchar(32) NOT NULL
);
ALTER TABLE `member_to_address` ADD PRIMARY KEY(`member_id`,`address_id`);
This part of my migration won't run due to:
DatabaseError: syntax error at position 114 near 'ALTER'
at Connection.execute (webpack-internal:///(sc_server)/./node_modules/@planetscale/database/dist/index.js:95:19)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
status: 400,
body: {
message: "syntax error at position 114 near 'ALTER'",
code: 'UNKNOWN'
}
}
DatabaseError: syntax error at position 114 near 'ALTER'
at Connection.execute (webpack-internal:///(sc_server)/./node_modules/@planetscale/database/dist/index.js:95:19)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
status: 400,
body: {
message: "syntax error at position 114 near 'ALTER'",
code: 'UNKNOWN'
}
}
The table looks like this:
export const memberToAddress = mysqlTable(
"member_to_address",
{
memberId: varchar("member_id", { length: 32 }).notNull(),
addressId: varchar("address_id", { length: 32 }).notNull(),
},
(memberToAddress) => ({
cpk: primaryKey(memberToAddress.memberId, memberToAddress.addressId),
memberIdx: index("member_idx").on(memberToAddress.memberId),
addressIdx: index("address_idx").on(memberToAddress.addressId),
})
);
export const memberToAddress = mysqlTable(
"member_to_address",
{
memberId: varchar("member_id", { length: 32 }).notNull(),
addressId: varchar("address_id", { length: 32 }).notNull(),
},
(memberToAddress) => ({
cpk: primaryKey(memberToAddress.memberId, memberToAddress.addressId),
memberIdx: index("member_idx").on(memberToAddress.memberId),
addressIdx: index("address_idx").on(memberToAddress.addressId),
})
);
Where I want to link multiple addresses to a member object. Im using the planetscale-serverless migrator.
8 replies