# Moving from standalone Mysql 5.7 to Percona XtraDB cluster

**URL:** <https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832>\
**Category:** Percona XtraDB Cluster 5.x\
**Tags:** mysql, percona\
**Created:** [May 3, 2023, 1:56pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832 "2023-05-03T13:56:49Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![ahmadzadaa](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ahmadzadaa/32/10433_2.png) [@ahmadzadaa](https://forums.percona.com/u/ahmadzadaa)\
**Post date:** [May 3, 2023, 1:56pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/1 "2023-05-03T13:56:49Z")

</div>

We are planning to have HA for our standalone Mysql 5.7 server. Our first idea is moving from standalone mysql 5.7 to percona mysql with XtraDB cluster (either 3 data nodes or 2 data and 1 arbitrator), anyone can provide a well written guide describing how to achieve it? I would expect percoan blogs have one but cant seem to find (found some from almost decade ago and do not wanna rely on them)

---

<div class="post-metadata">

**Author:** ![Michael\_Coburn](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/michael_coburn/32/18_2.png) [@Michael\_Coburn](https://forums.percona.com/u/Michael_Coburn)\
**Post date:** [May 3, 2023, 4:16pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/2 "2023-05-03T16:16:00Z")

</div>

Hi @ahmadzadaa , welcome back to the Percona forums!

You ask a good question - are the blog posts on [Percona Database Performance Blog](http://percona.com/blog) still relevant after several years? The general answer is that YES they are still accurate and valid! I like this particular post as it discusses the main gotchas for those migrating from standalone to PXC:

> **[Follow these basics when migrating to Percona XtraDB Cluster for MySQL](https://www.percona.com/blog/follow-these-basics-when-migrating-to-percona-xtradb-cluster-for-mysql/)**
>
> Thinking of migrating your workload to Percona XtraDB Cluster for MySQL? Make sure to go through these basics. Jervin Real walks you through them. Read more

---

<div class="post-metadata">

**Author:** ![matthewb](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/matthewb/32/34_2.png) [@matthewb](https://forums.percona.com/u/matthewb)\
**Post date:** [May 3, 2023, 4:48pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/3 "2023-05-03T16:48:27Z")

</div>

Hello @ahmadzadaa, I definitely do not recommend 2 nodes + 1 arbitrator.

---

<div class="post-metadata">

**Author:** ![ahmadzadaa](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ahmadzadaa/32/10433_2.png) [@ahmadzadaa](https://forums.percona.com/u/ahmadzadaa)\
**Post date:** [May 3, 2023, 4:51pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/4 "2023-05-03T16:51:23Z")

</div>

oh, @matthewb can you please give reason? I did not find documents describing any drawbacks on that

---

<div class="post-metadata">

**Author:** ![ahmadzadaa](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ahmadzadaa/32/10433_2.png) [@ahmadzadaa](https://forums.percona.com/u/ahmadzadaa)\
**Post date:** [May 3, 2023, 4:57pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/5 "2023-05-03T16:57:32Z")

</div>

@Michael_Coburn to be honest I was hoping for more detailed guide, it does give good information but it is not like a guide which describes the whole process from A to Z with commands/examples. Of course I asked in case such guide/how to exists

---

<div class="post-metadata">

**Author:** ![matthewb](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/matthewb/32/34_2.png) [@matthewb](https://forums.percona.com/u/matthewb)\
**Post date:** [May 3, 2023, 5:09pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/6 "2023-05-03T17:09:55Z")

</div>

You are limited to 2 data nodes. If one goes down, you only have 1 available, thus decreasing you to a single point of failure. The arbitrator functions just like a node but without data. Thus, if you are going through the hassle of setting up that node, you might as well make it a data node.

---

<div class="post-metadata">

**Author:** ![ahmadzadaa](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ahmadzadaa/32/10433_2.png) [@ahmadzadaa](https://forums.percona.com/u/ahmadzadaa)\
**Post date:** [May 4, 2023, 4:43am UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/7 "2023-05-04T04:43:31Z")

</div>

maybe if there is no guide, you can give me some tips? I know some part like:

1. creating 2/3 secondaries for current primary we have
2. changing mysql packages to percona mysql packages on new secondaries( I wanna have main mysql untouched and ready to be used as revert mechanism if something goes wrong)
3. …  
From 3 step I am not sure how to do, I know I can stop all and try to bootstrap cluster with new nodes , test it and so on, But I wonder maybe there is some other proper way?

---

<div class="post-metadata">

**Author:** ![matthewb](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/matthewb/32/34_2.png) [@matthewb](https://forums.percona.com/u/matthewb)\
**Post date:** [May 4, 2023, 2:37pm UTC](https://forums.percona.com/t/moving-from-standalone-mysql-5-7-to-percona-xtradb-cluster/21832/8 "2023-05-04T14:37:10Z")

</div>

@ahmadzadaa,  
Using Percona Xtrabackup, take a backup of your existing MySQL. Copy this to new server, node1. Install PXC packages onto this server and configure it according to our docs. Bootstrap start this node. You now have a cluster of 1 using your existing data. Go to node2. Install packages, configure, start node2. Node2 will perform an SST and take a snapshot of node1 for itself. Now you have a cluster of 2 nodes. Repeat for node3.
