It is an ideal database to use online learning environments and SMEs. It works well with Moodle, the open-source learning solution, and is the defacto standard for that product as Moodle is written in PHP which generally goes hand-in-hand with MySQL. As it is an open-source and free solution it is an economical method of storing important companies or small business data. At the same time, it offers a rich set of functions comparable to other large-scale enterprise solutions such as SQL Server and Oracle.
IT Consultant at Woohoogeeks
Free, cost-effective, with a powerful plethora of tools
Pros and Cons
- "Like other databases, it has a rich set of functions, such as stored procedures and its own procedural language, which is akin to Oracle SQL. It also has trigger and cursor commands you would expect with a good database language."
- "MySQL tutorials and guides could be improved. Often they are too complex for someone with no database experience to understand."
What is our primary use case?
How has it helped my organization?
MySQL is easy to configure, use, and implement. It is free, and cost-effective, with a powerful plethora of tools. It has improved my organization for my clients using Moodle and MySQL databases, as problems are usually easier to fix quickly, and the database resources can be optimized, easily. Even though it is not as sophisticated as SQL Server and Oracle solutions, it is the database of choice for most Moodle implementations. It has a history of reliability, which is always useful in a business environment.
What is most valuable?
The Cross-platform support for MySQL is great, as you don't need to worry about which platform or operating system you need to install the platform. This allows for interoperability.
Like other databases, it has a rich set of functions, such as stored procedures and its own procedural language, which is akin to Oracle SQL. It also has trigger and cursor commands you would expect with a good database language.
Views are updateable, which is useful when you need to amend a specific view of data for different circumstances.
It has it's own Data Definition Language (DDL), and provides an Information Schema, to view what is "under the bonnet" of your database.
What needs improvement?
MySQL tutorials and guides could be improved. Often they are too complex for someone with no database experience to understand.
It is not an easy database to learn for the novice, and very often users need to take a course, employ the use of an online tutor, or IT professional to assist. Also, it is known that it is often difficult to locate guides for specific functions for developers.
It might be good to have some way of creating web services easier, rather than having to write a User Defined Function (UDF) in PHP.
Buyer's Guide
MySQL
August 2025

Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: August 2025.
865,295 professionals have used our research since 2012.
For how long have I used the solution?
I have been using MySQL for about 10 years.
What do I think about the stability of the solution?
MySQL has a reputation for stability, and that is one of the reasons it is so popular. Because it is easily available, just works, and can be integrated reasonably easily into other software, it is often the default platform of choice.
It has been around for years, and chances are it will be around for the next 10 years or so, as new versions continue to evolve.
What do I think about the scalability of the solution?
MySQL is scalable for SMEs and works on a number of different operating systems.
How are customer service and support?
I have not had many issues with MySQL in the past, so I rarely use the support service.
Which solution did I use previously and why did I switch?
I have used various databases in the past, but for my current business needs, MySQL is ideal.
How was the initial setup?
It was a simple setup, as it was included in the Moodle installation process for implementing learning sites.
What was our ROI?
ROI is not applicable, as MySQL is open source and is free, so you could say it is only the investment of implementing the database in your environment.
What's my experience with pricing, setup cost, and licensing?
Pricing depends on the size of your business. For an individual to SME sized business the MySQL solution should be adequate for your needs. Setup costs are minimal.
Which other solutions did I evaluate?
Yes, but for Moodle Learning sites, SQL Server is more complex, and is not multi-platform, Oracle is not recommended for Moodle, but the nearest to MySQL is ProstgreSQL. MySQL is reliable and easy to use.
What other advice do I have?
You do need to have technical knowledge of databases in general, but MySQL is not too difficult to learn if used alongside PHPMyAdmin, but there are other tools you could consider, such as MySQL Workbench.
Which deployment model are you using for this solution?
Private Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Other
Disclosure: My company does not have a business relationship with this vendor other than being a customer.

COO at a tech vendor with 1-10 employees
Cost-effective, good performance, easy to use, and the cross-platform capabilities are nice
Pros and Cons
- "What I've been most pleased with is the cost point, performance, and ease of use."
- "The analytics features are in need of improvement."
What is our primary use case?
The primary use case is as a reporting solution, data collection, data manipulation, and similar tasks. We install MySQL on Linux and Windows machines for testing our enterprise application.
We are a solution provider and this product is part of our offering to our clients.
How has it helped my organization?
MySQL hasn't really affected our organization, specifically because we primarily use it in a consulting model.
What is most valuable?
All of the databases basically have the same set of features.
What I've been most pleased with is the cost point, performance, and ease of use.
It is very easy to configure, it's easy to deploy, and it's cross-platform capabilities are quite nice.
What needs improvement?
The analytics features are in need of improvement. They aren't as far along as the capabilities that you have in terms of analytics for SQL Server and Oracle.
For how long have I used the solution?
I have been using MySQL for about five years.
What do I think about the stability of the solution?
I've had no problems with stability and its recovery processing, error processing, and things along those lines have been fine. We always use Java applications and the JDBC drivers work fine.
I haven't had any issues at all with its reporting or its transaction processing, or anything else.
What do I think about the scalability of the solution?
For our use-cases, the scalability is fine. We haven't seen any issues and we're processing probably hundreds of millions of rows each day. We're not into the billions or tens of billions, so we're probably a medium-to-low use case.
Most of our instances are single-instance databases, so I haven't had to deal with its clustering capabilities or distributed database feature set.
Our clients vary in size, although we generally operate as a small system inside a major organization.
How are customer service and technical support?
I have never had to utilize technical support. There was never an issue that I had to call in.
Which solution did I use previously and why did I switch?
I use a lot of databases including MySQL, Microsoft SQL Server, Oracle, and PostgreSQL.
The performance of SQL Server and Oracle is better than MySQL. The two alternatives have other features, as well.
How was the initial setup?
The initial set up very straightforward. MySQL is easy to deploy and very easy to configure. We can literally bring up instances in minutes.
What's my experience with pricing, setup cost, and licensing?
This product has a good price point.
Which other solutions did I evaluate?
We had been on SQL Server and Oracle, and a subset of our customers wanted us to switch and use MySQL. We explored what that transition would take and then implemented it.
What other advice do I have?
My advice for anybody who is looking into implementing MySQL is to start by carefully evaluating their use cases. One of the things that we found is that MySQL didn't necessarily have all of the flexibility for JSON and XML processing at the time. I know that they've improved it, although it's not quite the same as what you see specifically in Oracle. So, the customer has to evaluate that. For straight-on basic transaction processing, it's worked out just as well with few issues from SQL Server to MySQL or from Oracle to MySQL.
For my use, I'm fine with what they have. I'll be interested in what they'll provide in analytics, as well as JSON and XML processing if that's even on their roadmap. For right now, it's really not an impact on my use case.
If I were rating SQL Server or Oracle then I would rate either one a nine out of ten. The only difference is that they do perform better than MySQL, although they don't perform so much better than it's relevant.
I would rate this solution an eight out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Buyer's Guide
MySQL
August 2025

Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: August 2025.
865,295 professionals have used our research since 2012.
Product manager at Metrodata Electronics Tbk PT
Has a simple and user-friendly installation
Pros and Cons
- "The one interesting thing about this product is that it is open source. It comes from an open source product. MySQL has been positioned as open source, but it also provides support."
- "If the customer is already using or has already used Oracle for a long time they will know the look and feel and the character of this database that can fit into their business."
What is our primary use case?
We sell MySQL to customers who need to build second tier applications, not their core application. For some of our customers, when they are planning to build their second tier application, they will choose MySQL rather than Oracle which is more expensive.
What is most valuable?
The one interesting thing about this product is that it is open source. It comes from an open source product. MySQL has been positioned as open source, but it also provides support. Therefore, for a senior level product like MySQL it is different than a product like MariaDB or MongoDB which are also open source databases but they depend on the community for support.
People just assume it is less expensive. The product is not expensive. But they also have a strong principle behind data backup and supporting that product. That's why it's quite interesting, because it's open source but it has a principle behind it.
What needs improvement?
In terms of what could be improved, some of the features that Oracle has, MySQL also has. Like if a customer is looking for a high availability solution, a security solution, a monetary solution, they can have all that in an expensive product like Oracle but they can also have it when they're using MySQL.
Every product has their own pros and cons, and also has their own market. So if the customer is already using or has already used Oracle for a long time they will know the look and feel and the character of this database that can fit into their business.
They will not choose MySQL over Oracle if they already know about Oracle. But if they start to build a new application before they are creating a secondary application then they may not be familiar with Oracle and they will try MySQL. Maybe they will like it because they will see that this database also has complete features. If they try Oracle they find the same features but different pricing. In certain things, MySQL cannot have the same benefits as Oracle but for some customers who are already using Oracle, you're not going to move to another product even if it's more expensive.
And MySQL is a cheaper product.
That's why I say that MySQL has many of the same features as Oracle. Both of them have high security.
The customer that comes from a small or medium business will prefer to choose MySQL rather than the Oracle database because they already know that this product is best for their business because it is not expensive compared to Oracle.
Oracle does have different versions with different prices. The cheaper is called the Standard Edition. And the most expensive is the Enterprise Edition.
MySQL is comparable to the Oracle Standard Edition if we compare peer to peer. But the difference is that the Standard Edition doesn't have features like the Enterprise edition. But the high security and the high probability are not in the Standard Edition. But MySQL will have it. It will have all those kinds of features with a lower price. Because the Standard Edition is more expensive than MySQL.
Every kind of enterprise company has a core application on which their business depends. Mostly they will just choose the Oracle database. Why? Because of Oracle database's capability to handle the big workload for enterprise businesses. I think that will become their priority and MySQL will not be an option for them.
But someday I would like to see the enterprise companies changing their mindset. If you are talking about core applications related to the high workload in the future, they can choose MySQL as well. Maybe not now, because right now they still see MySQL as for small/medium business and not for the enterprise business. But I hope in the future MySQL can be seen as on the same level for their database.
That will mean that all enterprise companies can have two options when they are choosing a database solution for their core application; either Oracle database or MySQL.
For how long have I used the solution?
I'm a reseller of MySQL. I've been selling this product for one or two years.
What do I think about the stability of the solution?
In terms of stability I think MySQL is categorized as a stable product. We have customers who are using MySQL as its database as an online application and it's like an online store. So it means that the work is quite heavy but we are using MySQL for it.
What do I think about the scalability of the solution?
In terms of scalability, because the application is online, MySQL grows when their business grows and expands with the system. They may need to add more servers, but when they add more servers it means MySQL also expands.
MySQL has that kind of capability - when the servers grow they have some kind of clustering method or clustering concept, which makes it scalable onto several servers. So it will follow the growth of the servers to cover the business.
How are customer service and technical support?
I have been handling Oracle products for more than 10 years so I know about their kind of technical support characteristics.
For MySQL, when the customer has a problem they get their support from the Oracle portal. That means, the manual of support is online and the customer needs to register on the portal and if they have some issue or some problem using the product they need to create a ticket, and escalate or submit the ticket to the portal. Later on, they will get support from Oracle support which is worldwide.
They have their own SLA for giving support because they apply a severity level depending on how you categorize the error.
The highest severity is severity one. I think there are three or four levels. When the problem is not income to the business, you can categorize as a level three, it's a normal error. But if the error or the condition is impacting the business you can assume that is a severe one. So if you create a ticket and mark it as severe one then Oracle will directly contact Oracle support. They will contact you to help you to solve the problem within five minutes.
How was the initial setup?
The initial setup is categorized as a simple and user-friendly installation. It is not complex.
I have experience installing Oracle, and if you just do the default install without too many customization, you can finish it in about one or two hours. For MySQL I think it is one hour to complete the installation.
What's my experience with pricing, setup cost, and licensing?
In terms of license cost, I think the one that we are selling for MySQL is not a perpetual license like we are selling for the Oracle database.
The Oracle database license we are selling is on a perpetual basis. MySQL has that too, but for MySQL we are selling only the support.
That means that the subscription we are selling for one year consists of software support for MySQL.
That's the difference between Oracle and MySQL.
What other advice do I have?
My message to our customers out there is that you want to get a good product. A good product in terms of the cost and an effective solution. But you also need some guarantee that this product will be supported by the principle.
Because there are so many cheaper products out there but they don't have principles to support the product. They rely on the community for the troubleshooting.
So I recommend to the customers to try this product. MySQL comes from open-source so it means it's a cost-effective solution. But the important thing is this product has its own principle that is supporting this product. It means you don't have to worry as long as you have a bit of a principle behind you to cover and support you. So you can use this product with less worry because you have a principle behind you. That is my message to the customers.
On a scale of one to ten, I would give MySQL an eight.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company has a business relationship with this vendor other than being a customer. Reseller
Open-source, easy to install, and has good documentation, but scaling it can be difficult
Pros and Cons
- "The most valuable features are that it's free and the documentation is good."
- "In the next release, I would like to see the scalability features improved to allow you to configure it and reduce the complexity with the configuration, making it easier for the end-user to scale. Make it as simple as it can be."
What is our primary use case?
MYSQL is our main database. We use it for every project.
I use it for storage procedures, SQL administration, and database administration.
We also use it for the development of reports, and projects that are deployed for our customers. It is also used to develop applications.
The majority of companies use it for their development projects.
How has it helped my organization?
It's free. I'm in a big organization, with more than 100,000 employees. If you have to buy a database management system for every project, it would be very expensive.
Considering the cost-free option, you can use it for POCs,(proof of concept projects), and you can deploy it for customers to reduce project costs. The principal reason is that it is cheap.
What is most valuable?
Mysql is free : it's an open source project, so you can use it with no cost.
Mysql is well documented, and has a big community.
MySQL adheres to the current SQL standard, although with significant restrictions and a large number of extensions. Through the configuration setting sql-mode you can make the MySQL server behave for the most part compatibly with others like IBM DB/2 and Oracle.
There are a number of convenient user interfaces for administering a MySQL server.
MySQL has supported the storing and processing of two-dimensional geographical data. Thus MySQL is well suited for geographic information systems applications.
MySQL supports the ODBC interface.
For client programming you can use, among others, the languages C#, C, C++, Java, Perl, PHP and Python.
What needs improvement?
I would like to see a feature added to be able to handle high availability, which would allow us to scale the database or the system on many platforms.
Scalability has to be improved, as you have only one instance of the application, or two, or more instances at max that are connected on one instance of MySQL.
In the next release, I would like to see the scalability features improved to allow you to configure it and reduce the complexity with the configuration, making it easier for the end-user to scale. Make it as simple as it can be.
Add the possibility to define custom data types
Add OLAP and backup capabilities
For how long have I used the solution?
I have been using MySQL for more than five years.
What do I think about the stability of the solution?
It is stable, and in fact, it's more stable than PostgreSQL. Also, recovery is faster.
What do I think about the scalability of the solution?
Scalability is difficult. You can scale it horizontally, but once you have many instances, it is difficult.
You can improve the server, resources that are available, and the processor is good but if you want to scale it on many instances than it is a bit complex.
We use it for customers. We have 10 instances of MySQL independently, on the project we are currently working with.
How are customer service and technical support?
It's an open-source solution. There is documentation available on the internet, that provides enough to resolve issues quickly.
How was the initial setup?
If you are a technician with practice, there is no issue, it's easy to handle. The documentation is available on the internet. You have everything you need quickly if you are autonomous.
It's easy, you just download it, install it and click next until it's complete.
What's my experience with pricing, setup cost, and licensing?
It's an open-source database management system that can be used free of charge.
What other advice do I have?
I am not using the user interface because I'm a developer. Generally, I just try to find how to use the command-line interface to access what I want for the system.
Oracle is still the best, but it's too expensive.
Before purchasing this solution, know the needs of your environment and be sure that you don't have to scale it. If you want to scale it you will require more knowledge on the product and you will need more support for it.
If you have a little project with a thousand users connected to the instances, it will be able to be scaled. But if you are looking to be able to handle large volumes this is not a good solution for your needs.
If am comparing MySQL with other free solutions then I would rate this solution a seven out of ten.
Which deployment model are you using for this solution?
On-premises
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Google
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
IT Infrastructure & Data Platform Sr. Manager at a financial services firm with 1,001-5,000 employees
Lightweight with good performance, but deployment with clustering needs to be simplified
Pros and Cons
- "This is a lightweight product that is not demanding on the resources, which is what I think gives it the edge."
- "The product is a little bit complex and it is difficult to find sufficient documentation."
What is our primary use case?
I am a senior manager of the infrastructure team and MySQL is one of the products that I work with. We use it in an e-commerce portal. The database is light and everything works smoothly.
What is most valuable?
The performance is great.
This is a lightweight product that is not demanding on the resources, which is what I think gives it the edge.
What needs improvement?
We faced some details in clustering, although this may have been because we did not have enough knowledge about MySQL clustering. In general, an easier implementation for clustering would be an improvement.
The product is a little bit complex and it is difficult to find sufficient documentation.
For how long have I used the solution?
We have been using MySQL for approximately six months.
What do I think about the stability of the solution?
We have not had any problems with stability.
What do I think about the scalability of the solution?
MySQL is easy to scale.
How are customer service and technical support?
We have dealt with Oracle support regarding other products such as Oracle Database and Oracle WebLogic. I believe that it will be of the same standard, although I'm not sure.
I am not a technical person but my understanding is that they are competent.
My complaint about them is that when we have a problem, we have to explain the same thing many different times to different engineers. Every time we engage with a new engineer, we have to start all over again. This is a nightmare that we chased three months ago.
Which solution did I use previously and why did I switch?
In addition to MySQL, we use Oracle and Microsoft SQL Server.
Oracle is an enterprise-level product but it is very straightforward to install and it has sufficient documentation and guides, which we did not easily find for MySQL.
How was the initial setup?
Implementing clustering depends on a few different layers or different components. The clustering layer handles requests from the applications, and it is all a bit more complex than Microsoft SQL Server or Oracle.
The design, review, and deployment took approximately one week.
What other advice do I have?
At the moment, because of the issue that we are having with the clustering, I may not recommend MySQL. It would first need to have the clustering problem fixed and then have a sufficient deployment guide.
I would rate this solution a seven out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
CTO at Translucent Computing Inc
Good beginner base but it should have better support for backups
Pros and Cons
- "This specific version of this MySQL has been battle tested for a long time. Any issues are known issues and we pretty much don't have any problems when they're in production. So it's very stable."
- "In terms of what I'd like to see in the next release, one thing that's always missing is dash boarding. There's no real BI tool for MySQL, like there is in Yellowfin and all the different tools that you get. They all have MySQL connectors, but there's no specific BI tool for MySQL. These open source projects have sprung up, but they're more general purpose."
What is our primary use case?
We use multiple models here because we do full development. What we deploy on MySQL is from the Helm chart or it's a Dockerized deployment of MySQL. So we're using the Helm stable chart right now. That's sort of the easiest way to deploy it - to say just one command and it bootstraps your whole database within your classical means or cluster. You can do it locally with mini-crews or developers, for organizational use, or Kubernetes. It's single-node Kubernetes.
Also, you can just deploy MySQL locally with a Helm chart. Regarding production, we have a kind of automated process which is similar to what Spinnaker deploys, with a Helm chart as well as within the cluster. Some other solutions we don't run within the cluster, we use the Cloud version of the database which is Cloud SQL, Google Cloud, and AWS. Those are fully managed ones, of which there are two versions. We have our self-managed version which we run locally and with our DEV cluster and then there is production, as well.
We also use a self-managed version since every cloud provider offers MySQL, even AWS. It depends on the client's needs, how flexible the client is, and also how comfortable they are with MySQL.
We either go with our managed version or the Cloud version. Both are supported because today the Mica server that's actually accessing the database or the piece of software just needs a connection string, it doesn't care if it's running within the Synchronous Cloud. If it's running somewhere else in the Cloud, it's still a private connection on the same network.
So the only differences here are in terms of money costs and whether it's managed or not managed. So for local development, you don't want to have a managed database in the Cloud. You don't need to be tethered to the Cloud, you'd rather just deploy locally. And because we have the same deployment scripts that run locally in DEV and testing, we use the same Helm chart and the same Docker version with MySQL to distribute that through our DEV environment to test the bills and run the test and there is a full QA environment for teaching, as well.
What is most valuable?
I treat these products kind of as a throwaway versus what a DBA would be. From an organizational point of view, it's difficult to actually define the most valuable features because we have so many different databases. For some of them, Postgres for example, which uses MySQL, is just personal preference with is no real difference. Unless you get to really high volumes or through-putting. So in our case, because of legacy reasons, we started using MySQL, which was a popular database. It's not a bad database, so there was no reason for us to change it to the Postgres. We do use Postgres right now for other tools, but for a main database for application purposes, we still stick to MySQL. And I think it's just because of legacy, there's no real advantage of one over the other right now.
We built up the scripts already. Because once you start integrating the scripts into your company, your deployment scripts, test scripts, etc. you just leave it over time because it takes effort to change. But in terms of advantages or features, you can go feature by feature with any database and if you add up the totals, there's no real advantage here between Postgres or MySQL.
What needs improvement?
As for what can be improved, right now we don't use the MySQL cluster. There is a MySQL cluster that you can run in a standalone mode, like a single database or you can do it in a cluster master-slave implementation. The cluster is not the best when it comes to MySQL. That's why we switched to MariaDB. For that simple reason that the cluster there is better. It's more manageable and it's easier to work with.
We decide what to use depending on the needs. For example, if we need to mount something in a cluster mode, we use MariaDB, which again, is a Dockerized solution with a Helm chart as well, and it's very easy for us to deploy and manage, and also to scale when you just increase the number of slave versions. So MySQL doesn't have that great support when it comes to clusters. You can definitely use MySQL for that too, both support clustering, but the MariaDB is better.
Additional features that I would like to see included in the next release of this solution include better support for backups. Because if you go with the MySQL Percona version, it gives you the tools to back it up securely. The vanilla version of MySQL doesn't have that. It actually does have it, but it is just really poorly executed. I would improve the backup system as well as the encryption. To make it smoother right now takes too much work. It should be a little bit smoother to backup the encrypted data the way you want it and have the ability to push it anywhere you want. That is not part of it right now.
Now it is a database, so you don't know what you're going to do with it. It's difficult. You're just going to come up with solutions. But I think you can generalize here and come up with really simple solutions, which we have already in MySQL. That's probably the one thing that I would try and push right now for people to switch. But people are still not biting, because if you go with the managed version, then all the backups are taken care of for you by Amazon or Google or Microsoft. Then you really don't care. But for us, since we're doing it locally, self-hosted, we would like to have better tools for locking up the data.
Right now, one aspect that is also linked to backups is running things in a crosscheck with semi-managed solutions. This requires a bit of a context. Since we're running things within the clustered communities, we're kind of pushing the Cloud into the cluster. We also want to push some of the tools for the database into a cluster, as well. So these are what we call Kubernetes operators. And there's MySQL operators that were first developed by the community. Those kind give you the ability to backup data within the cluster. So now you have a fully managed solution running from your cluster. These are called MySQL Kubernetes operators.
We are looking into those right now to upgrade our solution, which would mean that we can just execute our backup natively within Kubernetes, not via special scripts. This would make it much easier to actually deal with any kind of MySQL issues within the cluster, because it would be cluster-native. That's what the operators are for.
I think Oracle just created a really good one. It surprised me that they have this. It's not because of Oracle, but they got pushed by the community and actually created the MySQL Operator for Kubernetes, and that's what we're moving towards.
This is going to give you an ability to have a cloud-managed solution within the cluster. And then you can ask the MySQL Operator for the database. They'll partition the database and give it to you. So it will change the nature from you deploying it to you just asking the cluster to give you a database. It's a fully managed solution right from the cluster.
So that's what we're heavily looking into right now. We'll be switching to using Kubernetes MySQL Operators. It's a high-availability cluster running within the Kubernetes cluster.
Right now we're pretty good with that. It's working fine. We're trying to find some time to actually release that globally everywhere. That's where I am right now.
But in terms of technology, if you give up Oracle, you just go to a MySQL operator. That's the one we're using, what we're actually looking at - to create, operate and scale mySQL and sell it within the cluster. This idea of having a cognitive MySQL becomes much easier to manage within the cluster, as well. So you don't have to go with the cloud solution with AWS or Google cloud or Amazon MySQL or the Microsoft version.
The Oracle SuperCluster is the Oracle MySQL operator. That's what we we are looking into a lot right now. Mainly because it does backups on demand - it's so easy to backup. You can just tell Kubernetes to backup and you don't have to run special scripts or special extra software or codes to back it up. You can make the backup as you would do anything else. Send a backup or some other data source or insert an Elasticsearch into it here. Just say "Kubernetes, back it up" and you know Oracle has this adapters within the cluster to back it up for you taking increments or different companies. So that makes it really nice and easy to use and to deploy.
With that kind of solution you can ask to class or petition the database how you want. So again, it changed the nature of the kind of push-to-pull second nature system. Are you pushing your containers to a cluster? You just say cluster, "give me a database" and the class gives you the base partition database, creates a database in a secure manner, gives the connection to the database, and you're done. Then you can back it up on a schedule on to any backup switches. It's much easier. So once this goes, it is going to be widely adopted, which it should be. But I think people might not have the tech skills right now. But once it's adaptive, maybe in a few more months, it's going to be the number one solution for everybody.
In terms of what I'd like to see in the next release, one thing that's always missing is dash boarding. There's no real BI tool for MySQL, like there is in Yellowfin and all the different tools that you get. They all have MySQL connectors, but there's no specific BI tool for MySQL. Open source projects have sprung up, but they're more general purpose, like Postgress, a MySQL kind of database, a relational database. I don't see any really nice tool like Cabana for elastic searches that I can tell clients to use because it would be too technical for them. They would have to have more technical engagement with writing the course, drag and drop, and creating a graph like in Power BI where you just connect with DIA.
So I'd like to see the grab and drag and drop tables, nice beautiful graphics, and pie charts. You don't necessarily have that with MySQL like you have other solutions, which are really cost prohibitive for some clients. It'd be nice to have an open source solution for that. Decent solutions. I mean decent that I can take to clients. It's so technical. They want to drag and drop.
For how long have I used the solution?
I have been using MySQL now for five or six years.
What do I think about the stability of the solution?
This specific version of this MySQL has been battle tested for a long time. Any issues are known issues and we pretty much don't have any problems when they're in production. So it's very stable. When we picked simple switch demand, again, these things came up. But it was quickly resolved. So I guess that's the benefit of going with open source and seeing all those problems ahead of time in source code and having the ability to fix them.
What do I think about the scalability of the solution?
Since we have MySQL specifically, and we have to use it in many different environments, dev, testing, and production. All those different people are using it. Developers, QAs, automated testings running against that. In production we have many different users, so we have different meaningful products that are already running. For example, gotoloans.com. It's a loan application site in Canada that is serving a lot of users daily and is backed by MySQL and Elastic SQL databases. So we're using it for high volume and low volume. We have it in many different projects and many different environments.
We use it in different environments, the production also, and many different products as well.
We do have plans to run everything as a cluster, and probably will slowly switch to MetaDB. That is something we're doing right now. We also have plans to switch it to the managed version as well for production deployments, for the simple reason that we're trying to offload as much as we can from the DevOps people. So if offloading that management database from them will help them, then we'll do it.
Also, there are clients that have preferences when it comes to where the database should be running. For example, one of our major clients wants to run specifically in our database because we built it for them and they're comfortable managing it. You're always more comfortable having a managed version. So if you have a small team with a managed DBA, even though it's more expensive and there's always some issues coming up with it, you can just let Amazon manage it for you, and you don't even have to think about it. You could do the backups and if something happens, they can restore it. And you can scale as much as you want, as well.
In terms of cost, there are different flavors of it. It depends on the solution. Locally, as I said, MySQL is going to stay the way it is right now. We're not going to have a cluster version, because for development we just need a database. You need to have a scalable database or clustered.
So MySQL is going to change. We're in the process of transitioning the production versions to cluster versions for some of the projects because they have more volume. We can see that because of the volume of users, and how many queries they do on a daily basis, they would benefit from having a cluster versus a SQL database. So you can have a master to master cluster, which you can have separately. You can actually manage your read and write separately, and then optimize. So you can give more power to people, to certain queries, spreading across the cluster. So all those sorts of things come with the cluster database. That's going to improve performance.
One of the things that we're doing is looking at the short version of MySQL, which is a new thing. This means a shared database. Elasticsearch is made up of shards. This is a different way of thinking about relational databases like MySQL. Traditionally, MySQL or relational databases, have been crafted by having an instance of equal slave to equal master. You have many slaves and many masters, as well. Now the sharding makes the database a little bit different, and it's more usable for us in terms of the way we deploy things. So we're looking right now at MySQL sharding as well, and a few of the different flavors of that so that we can scale it horizontally. Instead of actually creating an instance of MySQL, we can actually spread across multiple different shards across many instances.
And it's also cheaper as well. Once you start getting into the shard world, it's really cheaper to deal with some of these issues, like clustering issues. So it's more cost-effective.
How are customer service and technical support?
I have not been in touch with support because any issues that came up, we really just resolve them because it's open-source, so if you look at the code, then you can solve it. There's also lots of community engagement in these databases. There are millions and millions of forums online. So if there's a problem, everybody will be on it trying to fix it. So there are no real major issues here.
How was the initial setup?
The initial setup is straightforward because we're using Docker. So we Dockerize not only our database but the applications, as well, because it's really easy to play as a Docker container, and then tour them to the Kubernetes cluster. It's very easy for us to manage it. And also, we have backups on top of that. So we have a schedule, and a job running, always backing up the system with secure backups. So it's actually very straightforward to get it up and running.
Deployment takes seconds. That's why we can include some of the companies, because we figure a way to do it simply, and you don't have to deal with all the complicated SQL servers, and you can bend a lot into Microsoft.
So for us, deployment is trivial, especially when you use the cloud version. For example, for our database, or cloud SQL, again that's trivial, just a simple deployment. You're up and running within less than a minute, five minutes maximum. Locally, people just deploy those databases every day when they build stuff. Again it takes a few seconds to get that going.
What was our ROI?
Since we’re running it ourselves, it's our own flavor of MySQL, for dev, and QA, staging, production environments, that cost is basically a part of their running between this cluster. So I can't give you a fixed cost, but I can give you the cost of the entire cluster. There are many nodes in a cluster, and there's many different parts continuously running it. So to fully utilize the cluster, we put everything in it and just try to maximum each node.
So you can have a MySQL database beside a Java Microservice and Angular applications on the same node, and using the same kind of resources. So it would be difficult for me to kind of break it down. Obviously I'll do a deep dive, and I'll look at it, in terms of, what percentage of the CPU is being used by MySQL.
Now when it comes to the Cloud versions, obviously there's a fixed cost with that. So for example, one of the clients uses our database, they chose to go with the extra large version of the ECQ's, and there's a price for that. And you can just get a price quickly, and there's a whole chart of pricing there.
So that's based on clients and their comfort level. We can tell them exactly what performance we're requiring here, and then say, what is the minimal thing we need here, in terms of CPU resources and connections? So that's what you really need for just a cloud version of it. Once we define that, then we tell the client, this is what you really need. You can get away with a smaller version of the virtual machine by using something bigger. To be comfortable they decide to do it. So I'm dealing with the pricing, and the pricing is transparent.
I have all the separate pricing for the databases as well. And from that, you can figure out what the cost is.
There's no licensing fees here because it's open source. So the only fees are really just for using the Cloud resources, even if you go with managed or non-managed, you're still using the Cloud resources. You can be more frugal if you're running it yourself, versus what Google or Amazon will do for you. It'll be a little more pricey to go with them, but because it's a managed solution, you do have that peace of mind, because they're managing it for you. You just connect with it and just talk with it.
But in our cases, we deploy it, we manage it, we back it up, we do all that stuff. So there's more work that we have to do, but a lot of time we eat up the cost because it's not an expensive thing to do. So it can be more cost effective running within the Coud, than in a non-managed version, self-hosted version.
At the end of the day, Google and Amazon are still making money, because it doesn't matter if you're running it yourself or it's managed, it's still using the Cloud. It's the same CPU and same RAM.
What's my experience with pricing, setup cost, and licensing?
So we jumped from version 5.6 to 5.7. That's not the latest version. The latest version is 5.8. We didn't move to eight for the simple reason that there's lots of code-based on 5.7 and there's no incentive for us to change right now. So a lot in the industry have not migrated to version eight yet. Oracle is having difficulty committing people to actually go with that version right now.
MySQL has been battle-tested for years and years. So people were comfortable from 5.6 to 5.7. It wasn't just a minor change, it was actually a major change in terms of the databases. Now, once Oracle started managing MySQL, they didn't do a good enough job. That's when MariaDB was invented when they jumped from version five to eight.
There wasn't enough confidence in that. Because there's so much time invested in it. Because MySQL is not just MySQL, they give it in a cluster mode, when you have huge databases with lots of master-slave nodes. So it's just not a trigger for a DBA to move to a new version that hasn't been battle-tested like their 5.7.
So 5.7 is a good database. That's 1418 right now or something like that. I think that's the one we use in production. So for most DBAs it's difficult for them to change. Also with Google and Amazon, you can choose not to go back for 5.7. It is very easy to create a fully scalable solution with 5.7. So, there's no incentive for people to actually switch.
What other advice do I have?
The biggest lesson I would tell others is regarding the backups. Once you start doing it yourself, backing up becomes a thing. When we sign up the clients, we'll give them a set amount of backups daily and we always give them a little verbiage about how much data can be lost if the thing goes down.
Or for example, if you get hit somewhere, what is the last backup you did? How much are you willing to lose? Backups can become quite complicated, and that's something that you have to manage yourself. We have to come up with clever solutions to do runs within our Dockerized environments in production, which you usually don't get from the community. So we have to do it ourselves.
That became a thing quickly once we started going. But that was years ago. We resolved these issues on the way and we are still making them better over time - how we back up the data, the business, the compliance, where did the issue live, who should have access to that? All that stuff.
So backups are usually the thing that people don't think about. And that can bite you in the ass kind of quickly.
On a scale of one to ten, I'd probably give MySQL a seven. There's definitely room for improvement here in terms of tools that come with the product, the way we deploy it, and the way we back it up. In essence, it's a good beginner base. It's just, the tooling around the database needs a little bit more work. You just need to be fair because it is a good database. It's also an open-source database. You know you can get commercial products that Percona for a commercial version of MySQL or Aurora database MySQL. So if you go with that, then you would probably give a much higher score because you really don't see it at all. It's just close your eyes and click a button and it's there. You don't have to touch it at all.
For us, since we deal with it every day and try to compete with the companies, the small DevOps team tries to be as efficient as they can, and sometimes you have to build too many things around the solution.
The commercial products only have that because they put 20 to 30 people on JSON and they can give it to you faster. That's what Google can do because they're good at the tooling around the database. In the current requests of the work, MySQL Workbench is the default tool to interact with the database. Again, MySQL Workbench is an open-source tool that it gets directly from Oracle. It's okay. It's not the greatest. It gets the job done. It's not a finesse tool. It just gets the job done.
If you hide it behind a main service and you don't see it, it's great. You're good to go. People talk about Amazon RDS and how great it is. But that's a managed product. If you peel the layers and look at the SQL in there, they put a lot of work around that. It's fully scalable. The money used and the way they restructured that SQL database to actually give you that performance took a lot of work for the AWS people. So they're not going to share that IP with you. And they're definitely not going to release it because other people can pick it up, like Google. Then Google has Cloud SQL, as well. So they also have a MySQL version in there and they don't show you how the backup is, or how they actually manage it or scale it. You don't get that information.
So that's the trade-off between managed and non-managed or self-hosting. It's always that kind of battle, that fight. It depends on the money, depends on the client. If it's for a healthcare issue or one of the hospitals, you just have to decide what they want, what's the best for them and how they're going to be protected. So there are many variables that come into play. It depends on your use case. In general, it’s a good database, I have no problem with it.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
jmitchell@natbankmw.com at NBM
Easy to use with a straightforward setup but requires better replication
Pros and Cons
- "The solution is very simple. It's easy to use. That's the most important feature."
- "The replication needs improvement. It's becoming a native cloud product like Oracle DB or Cockroach DB."
What is our primary use case?
We primarily use the solution for the many small applications we use. However, we do not use it with our enterprise-level applications.
What is most valuable?
The solution is very simple. It's easy to use. That's the most important feature.
We do have it supported by various programs we run with it.
What needs improvement?
The replication needs improvement. It's becoming a native cloud product like Oracle DB or Cockroach DB.
For how long have I used the solution?
We started using MySQL in various products about 10 years ago when it was still an independent community product.
What do I think about the stability of the solution?
The solution has proven to be quite stable. We haven't experienced any bugs or glitches.
What do I think about the scalability of the solution?
According to our experience, it's not really an enterprise tool that you can easily expand and scale the way you can with, for example, Oracle. It's good for small to medium-sized applications. It is not ideal for very big applications.
We have a data center that uses the application and it isn't very heavy on traffic. It basically runs on its own. We only use it occasionally. It's like a co-operation management system.
We do plan to increase usage, but we plan on looking at different databases. We're in the process of researching how scaling up would work. Chances are, we'll need to move to a different platform.
How are customer service and technical support?
We've never been in touch with technical support. For us, so far, things have been working perfectly so there hasn't been a need to.
Which solution did I use previously and why did I switch?
This is the first solution we've used. We don't use any other product. It's very popular with the in-house program, as we advised them to stick with this application.
How was the initial setup?
We've used the solution for ten years and the setup hasn't changed much over time. It is, more or less, simple when you compare it to other databases.
Deployment takes less than an hour.
It only takes one person to maintain the solution. The individual doesn't have to be an engineer. They just need to be a support person.
What about the implementation team?
We don't need a consultant for the implementation. This is used by someone in our company that uses databases and has an average knowledge of the product. We don't even need a vendor. We can handle setup ourselves at this point. It's not like Oracle or other products that can be quite complicated.
What's my experience with pricing, setup cost, and licensing?
We use the community edition of the solution.
Which other solutions did I evaluate?
We didn't evaluate anything before choosing this solution. However, there are a few new products coming up that are growing in popularity and we will need to research them. Products like the Cockroach DB, Nuo DB, etc. are on our radar to be evaluated in the future.
What other advice do I have?
The most important thing other potential users need to do is to look at the use cases for this application and to evaluate how it's able to handle heavy loads, etc. Users should evaluate how it handles high-traffic. They'll need to ask themselves: is the solution usable for my applications?
I'd rate the solution seven out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Technical Director at Metrofibre Networx
An easy-to-install solution that is used for customer management authentication
Pros and Cons
- "I rate the solution's stability a ten out of ten since it has been running flawlessly."
- "The licensing cost of the solution is expensive, which MySQL needs to consider improving."
What is our primary use case?
We use MySQL for customer management authentication in our company.
What is most valuable?
The use of MySQL is really dictated by the software we use. So we have put software that dictates the use of MySQL and MongoDB. We think we've found the goal of the company related to strengthening its business systems.
What needs improvement?
Since we started the development, like, three years ago, it's just been improving, so there are no areas that need to improve. It is easy to use.
The licensing cost of the solution is expensive, which MySQL needs to consider improving.
For how long have I used the solution?
I have been using MySQL for three years. It's based on the call systems or based on the console.
What do I think about the stability of the solution?
I rate the solution's stability a ten out of ten since it has been running flawlessly.
What do I think about the scalability of the solution?
It works well. So, I rate its scalability a ten out of ten. Our company is managing hundreds to thousands of clients, but we use MySQL for different projects. So, around 50 users work on it.
In terms of increasing the solution's usage, I think we've done enough, like, stabilizing MySQL.
How are customer service and support?
Our company has contacted the technical support of MySQL. It was very easy to get connected to them. However, it cost us a fortune. For SMBs in South Africa, a thousand or ten thousand dollars an hour is a lot of money. It was expensive, but it was worth it.
Which solution did I use previously and why did I switch?
We have previously used a solution for location and mapping-related stuff. Our choice to move to MySQL was dictated by software. So, we use different programs for applications.
How was the initial setup?
The initial setup is straightforward. The deployment process takes a few seconds.
What about the implementation team?
We had to seek the help of some consultants to implement the product since there was some difficult stuff. But that was long ago. Nowadays, we avoid seeking help from consultants since it has become pretty simple. So, better experienced and well-trained people would do it for us. It's not a problem.
What's my experience with pricing, setup cost, and licensing?
I believe we have a few cluster solutions. I think that MySQL is a premium product. But I don't manage that part.
What other advice do I have?
The solution's documentation and support are awesome. Also, its speed has increased in the last few years. So, we have never had any issues with it. If there were any errors, then they were human errors.
Today with many other options, we stick with MySQL and recommend it to others. There are so many other things that are more suitable for different purposes, and I will have to do research to know more about them. MySQL has been around for a decade, so something cannot go wrong. Its big support communities make it easy to resolve problems since there is always somebody who can help.
I rate the solution a ten out of ten.
Which deployment model are you using for this solution?
Private Cloud
Disclosure: My company does not have a business relationship with this vendor other than being a customer.

Buyer's Guide
Download our free MySQL Report and get advice and tips from experienced pros
sharing their opinions.
Updated: August 2025
Popular Comparisons
SQL Server
Teradata
Oracle Database
PostgreSQL
Firebird SQL
SAP HANA
MariaDB
IBM Db2 Database
Faiss
OpenSearch
Milvus
InfluxDB
Qdrant
SQLite
CockroachDB
Buyer's Guide
Download our free MySQL Report and get advice and tips from experienced pros
sharing their opinions.
Quick Links
Learn More: Questions:
- Which solution do you recommend for embedding reporting? Why?
- Did you switch from a different solution to MySQL? Can you list a few pros and cons for making the move?
- Why are MySQL connections encrypted and what is the biggest benefit of this?
- Considering that there is a free version of MySQL, would you invest in one of the paid editions?
- What is one thing you would improve with MySQL?
- How does MySQL compare with Firebird SQL?
- When evaluating Open Source Databases, what aspect do you think is the most important to look for?
- Did you switch from a different solution to MySQL? Can you list a few pros and cons for making the move?
- Which database is the best for session cashing?
- Why is Open Source Databases important for companies?