It dramatically improved use for several of my customers.
Co-Founder/CEO at Grigale LTD
Dramatically improved use for several of my customers, better ROI for me
How has it helped my organization?
What is most valuable?
This depends on my customers' use.
What needs improvement?
SQL and NoSQL use.
For how long have I used the solution?
More than five years.
Buyer's Guide
MySQL
May 2025

Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: May 2025.
856,873 professionals have used our research since 2012.
What do I think about the stability of the solution?
When configured correctly, no stability issues.
What do I think about the scalability of the solution?
When configured correctly, no scalability issues.
How are customer service and support?
Very good.
Which solution did I use previously and why did I switch?
MySQL Support Services by Percona. I switched to Oracle MySQL services because of a better ROI.
How was the initial setup?
There is no obvious answer. It depends.
What's my experience with pricing, setup cost, and licensing?
Depends on the customer's needs.
Which other solutions did I evaluate?
MariaDB, MySQL Support Services by Percona.
What other advice do I have?
Stick with the source, stick with Oracle MySQL as the leading vendor for MySQL technology.
Disclosure: My company has a business relationship with this vendor other than being a customer: Oracle Gold Partner and MySQL top reseller in Israel.

Senior Web Manager at a university with 501-1,000 employees
Support for enterprise-grade features like clustering, Sharding, in an open-source solution
Pros and Cons
- "Support for enterprise-grade features like clustering, master-slave replication, even Sharding (to some extent) which is an advanced feature."
- "It would be helpful if there were a graphical user interface to administer, configure, and tune it."
- "If it had something similar to Microsoft’s DTS engine then it would be the best database system out there."
How has it helped my organization?
Due to the open source licensing model, it has allowed small businesses like ours to adopt enterprise-grade database systems without incurring significant licensing costs.
What is most valuable?
- Open-source
- Multi-platform
- Lightweight
- Simple to set up, configure and tune
- Support for enterprise-grade features like clustering, master-slave replication, even Sharding (to some extent) which is an advanced feature
What needs improvement?
It would be helpful if there were a graphical user interface to administer, configure, and tune it.
If it had something similar to Microsoft’s DTS engine then it would be the best database system out there.
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
For the scale at which my systems are operating, the software is stable. We are at most dealing with less than 10 million rows of data across all tables, and concurrent connections under 200 at our peak loads.
What do I think about the scalability of the solution?
No scalability issues at the scale at which my systems are operating. One thing I did encounter with an earlier version of MySQL 5 – the mysql process will not automatically use available CPU cores on the server, even if it was a dual or quad core CPU. I was troubleshooting a scalability issue when I saw this, it maxed out just a single core and left the other three (in my quad core CPU server) idle. There was a specific condition / trigger that will make the mysql process span the other available cores (I can’t recall now but a quick googling likely will uncover this).
How are customer service and technical support?
We did not subscribe to professional support from MySQL AB or Oracle. However, the wealth of community support is outstanding. Most of the issues faced could be resolved by knowledge shared by the MySQL community.
Which solution did I use previously and why did I switch?
I’ve used SQL Server and Oracle for database systems. SQL Server is an excellent solution, in particular the DTS (Data Transformation System) which is not available for MySQL. Switching to MySQL for two reasons: 1) licensing costs 2) the application supports MySQL primarily, and has poor support for SQL Server.
How was the initial setup?
Very easy to set up, relatively easy to configure, tune, and use the conf file, as long as you are comfortable mucking around in Linux conf text files and working from the command line (I am).
You could use the installer which would be the easiest way, but setting up by hand is not too difficult either – instructions can be found online and following them step by step usually works fine.
What's my experience with pricing, setup cost, and licensing?
MySQL Enterprise Support is not cheap, though might still be cheaper than Oracle or SQL Server. They may not have local support depending on where you’re based, but there are many smaller agencies out there that will readily provide support. You’ll need to spend some time looking around.
Which other solutions did I evaluate?
I’d been using other database systems like Microsoft’s SQL Server and Oracle Database before trying out MySQL. There are forks of MySQL maintained outside of Oracle, like MariaDB and Aurora (by Amazon Web Services). I have not really tried them but I don’t expect very big differences; in fact, for most use cases you may not observe any difference. There would be the few unique features in MariaDB and Aurora that are not present in the original MySQL feature set (I know there are but don’t remember the specifics).
What other advice do I have?
As long as your application supports it well, and you are familiar with the scaling options and its limitations, you can’t go very wrong with MySQL, as it is a very mature product by now. If you are fairly competent with servers and databases you could start off without subscribing to Enterprise Support, and may be able to get by quite well. If things get more complicated, or scalability starts to become a problem, then you may consider paying for help.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Buyer's Guide
MySQL
May 2025

Learn what your peers think about MySQL. Get advice and tips from experienced pros sharing their opinions. Updated: May 2025.
856,873 professionals have used our research since 2012.
Director at RC Ghosh Group of Companies
We use it for enterprise data storage as well as part of the back-end of websites and web applications
Pros and Cons
- "The most valuable feature of MySQL is the informative error outputs of command line interface."
- "We use MySQL for enterprise data storage as well as part of the back-end of websites and web applications."
- "Setup is easy. MySQL of various flavours has community editions to easily test, deploy, and run."
- "MySQL needs improvements on its diagnostic features."
- "MySQL is not easily scalable on cost effective consumer grade hardware."
How has it helped my organization?
We use MySQL for enterprise data storage as well as part of the back-end of websites and web applications.
What is most valuable?
The most valuable feature of MySQL is the informative error outputs of command line interface.
What needs improvement?
MySQL needs improvements on its diagnostic features.
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
No issues.
What do I think about the scalability of the solution?
MySQL is not easily scalable on cost effective consumer grade hardware.
How are customer service and technical support?
I would rate technical support as a 10 out of 10.
Which solution did I use previously and why did I switch?
Not applicable. No previous solution.
How was the initial setup?
Setup is easy. MySQL of various flavours has community editions to easily test, deploy, and run.
What's my experience with pricing, setup cost, and licensing?
Enterprise editions and support are definitely needed for the heavy users who need direct support.
Which other solutions did I evaluate?
No.
What other advice do I have?
One should ensure the availability of proper hardware before any optimization attempt from the software level.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
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?
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.
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.
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 technical 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.
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.

Buyer's Guide
Download our free MySQL Report and get advice and tips from experienced pros
sharing their opinions.
Updated: May 2025
Popular Comparisons
SQL Server
Teradata
Oracle Database
PostgreSQL
Firebird SQL
SAP HANA
MariaDB
IBM Db2 Database
Faiss
OpenSearch
InfluxDB
Milvus
Amazon Aurora
CockroachDB
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?