# How to perform schema changes in ScyllaDB?

**URL:** <https://forum.scylladb.com/t/how-to-perform-schema-changes-in-scylladb/4531>\
**Category:** ScyllaDB\
**Tags:** data-model, cql, raft\
**Created:** [February 23, 2025, 6:27am UTC](https://forum.scylladb.com/t/how-to-perform-schema-changes-in-scylladb/4531 "2025-02-23T06:27:36Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Guy](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.scylladb.com/guy/32/9_2.png) [@Guy](https://forum.scylladb.com/u/Guy)\
**Post date:** [February 23, 2025, 6:27am UTC](https://forum.scylladb.com/t/how-to-perform-schema-changes-in-scylladb/4531/1 "2025-02-23T06:27:36Z")

</div>

> [@](#):
>
> [**Originally from the User Slack**](https://scylladb-users.slack.com/)
> 
> ![Roman_Hargrave](https://us1.discourse-cdn.com/flex016/uploads/scylladb/original/2X/a/a5483b4f278ae9b4929f31d29ea8472ccc8b7888.png) **@Roman\_Hargrave:** maybe we’re missing something obvious or just haven’t tested this by hand, but what is the best way to handle schema changes in a service with multiple instances, e.g. do we need to find some way for the instances to elect a migration runner? in most of our other systems, we are able to start a single pilot/setup/config instance before rolling out the whole deployment, but that’s not an option in this case.
> 
> ![dor](https://us1.discourse-cdn.com/flex016/uploads/scylladb/original/1X/27b698a3e588f84cb82a722e458d31c997a48bed.jpeg) **@dor:** You just send the CQL statement. Schema changes are transactional and Scylla uses raft and leader election underneath
