Declarative MySQL schemas with Atlas CLI
Tutorials

Declarative MySQL schemas with Atlas CLI

Learn how to use Atlas CLI with PlanetScale to define your database as code.

Brian Morrison II
September 16, 2022
Build a multi-stage pipeline with PlanetScale and AWS
Tutorials

Build a multi-stage pipeline with PlanetScale and AWS

Learn how to build an automated DevOps pipeline with AWS Lightsail, CodeBuild, and PlanetScale.

Brian Morrison II
September 13, 2022
TAOBench: Running social media workloads on PlanetScale
Engineering

TAOBench: Running social media workloads on PlanetScale

Learn how we used TAOBench with PlanetScale to benchmark social media workloads

Liz van Dijk
September 8, 2022
Gated Deployments: addressing the complexity of schema deployments at scale
Product

Gated Deployments: addressing the complexity of schema deployments at scale

We just introduced a new feature, Gated Deployments, that gives you more control over when your schema changes deploy.

Shlomi Noach
September 6, 2022
One million queries per second with MySQL
Engineering

One million queries per second with MySQL

Discover how PlanetScale handles one million queries per second (QPS) with horizontal sharding in MySQL

Jonah Berquist
September 1, 2022
Zero downtime Laravel migrations
Engineering

Zero downtime Laravel migrations

Learn how to run no downtime non-blocking schema migrations in your production Laravel app with PlanetScale.

Holly Guevara
August 29, 2022
Run SQL script files on a PlanetScale database
Tutorials

Run SQL script files on a PlanetScale database

Learn how to run commands in batch against a PlanetScale database using the PlanetScale CLI.

Brian Morrison II
August 25, 2022
How product design works at PlanetScale
Engineering

How product design works at PlanetScale

Learn about the lightweight and highly collaborative process our product design team follows to ship quickly at PlanetScale.

Jason Long
August 22, 2022
Introducing the PlanetScale serverless driver for JavaScript
Product

Introducing the PlanetScale serverless driver for JavaScript

You can now use PlanetScale in HTTP-only environments, like Cloudflare Workers, Vercel Edge Functions, and Netlify Edge Functions

Taylor Barnett
Matt Robenolt
August 18, 2022
Introducing FastPage: Faster offset pagination for Rails apps
Engineering

Introducing FastPage: Faster offset pagination for Rails apps

Introducing FastPage, a new gem for ActiveRecord that speeds up deep pagination queries.

Mike Coutermarsh
August 16, 2022
How to kill Sidekiq jobs in Ruby on Rails
Engineering

How to kill Sidekiq jobs in Ruby on Rails

Learn how PlanetScale uses a custom middleware to kill our Sidekiq jobs in production without relying on deploys.

Elom Gomez
August 15, 2022

Pinned posts

Replace your Django database with PlanetScale
Tutorials

Replace your Django database with PlanetScale

Learn how to swap out an existing Django database and replace it with a PlanetScale database.

Alex Nnakweu
August 11, 2022
Database DevOps
Engineering

Database DevOps

Learn how PlanetScale enables databases to seamlessly fit into the DevOps lifecycle.

Sam Lambert
August 8, 2022
Connect to a MySQL database in Python
Tutorials

Connect to a MySQL database in Python

Connect a Python app to MySQL database with mysqlclient, mysql-connector-python, PyMySQL, and aiomysql.

Holly Guevara
August 4, 2022
How PlanetScale prevents MySQL downtime
Product

How PlanetScale prevents MySQL downtime

Learn how PlanetScale protects against downtime due to human error, system immaturity, and app issues.

Sam Lambert
August 2, 2022
Ruby on Rails: 3 tips for deleting data at scale
Engineering

Ruby on Rails: 3 tips for deleting data at scale

Learn how to delete data in large Rails apps with destroy_async, delete, destroy, and scheduled cron jobs.

Mike Coutermarsh
August 1, 2022
The Slotted Counter Pattern
Engineering

The Slotted Counter Pattern

Handle MySQL increment counter bursts with the Slotted Counter Pattern

Sam Lambert
July 28, 2022
Behind the scenes: How we built Password Roles
Engineering

Behind the scenes: How we built Password Roles

Learn how we leveraged Vitess ACLs and VTTablet to build our password roles functionality

Phani Raju
July 27, 2022
Safely dropping MySQL tables
Product

Safely dropping MySQL tables

Learn about how we're making it safer to drop tables and easier to detect if they're still in use.

David Graham
July 25, 2022
Temporal Workflows at scale with PlanetScale - Part 1
Engineering

Temporal Workflows at scale with PlanetScale - Part 1

Learn how to create a more reliable workflow with Temporal and PlanetScale

Savannah Longoria
July 22, 2022
Announcing Teams: An easier way to manage database administrator access
Product

Announcing Teams: An easier way to manage database administrator access

Learn how you can manage database access with Teams and Directory Sync

Iheanyi Ekechukwu
July 20, 2022
We now display PlanetScale system status directly in your dashboard
Product

We now display PlanetScale system status directly in your dashboard

Learn about how we built the new in-app system status using Vercel edge functions and StatusPage

Mike Coutermarsh
July 19, 2022
How do database indexes work?
Engineering

How do database indexes work?

Learn how database indexes work under the hood and how they can be used to speed up queries

Justin Gage
July 14, 2022
Getting started with the PlanetScale CLI
Product

Getting started with the PlanetScale CLI

Learn how to quickly get up and running with the PlanetScale CLI.

Brian Morrison II
July 12, 2022
Consensus algorithms at scale: Part 8 - Closing thoughts
Engineering

Consensus algorithms at scale: Part 8 - Closing thoughts

In the final installment of the consensus algorithm series, we pull everything together with some final thoughts.

Sugu Sougoumarane
July 7, 2022
Deploy requests now alert on potential unwanted changes
Product

Deploy requests now alert on potential unwanted changes

We've updated our Deploy Request UI to alert when a schema change could produce unintended changes

Mike Coutermarsh
July 6, 2022
Announcing the PlanetScale and Hashnode July Hackathon
Community

Announcing the PlanetScale and Hashnode July Hackathon

Build an open-source project and compete for $20,000 in prizes and swag!

James Q Quick
July 5, 2022
Consensus algorithms at scale: Part 7 - Propagating requests
Engineering

Consensus algorithms at scale: Part 7 - Propagating requests

In part 7 of the Consensus algorithm series, we combine everything we've worked at to cover propagating requests

Sugu Sougoumarane
July 1, 2022
Identifying slow Rails queries with sqlcommenter
Engineering

Identifying slow Rails queries with sqlcommenter

Learn how to use sqlcommenter with Rails

Mike Coutermarsh
Iheanyi Ekechukwu
June 29, 2022
Announcing Vitess 14
Open Source

Announcing Vitess 14

Learn about what was just released in Vitess 14

Vitess Engineering Team
June 28, 2022
Grouping and aggregations on Vitess
Open Source

Grouping and aggregations on Vitess

Vitess is a database proxy that creates an illusion of a single database, when in reality the query is sent to multiple MySQL instances.

Andres Taylor
June 24, 2022
Consensus algorithms at scale: Part 6 - Completing requests
Engineering

Consensus algorithms at scale: Part 6 - Completing requests

In part 6 of the Consensus algorithms series, we look at how to handle request completions

Sugu Sougoumarane
June 21, 2022
Introducing PlanetScale Insights: Advanced query monitoring
Product

Introducing PlanetScale Insights: Advanced query monitoring

Insights gives you a faster way to debug and monitor your PlanetScale database queries

Holly Guevara
May 26, 2022
Extract, load, and transform your data with PlanetScale Connect
Product

Extract, load, and transform your data with PlanetScale Connect

Use PlanetScale connect to easily perform ELT (Extract, Load, Transform) actions on your data to fulfill your application needs.

James Q Quick
May 25, 2022
Introducing PlanetScale Portals: Read-only regions
Product

Introducing PlanetScale Portals: Read-only regions

Put your data where your users and applications are.

Taylor Barnett
May 24, 2022
Why we wrote the PlanetScale “Future Database” principles
Company

Why we wrote the PlanetScale “Future Database” principles

We believe databases are lagging behind DevOps innovation and we wrote these principles to illustrate the path forward.

Sam Lambert
May 23, 2022
The operational relational schema paradigm
Engineering

The operational relational schema paradigm

An exploration of the current landscape of schema change methodology and what the future should look like.

Shlomi Noach
May 9, 2022
Feature storytelling with Framer Motion
Engineering

Feature storytelling with Framer Motion

Learn how we used Framer Motion to create our schema revert feature’s narrative animation.

Derek Briggs
May 5, 2022
Consensus algorithms at scale: Part 5 - Handling races
Engineering

Consensus algorithms at scale: Part 5 - Handling races

In part 5 of our consensus algorithms series, we discuss how we handle race conditions and forward progress requirements.

Sugu Sougoumarane
April 28, 2022
Consensus algorithms at scale: Part 4 - Establishment and revocation
Engineering

Consensus algorithms at scale: Part 4 - Establishment and revocation

In part 4 of the consensus algorithms series, we look at how algorithm leaders are established and revoked.

Sugu Sougoumarane
April 6, 2022
Generics can make your Go code slower
Engineering

Generics can make your Go code slower

Go 1.18 is here, and with it, the first release of the long-awaited implementation of Generics is finally ready for production usage. Generics are a frequently requested feature that has been highly contentious throughout the Go community.

Vicent Marti
March 30, 2022
Why we chose NanoIDs for PlanetScale's API
Engineering

Why we chose NanoIDs for PlanetScale's API

Learn why PlanetScale used NanoID to generate obscure and URL friendly identifiers.

Mike Coutermarsh
March 29, 2022
Revert a migration without losing data
Product

Revert a migration without losing data

Learn how PlanetScale lets you revert changes to your database after a migration with no downtime and zero data loss.

Taylor Barnett
March 24, 2022
Behind the scenes: How schema reverts work
Engineering

Behind the scenes: How schema reverts work

Learn how we used VReplication to allow for migration reverts with data retention.

Holly Guevara
Shlomi Noach
March 24, 2022
How to prevent SQL injection attacks in Node.js
Tutorials

How to prevent SQL injection attacks in Node.js

Don't let SQL injection attacks hurt your business.

James Q Quick
March 3, 2022
Schema design 101 for relational databases
Tutorials

Schema design 101 for relational databases

Whether you're coming from a NoSQL background or have never used a database, we'll walk through the basics of relational database schema design.

Camila Ramos
March 2, 2022
Introducing Beam
Community

Introducing Beam

We're sharing the PlanetScale-powered communication tool we use internally.

Jason Long
February 23, 2022
Announcing Vitess 13
Open Source

Announcing Vitess 13

Learn about the Vitess 13 release.

Florent Poinsard
February 22, 2022
Misconceptions about databases in the Jamstack
Community

Misconceptions about databases in the Jamstack

Breaking down the barriers to using relational databases in Jamstack applications.

Taylor Barnett
February 22, 2022
How we made PlanetScale’s background jobs self-healing
Engineering

How we made PlanetScale’s background jobs self-healing

How to build self-healing background jobs into your application with background queueing systems, like Sidekiq.

Mike Coutermarsh
February 17, 2022
Build a Laravel application with a MySQL database
Tutorials

Build a Laravel application with a MySQL database

Learn how to build a Laravel CRUD application, connect it to a MySQL database, and seed it with data.

Holly Guevara
February 15, 2022
How to seed a database with Prisma and Next.js
Tutorials

How to seed a database with Prisma and Next.js

Use Prisma and Next.js to automatically populate your database with data.

James Q Quick
February 11, 2022
Introduction to Laravel caching
Engineering

Introduction to Laravel caching

Learn how to speed up your Laravel applications with caching.

Holly Guevara
February 9, 2022
Using the PlanetScale CLI with GitHub Actions workflows
Tutorials

Using the PlanetScale CLI with GitHub Actions workflows

Learn how to build automated workflows to develop and operate PlanetScale databases with GitHub Actions.

Taylor Barnett
February 3, 2022
Create a Harry Potter API with Node.js/Express, MySQL, and PlanetScale
Tutorials

Create a Harry Potter API with Node.js/Express, MySQL, and PlanetScale

Learn how to build a Harry Potter API using Node.js, Express, and PlanetScale

James Q Quick
January 26, 2022
Using entropy for user-friendly strong passwords
Engineering

Using entropy for user-friendly strong passwords

When implementing user authentication with passwords, throw out the password rules you know.

Mike Coutermarsh
January 24, 2022
How to set up Next.js with Prisma and PlanetScale
Tutorials

How to set up Next.js with Prisma and PlanetScale

A step-by-step guide for using PlanetScale and Prisma with Next.js.

Camila Ramos
January 20, 2022
How our Rails test suite runs in 1 minute on Buildkite
Engineering

How our Rails test suite runs in 1 minute on Buildkite

Learn how we use minitest and FactoryBot with parallel tests to get our Rails test suite to run in 1 minute on Buildkite.

Mike Coutermarsh
January 18, 2022
Deploy your Dusty Domains for good with Netlify
Tutorials

Deploy your Dusty Domains for good with Netlify

Deploy your forgotten domains in the month of December for a good cause with Netlify and friends.

Taylor Barnett
December 1, 2021
Arctype integrates MySQL GUI with PlanetScale
Community

Arctype integrates MySQL GUI with PlanetScale

The power of PlanetScale within a beautiful GUI — now you can connect to development branches, switch between them, and even create deploy requests in Arctype.

Jarod Reyes
November 19, 2021
Scaling databases in a serverless world
Community

Scaling databases in a serverless world

In a serverless world, traditional databases scale differently. They need a rock solid foundation that Vitess and PlanetScale can provide.

Taylor Barnett
November 18, 2021
Introducing Prisma’s Data Platform PlanetScale integration
Tutorials

Introducing Prisma’s Data Platform PlanetScale integration

Create a PlanetScale database on the Prisma Data Platform; immediately store and query data from the browser

Taylor Barnett
November 18, 2021
Bring your data to PlanetScale
Product

Bring your data to PlanetScale

PlanetScale now supports zero downtime data migrations from your existing MySQL Database

Phani Raju
November 17, 2021
PlanetScale is now generally available
Company

PlanetScale is now generally available

The PlanetScale serverless database platform is ready for your production workloads.

Sam Lambert
November 16, 2021
Building a Next.js app with Netlify, NextAuth.js, Prisma, and a PlanetScale serverless database
Tutorials

Building a Next.js app with Netlify, NextAuth.js, Prisma, and a PlanetScale serverless database

A new dynamic Next.js starter app with authentication and PlanetScale built-in, ready to be deployed to Netlify

Taylor Barnett
November 15, 2021
PlanetScale launch week
Community

PlanetScale launch week

Join our contest and stay tuned for exciting announcements and livestreams all this week

Lucy Burns
November 15, 2021
Introducing PlanetScale Managed Cloud
Product

Introducing PlanetScale Managed Cloud

Deploy our database platform in your AWS account

James Cunningham
November 3, 2021
New PlanetScale pricing: Scaler plan upgrades and our new enterprise plan
Company

New PlanetScale pricing: Scaler plan upgrades and our new enterprise plan

We've updated our database plans to better meet your needs

Sam Lambert
October 28, 2021
Using PlanetScale with JetBrains DataGrip
Tutorials

Using PlanetScale with JetBrains DataGrip

Connect PlanetScale to JetBrains DataGrip to use database branching, deploy requests, and non-blocking schema changes

Taylor Barnett
October 4, 2021
Comparing AWS’s RDS and PlanetScale
Product

Comparing AWS’s RDS and PlanetScale

PlanetScale draws customers from RDS due to better scalability and superior developer workflow

Jarod Reyes
September 30, 2021
Quick deploys using the Web Console
Tutorials

Quick deploys using the Web Console

Deploy a TypeScript app using the PlanetScale Vercel integration and Web Console

Elom Gomez
September 13, 2021
Optimizing SQL with Query Statistics
Product

Optimizing SQL with Query Statistics

Check the performance of your SQL queries in real-time.

David Graham
August 31, 2021
NoneSQL, All the DevEx
Engineering

NoneSQL, All the DevEx

Databases will win based on superior developer experience, not what is under the hood.

Justin Gage
August 27, 2021
Stay up to date with the PlanetScale Changelog
Company

Stay up to date with the PlanetScale Changelog

Stay up-to-date with the latest features and product launches from PlanetScale

Jarod Reyes
August 24, 2021
Automatically copy migration data in PlanetScale branches
Product

Automatically copy migration data in PlanetScale branches

Use PlanetScale Branching™ with the database schema migration tools of your choice

Taylor Barnett
August 23, 2021
Connect any MySQL client to PlanetScale using Connection Strings
Product

Connect any MySQL client to PlanetScale using Connection Strings

Connect PlanetScale to any MySQL client with Connection Strings for a true serverless database experience.

Taylor Barnett
August 16, 2021
PlanetScale on Vitess
Product

PlanetScale on Vitess

At PlanetScale, our vision is to build a database developers love that can scale indefinitely. To do this, we knew we needed a database with a history of powering companies that deal with humongous amounts of data and traffic. That’s why we chose Vitess.

Deepthi Sigireddi
July 20, 2021
Sam Lambert appointed new CEO of PlanetScale
Company

Sam Lambert appointed new CEO of PlanetScale

Announcing a new CEO for PlanetScale

Jiten Vaidya
July 19, 2021
The promises and realities of the relational database model
Engineering

The promises and realities of the relational database model

The relational model is one of the oldest surviving models in computer science but it has some drawbacks that need to be addressed.

Shlomi Noach
July 13, 2021
Integrating PlanetScale with Vercel in a few steps
Tutorials

Integrating PlanetScale with Vercel in a few steps

Together, Vercel and PlanetScale combine a serverless platform with a scalable and easy-to-use database, providing an incredible development experience with limitless scale.

Nick Van Wiggeren
July 1, 2021
Serverless finally has a database
Company

Serverless finally has a database

The dream behind PlanetScale is to serve the modern application developer’s needs as well as something like GitHub does for code.

Sam Lambert
May 24, 2021
Non-Blocking Schema Changes
Product

Non-Blocking Schema Changes

Non-blocking schema changes let you push updates to your database without fear of blocking your databases, locking individual tables, or slowing down production during schema migrations.

Lucy Burns
May 20, 2021
Announcing PlanetScale: The database for developers.
Company

Announcing PlanetScale: The database for developers.

PlanetScale is the first database designed for developer workflows, on top of the technology of the hyperscalers.

Sam Lambert
May 18, 2021
International Women's Day 2021
Company

International Women's Day 2021

To celebrate International Women’s Day we took some time to ask ourselves, the women of PlanetScale, what questions we’d want to answer and then share regarding our careers in tech.

Marla Potterveld
March 8, 2021
Announcing Vitess 9.0
Open Source

Announcing Vitess 9.0

On behalf of the Vitess maintainers, I am pleased to announce the general availability of Vitess 9.

Alkin Tezuysal
January 27, 2021
Announcing Vitess 8.0
Open Source

Announcing Vitess 8.0

On behalf of the Vitess maintainers team, I am pleased to announce the general availability of Vitess 8 for MySQL.

Alkin Tezuysal
October 27, 2020
Horizontal Sharding for MySQL Made Easy
Engineering

Horizontal Sharding for MySQL Made Easy

For developers building out a web application, a transactional datastore is the obvious and proven choice, but with success comes scale limitations.

Lucy Burns
October 22, 2020
Pitfalls of isolation levels in distributed databases
Engineering

Pitfalls of isolation levels in distributed databases

The more loosely coupled components are in a distributed system, the better it scale

Sugu Sougoumarane
October 4, 2020
MySQL semi-sync replication: durability, consistency and split brains
Tutorials

MySQL semi-sync replication: durability, consistency and split brains

We look at some basics and follow up to present scenarios that require higher level intervention to ensure availability and to avoid split brains from taking place.

Shlomi Noach
October 2, 2020
Consensus algorithms at scale: Part 3 - Use cases
Engineering

Consensus algorithms at scale: Part 3 - Use cases

Consensus Use Cases

Sugu Sougoumarane
September 26, 2020
Orchestrator failure detection and recovery: New Beginnings
Engineering

Orchestrator failure detection and recovery: New Beginnings

how the new integration adds new failure detection and recovery scenarios, making orchestrator’s operation goal-oriented.

Shlomi Noach
September 19, 2020
Consensus algorithms at scale: Part 2 - Rules of consensus
Engineering

Consensus algorithms at scale: Part 2 - Rules of consensus

The Rules of Consensus

Sugu Sougoumarane
September 9, 2020
On joining PlanetScale and the vision of open source database infrastructure
Company

On joining PlanetScale and the vision of open source database infrastructure

Why I joined PlanetScale to work on Vitess and PlanetScaleDB, and what I perceive Vitess can become in the MySQL open source ecosystem.

Shlomi Noach
September 1, 2020
Consensus algorithms at scale: Part 1 - Introduction
Engineering

Consensus algorithms at scale: Part 1 - Introduction

This is a multi-part blog series and will be updated with links to the corresponding posts.

Sugu Sougoumarane
August 28, 2020
Learn Horizontal Scaling on PlanetScaleDB with Vitess — Rate Puppies in a Rust app with Sharded MySQL Database
Engineering

Learn Horizontal Scaling on PlanetScaleDB with Vitess — Rate Puppies in a Rust app with Sharded MySQL Database

Rate Puppies in a Rust app with Sharded MySQL Database

Jiten Vaidya
August 14, 2020
Announcing Vitess 7
Open Source

Announcing Vitess 7

On behalf of the Vitess maintainers team, I am pleased to announce the general availability of Vitess 7. Major Themes Improved SQL Support We continued to progress towards (almost) full MySQL compatibility.

Deepthi Sigireddi
July 28, 2020
Debunking 3 myths about Vitess fault tolerance
Open Source

Debunking 3 myths about Vitess fault tolerance

Here at PlanetScale we hear some concerns about the reliability of Vitess and its capabilities with regards to data loss.

Abhi Vaidyanatha
June 10, 2020
Announcing Vitess 6
Open Source

Announcing Vitess 6

I am excited to announce the general availability of Vitess 6, the second release to follow our new accelerated release schedule.

Morgan Tocker
April 29, 2020
ACID Transactions are not just for banks - the Vitess approach
Engineering

ACID Transactions are not just for banks - the Vitess approach

Build systems that do not lose data. Vitess prevents asynchronous failure in two ways: (1) ensuring that the changes are saved locally on storage, with the redo log and binary logs safely written to disk and (2) making use of semi-synchronous replication.

Jiten Vaidya
April 29, 2020
Videos: Intro to Vitess—its powerful capabilities and how to get started
Open Source

Videos: Intro to Vitess—its powerful capabilities and how to get started

This video playlist featuring Vitess co-creator, Sugu Sougoumarane, is an excellent resource to learn more about the features and capabilities of open source Vitess.

Abhi Vaidyanatha
April 23, 2020
PlanetScale migrates open source Vitess test suite from Python to Go
Open Source

PlanetScale migrates open source Vitess test suite from Python to Go

It's easier than ever to contribute to Vitess. The test suite migration from Python to golang makes Vitess more developer friendly.

Deepthi Sigireddi
March 20, 2020