Consider providing ARM64 builds

Please consider providing ARM support!

Note: By Intel I mean x86-64 or x64 or x86_64 or AMD64 or Intel 64.
Note: By ARM I mean ARMv8 or ARM64 or AArch64.

Apple Macbook with M1 chip are becoming more prevalent. These machines do not use your typical Intel CPU but are rather ARM based.

Developers with M1 Macbooks can’t spin up percona database with a simple docker run because images stored in docker hub registry only has architecture type AMD64.

Apple sees Intel as legacy and as time passes by those machines will be phased out in favour of ARM. With that in mind ARM support has to come sooner or later.

Worth noting that the popular boards known as “Raspberry Pi” are also ARM based, so hosting percona database on those machines are not as easy as it should be.

Interestingly MySQL from Oracle actually do have ARM64 binary available. Please see links for more details:

4 Likes

Hi @vahid_shirvani

Thank you for being an active part of our community. Currently, we’re considering providing builds for ARM-based architectures. Unfortunately, I can’t give a date when this will happen.

For Apple M1, you can follow these steps to build the code.

For Raspberry PI, these are the steps to follow:

Thanks,

Pep

1 Like

I have done a great deal of work with Building Percona Server and Percona XtraBackup for the raspberry pi. You can check out details here: Raspberry Pi Bullseye Percona Server 64bit | Percona Community

I just completed builds for Server 8.0.30 and Xtrabackup 8.0.30

3 Likes

I will be updating my blog post to cover 8.0.30 as soon as both Percona Server and Xtrabackup 8.0.30 are GA.

2 Likes

Thank you for your work. As of today running Percona on ARM requires building binary from source, however my suggestion is that this should happen in the pipeline and binaries published through distribution channels to different package managers. The accepted answer by Pep_Pla suggests that this is on going work.

1 Like

Yes, we’re in the process of adding the ARM64 architecture to our build pipelines. This is work in progress.

3 Likes

Correct me if I am wrong, but this:

https://downloads.percona.com/downloads/Percona-Server-LATEST/Percona-Server-8.0.29-21/source/tarball/percona-server-8.0.29-21.tar.gz

Is from a percona distribution channel. Pep_Pla has pulling the source code from github. I don’t see what the difference is. Can you explain your statement.

1 Like

This command

apt install percona-server-server

would fail in ubuntu on Raspberry Pi because ARM64 is missing here Percona Repo

Yes I know that I could build from source with cmake but not is not the solution I was suggesting.

1 Like

Hi,
We have started our work with aarm64. For now we have created docker container with aarm64 support but it is still in testing. Here it is: Docker
It is based on rpms so for now we don’t have deb packages for aarm64
So if you want to try it you can just execute

docker run --name container-name -e MYSQL_ROOT_PASSWORD=secret -d perconalab/percona-server:8.0.30-22.1-arm64
4 Likes

I will jump in and start looking this weekend. Thank you for the update.

2 Likes

Hi,
Any chances of having Docker image perconalab/percona-server:5.7 for linux/arm64/v8 as well anytime soon?
It would be really helpful in order to develop in Docker Desktop for Mac.

Hi @Manuel_Molina - welcome to our Forum!

At this point this is highly unlikely. Percona Server for MySQL 5.7 is reaching it’s end of life later this year, and porting to a new architecture and platform requires significant engineering efforts. I strongly recommend developing new projects on version 8.0.

Thanks for the heads up about its EOL. We’ll think about the upgrade path.

Hello Team,
Do you have any updates on the binary/deb file for ARM64?

I would not expect anything soon.
Since they need 4-6 months to release a Build for Debian 12, which was freezed in Feb 2023.

Percona will weigh the adoption of Debian Bookworm against our own build processes, user demand, and our OS EOL policy. I would not expect APT support for this OS for at least 4-6 months.

We have now 4 servers with ARM Ampere ® Altra ® Q80-30 with Debian 12, but can not use percona anymore. We are forced to use mariadb. :frowning:

We provide ARM64 packages only for OL8 and OL9 and also we provide multiarch docker that can be used on arm-based systems

I am looking to get out from under MariaDB Enterprise’s extremes in costs. I am working on building out some test servers using Percona, but I am not able to get a supported Percona Server for MySQL 8 build working as we use Amazon EC2 Graviton Instances as our testing in MariaDB showed they are much more performant for their costs.
Is there a APT Repo for ARM64 yet? If not when is this expected?

@Greg_Smith

Posted Feb 2023: I would suggest that we will have PS8 build before end of Q2, as that is still ~4 months away

Only rpm packages are available for arm64 architecture yet.

Looks like, only RedHat users are able to compile from source.

It’s funny that OL9 is supported, even though OL probably has no future now that RedHat is no longer releasing its source. “06.2023”
Based on the other posts and answers here in the forum to the question about ARM, the answer is always the same.
Docker container or compile via the source code

We have come to the conclusion that we will not switch four large servers to Percona at a later date!
It’s a real shame.
Docker is not an option and spending hours trying to somehow get the source code to run on Debian 12 ARM64 is not an option.

Therefore we will work with the Community Edition of MariaDB.

I advocated for percona the last years and have now to admit, it was a stupid idea.

It is how it is, and we will move on without percona.

I think that Percona needs to get with the times a bit. With large scale ARM Server setups now in AWS, Google Compute, and Microsoft Azure, the only right thing to do would be to start compiling and supporting ARM64 architectures. I thought that MariaDB was slow to pick up on it, but still not having ARM ready versions is a bit ridiculous at this point.

1 Like