Small to medium-sized business usage. The main advantage is the very large user base. This enables users to fix about any issue by answering any question. From a technical viewpoint, MySQL is on par with the other open source database solutions.
Head of Business Technology at a tech services company with 501-1,000 employees
A large amount of software modules and plugins for rapid application development are possible. However, it does not stand out regarding scalability.
Pros and Cons
- "A lot of the software components have been trialed and tested for often more than 10 years."
- "The main advantage is the very large user base. This enables users to fix about any issue by answering any question."
- "It does not stand out regarding scalability. When the company size increases, the user base having actual experience with (very) large MySQL solutions is reduced."
What is our primary use case?
How has it helped my organization?
Due to the large user base, a large amount of software modules and plugins for rapid application development are possible. From an operational viewpoint, this is also a very big advantage.
What is most valuable?
The large user base and the amount of available plugins and modules. A lot of the software components have been trialed and tested for often more than 10 years. It is rock solid from that viewpoint.
What needs improvement?
It does not stand out regarding scalability. When the company size increases, the user base having actual experience with (very) large MySQL solutions is reduced.
Buyer's Guide
MySQL
December 2025
Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: December 2025.
879,371 professionals have used our research since 2012.
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
No, it is rock solid.
What do I think about the scalability of the solution?
Yes, other solutions have better features and better performance.
How are customer service and support?
Not applicable.
Which solution did I use previously and why did I switch?
No.
How was the initial setup?
The initial setup is very easy with very good online support.
What about the implementation team?
Implementation was done in-house.
What was our ROI?
Not applicable.
What's my experience with pricing, setup cost, and licensing?
When you know the setup will continue to grow, make sure you have the paid support.
Which other solutions did I evaluate?
MariaDB/Galera.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
ERP System Analyst at a tech services company with 501-1,000 employees
MySQL? Sure, but what is the best config and how to optimize for best performance?
We could write books about MySQL and every book could have a different focus: setup, optimization, backup, etc.
So, this review will be about sharing some of the experiences that I have had.
So, MySQL is probably the most used RDBMS for web applications.
The server is really easy to install, literally a straightforward installation.
It is very fast and stable and at the same time not resource hungry compared to some other RDBMS products.
For smaller projects, you will not even need to do any "after install" tweaks or configurations, just install and you are ready to go.
Nevertheless, for some more demanding projects, you will need to investigate and optimize your setup to fit the requirements.
What is the best configuration for a MySQL server?
There is no single best configuration. There are many of them, depending what is MySQL used for. E.g., it is not the same as having it installed in a shared hosting environment or as a dedicated instance to just one application. Having 1000 of users using a few hundred different databases or having 20 users using one database.
Is it gonna be an OLTP or OLAP, do you focus more on writing or reading? I will not dive into this, as there are many other articles covering this in a much better way than this article.
But, starting by selecting the adequate storage engine MyISAM or InnoDB, defining the maximal number of connections, all the buffer and caching settings, limit on open files, table caching, etc. is always a good approach.
You will need to sit down and write down all the requirements known to you and then aligned to those, start configuring your server.
A very handy tool to investigate your server's setup and performance is the MySQLTuner.pl script. It can be used as a starting point to investigate your server setup and increase performance.
Sometimes, although your server is configured properly, you might experience a slow performance, especially on a shared hosting server. During my career as a system administrator in a hosting company, we have monitored our MySQL servers and tracked the performance. Often, in such an environment, it might happen that you have a "running away" query, eating up your resources or causing performance issues. In such a case, database optimization is required, rather than server a config. A good example for this is having a well-visited web application with many concurrent users. Often on such an application, there are queries which run more frequently than others.E.g. presenting top 25 products in a web shop by using a query similar to this:
SELECT p.name, c.name
FROM product p
LEFT JOIN category c ON ( c.id = p.category_id )
WHERE p.new_product='1'
GROUP BY c.name, p.name
ORDER BY p.name ASC
LIMIT 25 ;
Such queries will run very fast if the database itself is optimized. But otherwise, they can run really slow and cause high CPU utilization or in worse case a bottleneck and slow down the whole server. You don't need to have millions of records, this can happen even if you have only a few hundreds/thousand records in your database. In such case, you need to identify these "slow queries" (you can log slow queries) and then investigate the database they are referencing. Often it's about missing indexes on columns involved in GROUP BY, ORDER BY or WHERE clause.
Backup? Of course, you already have the backup in place and it's running, at the end we are talking about the database. There is always a backup policy when a database is involved. Many use MySqlBackup command to schedule a "hot backup" of a server. Although it works in 99% of cases, please consider having a mysqldump running in parallel. Why? It might happen that you have a corrupted InnoDB tables and you are backing them up. By the first server reboot, it might lead that you lose data.
When databases are involved, it is always good to have the data backed up in a flat structure if possible, if we are not talking about huge databases and the dump would consume too much time. This gives you the ability to import the data in a new instance, if you face any scenario where you have issues with corrupted storage engine and cannot recover from that.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Buyer's Guide
MySQL
December 2025
Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: December 2025.
879,371 professionals have used our research since 2012.
Software Architect at a tech consulting company with 51-200 employees
Offers a simple DBMS solution with a very low hardware footprint. Only one of the engines supports ACID transaction control.
What is our primary use case?
Primary DBMS solution for web apps developed on either ASP.NET MVC or Zend / PHP for customers.
The community version of MySQL only offers simple backup and restore tools, but it is OK for many web dev projects for customers that want a low budget solution.
How has it helped my organization?
We do software development for our customers on both Windows and Linux. Since these tools are available for both Windows and Linux, we can leverage the knowledge of these tools for development on both platforms.
What is most valuable?
We design web solutions for customers with PHP (Linux) and ASP.NET MVC (Windows). MySQL offers a simple, no frills, but effective DBMS solution with a very low hardware footprint. Since it has no licensing fees, it offers great TCO for our customers.
What needs improvement?
Only one of the engines, InnoDB, supports ACID transaction control. The best performance engine, MyISAM, has no transactional control support.
It would make a lot of sense to include one engine that offers both very good overall performance and transactional control support.
All versions of MySQL, including the Community Server version include in its design as a Pluggable Storage Engine Architecture.
This architecture allows for the support of multiple options of Storage Engines, so, a software architect can design a sofware solution with MySQL based on a specific Storage Engine that is capable to cater to a particular type of storage use case requirements, like for instance, web applications with heavy read workloads and moderate write workloads, or intranet desktop applications with heavy write workloads.
Depending on the version of Community Server installed is the list of available Storage Engines: All it takes is the execution of the command SHOW ENGINES to retrieve the list of installed Storage Engine plugins.
When you create any given table in MySQL, you have the option to select what Storage Engine (among the engines available) will be applied to said table. If this option is no explicitly mentioned at the end of the "CREATE TABLE" command, the current default storage engine will be assumed.
For web apps with intensive read workloads and moderate write workloads, the engine that offers a good overall performance is the MyISAM engine, but this does not support ACID transaction control, and it uses a table-level locking mechanism (thus, from a performance standpoint, this is not proper for apps with heavy write workloads).
The InnoDB engine uses a record-level locking mechanism, so, it is proper for apps with heavy write workloads. It also supports Isolation Levels, which is important for applications that have many clients doing read and write operations concurrently.
The other storage engines offer support for very specific use cases, like for instance, flat file tables (CSV engine) or memory-only tables (Memory engine).
Getting back to the InnoDB engine, it offers features that are similar to the database engine in SQL Server, and according to some of benchmarks that we have run, SQL Server Express provides overall better performance than MySQL Community Server with InnoDB tables.
My "Room for Improvement" comment is that it would be great if in the future Oracle were to provide with the Community Server edition a version of InnoDB with better overall performance, while still requiring a small hardware footprint.
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
As with any good DBMS, MySQL requires periodic DBA maintenance. If you leave a MySQL database with no supervision of a DBA for enough time, files become too fragmented and they may turn corrupt beyond rescue.
What do I think about the scalability of the solution?
The version of the product with free licensing does not offer stellar scalability support. We only use these tools for solutions that do not require such a level of scalability.
How are customer service and technical support?
The version of the product with free licensing only offers community forum support. Because it is a very popular product, there are many free resources on the internet to search for solutions to most issues.
This kind of "free support" is OK, because we do not use these tools for mission critical solutions.
Which solution did I use previously and why did I switch?
For Windows development of non-critical solutions, we previously used SQL Server Express exclusively. However, now we use either SQL Server Express or MySQL, depending on the customer. We have not switched from SQL Server Express to MySQL.
How was the initial setup?
The admin tools offered by MySQL Workbench are very good. For an experienced DBA, it is rather easy to setup a (MySQL) server for development, testing, pre-production, or production environments.
What about the implementation team?
Implementation was done with in-house team.
What's my experience with pricing, setup cost, and licensing?
With no licensing fees, the business opportunity is great for both the customer and an ISV like my company. This is the case, as long as you use these tools for non-critical solutions.
Which other solutions did I evaluate?
We did evaluate other solutions, mainly PostGreSQL, which is also a very good product.
We run a benchmark comparison first, then we run a small lab with the development of a small solution with both toolsets (MySQL and PostGreSQL).
In this development comparison, we found that the winner is MySQL. MySQL toolset for development offers much more coverage for both PHP and C# development.
What other advice do I have?
Most small and medium enterprises require many non-critical solutions. They clearly they do not have large budgets for these kinds of solutions, so it makes a lot of sense to consider MySQL as a good option for this kind of development.
The advice is to make sure that it works for your company and for your customers.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Senior Application Programmer/Analyst, Team Lead at a university with 10,001+ employees
Its strength is in the fast connection, query and insert performance. The weakest link is replication.
What is our primary use case?
Used as a data store for RESTful web services and other web applications. Was deployed to store RSS feeds, and for 100 joomla instances.
How has it helped my organization?
MySQL is widely supported. We were able to integrate it with several different projects using various different programming languages with no issues.
Worked with Java, Perl, PHP, C# and C code.
What is most valuable?
MySQL’s strength is in its fast connection, query and insert performance. I’ve benchmarked MySQL against several NoSQL and SQL databases and found it to be faster for getting lots of data inserted quickly.
What needs improvement?
The weakest link is replication. MySQL’s replication is touchy and doesn’t support master-to-master setups.
MySQL’s replication was implemented by playing back SQL statements getting executed on the master database node. That means if a slave node gets behind, it has to catch up by running every SQL query that has executed on the master. When the slave gets too far out of date, it is unable to catch up because the replication log is lost.
Master to master replication is used to allow writes to either node in the cluster (INSERT, UPDATE, DELETE). Since MySQL does not support this, you can only safely send SELECT queries to slave nodes. If you run an insert, update or delete against the slave node, then it is out of sync with the master and may break if a later replication event comes from the master on the same table.
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
I’ve had an issue where an InnoDB database grew too big and got corrupted. I was unable to recover it because there was not enough space on the server either. Be sure to have enough space.
What do I think about the scalability of the solution?
We did encounter some scalability issues as it has limited clustering support, it requires scaling up rather than out to some degree. Of course, you can have read replicas. It also has a fall-off on performance with very high workloads, but it takes awhile to get there.
Which solution did I use previously and why did I switch?
MySQL has replaced Microsoft SQL Server in several cases. MySQL is easier to manage and much more cost-effective.
How was the initial setup?
The security model is different than the other databases.
What's my experience with pricing, setup cost, and licensing?
There are tuning and monitoring benefits for people who purchase MySQL rather than using the free version.
Which other solutions did I evaluate?
Looked at Microsoft SQL Server and PostgreSQL.
What other advice do I have?
The porting code to or from MySQL is not that complicated, but the date type/format and functions are the biggest hurdles. Handling booleans data type is less efficient than the BIT type in the SQL Server.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Open Source Database Consultant
A high level of support due to a lot of documentation and expertise in the world
What is most valuable?
- Vertical scalabity on hardware
- Better hardware usage
- Access performance
- Addressing consistency, scalability and performance issues
How has it helped my organization?
Storage and searching quickly on data is no longer an issue facing us using Excel.
What needs improvement?
Hardware scalability and parallel treatment can and will be improved in the next few years.
For how long have I used the solution?
For 15 years now.
What do I think about the stability of the solution?
No, there are only strategies applied by a data scale interval (less than 200 go, less than 1 to, and more than 15 to).
What do I think about the scalability of the solution?
Always due to architecture, data storage, and data requesting irrelevant strategies.
How are customer service and technical support?
High. There is a lot of documentation, a lot of expertise, and a lot of projects in the world.
Which solution did I use previously and why did I switch?
We switched to a different solution because of data access issues, speed, and consistency.
What's my experience with pricing, setup cost, and licensing?
Don't use the license version. Open source is enough.
Which other solutions did I evaluate?
There are a lot of alternative to paid features. It's very hard to find support for this feature.
What other advice do I have?
You will have a lot of work, but you will also avoid a lot of issues due to product immaturity on the database market.
Disclosure: My company has a business relationship with this vendor other than being a customer. Partner.
MySQL DBA
Helps to achieve stability. Needs to improve the system so it won't lose data.
What is most valuable?
Usually, we use the application for our team to ensure the data is correct.
How has it helped my organization?
We majorly use the application now. We can use MySQL to read for our select queries. This helps us to achieve stability.
What needs improvement?
In MySQL, you can only have one master. The master's scalability was always a problem.
The cost towards the locking and the patent. What happens, we will be running the MySQL network, and what happens sometimes in some cases, the master go down. Thus, we have to theoretically play the whole thing. The chances are quite high that you are going to lose some important data.
If we can make them implement the system so we are not losing our data, then magically you could say the system would be better.
For how long have I used the solution?
12 years.
What do I think about the stability of the solution?
No. Not on the MySQL site.
What do I think about the scalability of the solution?
No. Not so far. I didn't see any problems in its scalability.
How are customer service and technical support?
We are using the community portal technical support, but when we are reaching them, the support is always awesome.
I can give them a 10 out of 10. The best.
Which solution did I use previously and why did I switch?
Yeah, we used to cheat off MySQL. But in the end, it was somebody else's design. So, we migrated to MySQL. We just migrated from there to here.
How was the initial setup?
It always depends on the use case. The first case was complex where we ended up rewriting all of the test code better than MySQL.
Which other solutions did I evaluate?
It always depends on the scenarios of the requirement - what all the current scenarios come from. Are these application teams or is that someone who is just getting the product? If someone majorly bunt because they don't want to use a single point of data, we may end up choosing any other solution.
Usually, we would pick a MySQL because of our DBS, because we know how we can boot up or pick on a use case.
What other advice do I have?
You just need to identify why and what are the requirements. Also, you need to listen to news feeds regarding the features you are getting into and the features you will to use from it. Take the time to identify and understand.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Data Scientist / Consultant with 501-1,000 employees
You can build data models both on-premises and on the cloud
What is most valuable?
- Open Source (It’s free)
- One can easily find help on the web
How has it helped my organization?
You can easily build data models both on-premise and on the cloud.
What needs improvement?
The work bench has some bugs that are mostly GUI related.
For how long have I used the solution?
I have used this solution for three years.
What do I think about the stability of the solution?
I did not encounter any issues with stability.
What do I think about the scalability of the solution?
I did not encounter any issues with scalability.
How are customer service and technical support?
I use the community version. There are ample “Open Source” resources on the Internet.
Which solution did I use previously and why did I switch?
We used Microsoft SQL and Postgres.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
IT Consultant, Business Owner, Lecturer at a tech consulting company with 10,001+ employees
It offers all the features of a RDBMS system, including monitoring tools, backup and recovery, high availability and easy migration from other databases.
What is most valuable?
MySQL is an Open Source RDBMS, which means you keep your costs low, as long as you don’t need to have support and/or you have your own MySQL expert. However, MySQL also offers the enterprise edition for users that would like support and more advanced features.
When it comes to features, MySQL offers all the features of a RDBMS system, including monitoring tools, backup and recovery, high availability and easy migration from other databases.
How has it helped my organization?
For any web project today you are going to need a database system. If you use any Content Management System, MySQL is most of the times the database of your choice.
MySQL is easy to use, most developers have experience using it and it is an Open Source, cost-effective solution.
What needs improvement?
Although MySQL should cover most of the needs of an average user, there are constrains that need improvement.
For example, MySQL doesn’t support check constraints. MySQL’s performance is not optimal on subqueries and can significantly increase the server load for database intensive applications.
Another issue is the ineffective table manipulation during multiple transactions which result in implicit Commits.
Finally, since MySQL is now part of Oracle, and Oracle already sells their own databases, changes and bug fixes have significantly slowed down for obvious reasons. Oracle cannot improve MySQL too much, since it will then compete with their commercial database systems.
For how long have I used the solution?
We have been using MySQL either through custom projects or through CMS, for more than 15 years now.
What do I think about the stability of the solution?
We haven’t encountered any serious stability issues with MySQL.
However, as with all systems, you need to keep your database “tidy”, making sure to optimize it, clean it and avoid corrupt files.
For critical projects, it may be wise to have redundancy by having two servers synced all the time.
What do I think about the scalability of the solution?
Most scalability issues with MySQL can be simply resolved by adding more memory, optimizing settings or moving to a better server.
Of course, if you are talking about 40-50TB of data, or critical applications, then you will probably need to move to a more commercial database, such as Oracle.
How are customer service and technical support?
We haven’t used the enterprise edition of MySQL, since most of our projects do not require such support levels. Most issues are handled by our developers.
Which solution did I use previously and why did I switch?
MySQL has been the only solution for all of our web projects.
How was the initial setup?
Setting up MySQL is simple, however, optimizing it requires some experience which is also based on the demands of each customer.
Which other solutions did I evaluate?
When we started using MySQL, it was more or less the best Open Source RDBMS for web projects. Today, you have multiple options, such as PostgreSQL, SQLite and MariaDB, therefore the choice for a newcomer should be based on their project needs.
What other advice do I have?
For us, MySQL is the choice for all of our projects. It is simply to use, supported by all content management systems and, of course, Open Source.
We haven’t had any major issues, and since we have now developed MySQL technical skills and custom libraries, there is no reason to move on with a different RDBMS, unless circumstances change.
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: December 2025
Popular Comparisons
Teradata
SQL Server
PostgreSQL
Firebird SQL
Oracle Database
SAP HANA
MariaDB
Faiss
OpenSearch
Milvus
ClickHouse
IBM Db2 Database
Qdrant
InfluxDB
SQLite
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?
















