What is our primary use case?
I use MySQL for database-related things. In my company, the main use is for storing and managing business-critical data related to payment, refund, booking, user transactions, and service metadata. Since these systems require strong consistency and reliable transactions, MySQL has been a good fit. I have worked with MySQL for designing database schemas and relationships, writing and optimizing SQL queries, and creating indexes to improve query performance.
MySQL serves as a source of truth for refund transactions and their state transitions. We maintain transaction records, refund metadata, processing status, timestamps, and reconciliation information in relational tables. The key challenge was handling high transaction volume while ensuring consistency. We use proper indexing on frequently queried columns such as transaction ID, refund ID, and status fields to keep lookups efficient.
My experience with MySQL has been mainly around transactional systems rather than AI-specific features. From a governance and security perspective, one of MySQL's strengths is its mature access control and data management capabilities. Features such as role-based permissions, authentication mechanisms, auditing, encryption support, and backup recovery processes help organizations manage sensitive data. For AI-related workloads, governance is especially important because AI systems are only as trustworthy as the data they use. MySQL provides a strong foundation for managing data quality, access control, and compliance requirements.
In my organization, MySQL is deployed on cloud-based infrastructure. It is a part of the cloud-based infrastructure that supports our backend microservices and transaction systems.
What is most valuable?
The best features offered by MySQL include ACID properties. For MySQL, ACID transactions and data consistency are important. For our system with cases involving payments, refunds, and bookings, we had to maintain accurate transaction state. There is also performance and maturity; MySQL is a very mature database with proven performance characteristics. Relational modeling makes it easy to represent business entities and relationships while maintaining data integrity through constraints and normalization.
Out of the features, the one I find myself using most day-to-day is in systems involving payments, such as refunds and bookings, where maintaining an accurate state is critical. When multiple updates happen across related tables, transactions help ensure that either all changes succeeded together or none of them do. This greatly reduces the risk of data inconsistency. The other feature I use frequently is query optimization through indexing and SQL capabilities. A lot of backend performance data was fixed using that. MySQL stands out compared to many NoSQL solutions with its combination of strong consistency, mature relational modeling, and a powerful query language.
One of the features is reliability and predictability at scale. In MySQL, the behavior is very well understood. There are established best practices for schema design, indexing, replication, backups, and performance tuning, which make it easier to operate at a production-level scale. One of the more useful features is replication support. It allows read-heavy workloads to be distributed across replicas while keeping the primary focused only on writes. This can be very useful as our application grows.
We were able to support growing transaction volumes. I cannot share exact internal numbers, but I can talk about improvements that we observed. As transaction volume grew, a lot of work was around query optimization, indexing, and reducing unnecessary database load. For example, we reviewed slow queries, added indexes on frequently searched fields such as transaction ID and the status column, and optimized join and filtering conditions. The bigger improvements we noticed were faster response times for high-traffic APIs, reduced execution time for reconciliation and reporting queries, better handling of peak transaction volumes, and lower database load during heavy processing periods.
What needs improvement?
Regarding MySQL improvements, a pain point is horizontal scalability. MySQL scales very well vertically and can support read replicas, but as a system grows significantly, sharding and distributed data management can become complex compared to databases that are designed to scale horizontally from the beginning. This is one of the areas where I think MySQL should work more.
Another area is handling very large analytic workloads. MySQL is excellent for transactional systems, but for large-scale analytics or reporting, specialized analytic databases may sometimes be a better fit. Apart from that, one area is performance troubleshooting. As the database grows, diagnosing things such as slow queries, lock contention, and deadlocks becomes complex.
For how long have I used the solution?
I have been using MySQL for all four years.
What do I think about the stability of the solution?
MySQL is highly stable. I have used it for business-critical systems involving payments and refunds, and it performed very well.
What do I think about the scalability of the solution?
Regarding MySQL's scalability, we can easily scale it vertically. MySQL performs very well by optimizing additional CPU, memory, and storage resources. For read-heavy workloads, MySQL supports replication. Overall, I would say MySQL scales very well for enterprise transaction systems.
How are customer service and support?
Personally, I have not had much direct interaction with official support for MySQL because most of the issues I encountered were resolved through internal expertise, documentation, or community resources. However, the documentation, community, and available expertise around MySQL are among the strongest I have worked with.
Which solution did I use previously and why did I switch?
Before MySQL, we tried other solutions. The choice of MySQL was due to the requirement for strong transactional consistency, relational data modeling, mature tooling, and reliability. I was involved in the migration from other database platforms to MySQL. In some systems, we also use complementary technologies such as Kafka for streaming events, but MySQL remained the system of record for transactional data.
What was our ROI?
I can tell you about some positive return on investment for using MySQL. The biggest return comes from reliability, developer productivity, and lower operational risk. Because MySQL is mature and widely used, teams can build features faster, onboard engineers more easily, and resolve issues more quickly compared to less familiar technologies.
What's my experience with pricing, setup cost, and licensing?
I was not directly involved in the payment aspect. Overall it was positive from a cost perspective. MySQL has generally been cost-effective due to its open-source ecosystem, mature tooling, and relatively low barrier to adoption compared to many commercial database solutions.
Which other solutions did I evaluate?
I was not personally involved in the original database selection process. The kinds of alternatives that are commonly evaluated alongside MySQL include relational databases such as PostgreSQL or Oracle, or sometimes NoSQL, depending on the use case.
What other advice do I have?
The advice I would give to others who want to use MySQL is to first design your schema carefully from the beginning. Second, invest in indexing and query optimization early. Monitor proactively and plan for future scale. Finally, understand the transaction and consistency model well.
MySQL is a great tool for using in data-consistent applications. It is a highly mature, reliable, and practical database. Its consistency, ecosystem, and proven track record make it an excellent choice for transactional and business-critical applications. I would rate this product an 8 out of 10.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?