Are you ready to dive into the world of MySQL? Whether you’re a beginner looking to get started with this powerful open-source database, or an experienced developer looking to brush up on your skills, this MySQL introduction has something for everyone.
In this fast-paced intro, you’ll learn the essentials of MySQL, including its:
- and companies, which successfully use it to ship their products.
And one more thing before we start. This article is a continuation of a series describing the Top 8 Most Popular Databases. If you would like to learn more about other solutions, then I highly recommend you bookmark that article and come back to it later.
If you enjoy whiteboard animations, then right here you can find a video version for this article:
If you find this content useful, please leave a subscription 😉
So as the first thing in our introduction, let’s take a while to learn more about MySQL’s history.
MySQL was developed by a Swedish company called MySQL AB, which was founded in 1995 by Allan Larsson, David Axmark, and Michael Widenius. The name is a combination of Michael’s daughter’s name- My– and the abbreviation for Structured Query Language (SQL).
The development began in 1994, and the goal was to create a fast, reliable, and easy-to-use database system that could be used in a variety of applications. And although there were already a number of other database management systems available, many of these systems were complex to install and use, and they often required specialized skills and expertise to manage effectively. On the other hand, available open-source solutions were not as widely used as they are today, and many organizations were hesitant to adopt them due to concerns about their performance, support, and reliability.
As a result, MySQL quickly gained popularity among developers and organizations looking for an alternative to commercial database systems. Its success helped to pave the way for other open-source database systems, and it played a significant role in the growth of the open-source software movement as a whole.
Lastly, it’s worth mentioning that MySQL AB was bought by Sun Microsystems, which is now an Oracle Corporation (since 2010).
What Is MySQL and How Does It Work?
And although the previous chapter is a great MySQL introduction, let’s learn a bit more about it.
If I would have to answer the question “what is MySQL?” in one sentence, then I’d say that it is an open-source relational database management system. Moreover, according to the StackOverflow Developer Survey 2022, it’s the most popular RDBMS in the world. It is fast, reliable, and easy to use, making it an attractive choice for developers and organizations of all sizes.
MySQL is written in C++ and C and it was initially created from mSQL (aka Mini SQL), which is provided for non-commercial use. And although it gained a new SQL interface, the API remained the same making it easy to migrate from mSQL.
As a relational database, MySQL stores and organizes data in tables, which are grouped into databases. Each table consists of rows and columns. Rows represent individual pieces of data, while columns represent the different attributes of that data. And in order to query and manipulate the data from the database, we can use SQL queries. When it comes to storage, MySQL stores data in memory and on disk combining together performance and durability.
Finally, MySQL includes a number of other tools and features that make it easier to manage the database. These include utilities for security, performance tuning, backup, and recovery.
MySQL & LAMP
It’s worth mentioning in our MySQL introduction, that MySQL is a part of the LAMP stack.
LAMP is nothing else than an acronym for a proven set of technologies developers use to build websites and web applications:
- Linux for the operating system
- Apache HTTP Server
- MySQL for the relational database management system
- PHP/Perl/Python programming language
Not to mention you’re reading this article thanks to MySQL (used by WordPress).
So, at this point, we know what is MySQL and as the next step, let’s figure out what it brings to the table:
- MySQL is easy to use. It is known for being easy to install and use. Moreover, it has a simple and intuitive interface. This makes it not only a great choice for beginners, and less experienced teams, but also can bring lower costs for many companies.
- It’s open-source with a large and active community. MySQL is the most popular database in the world. And this advantage, combined with tons of documentation, blogs, and other resources available online, speeds up its integration, management, and debugging.
- Performance. And even though it might not be the best choice for large data sets, it’s still a multi-user and multi-threaded SQL server, which can handle millions of requests per day.
- Transactions support. Transactions, are an important feature of MySQL and allow us to ensure that the database remains in a consistent state, even if one of the operations fails.
- Flexibility. Lastly, MySQL supports multiple storage engines, which allows users to choose the best storage engine for their specific needs. Additionally, it supports a wide range of programming languages, making it easy to integrate into web-based applications and other systems.
And as with everything, MySQL has some drawbacks, as well:
- Scaling complexity. Although MySQL can actually handle a lot of traffic, the scaling process requires manually sharding the data across multiple servers and configuring the servers to work together.
- Lack of certain security features. MySQL does not include certain security features, such as data masking and data classification, which are available in other database management systems.
- Limited support for distributed transactions. It does not have native support for distributed transactions.
- Commercial editions might be pricey. Although the open-source version of MySQL is free, the commercial editions of MySQL are licensed and can be expensive.
MySQL Use Cases
As the next thing in our MySQL introduction, let’s see when it can be a good choice:
- Web-based applications. MySQL is often used as the database backend for web-based applications. (And as mentioned previously, it’s a part of a LAMP stack).
- E-commerce. It’s a common choice for e-commerce platforms, due to its ability to handle large amounts of data and transactions support.
- Mobile applications. MySQL might be used as the database backend for mobile applications, as well.
- Internet Of Things. It can be used to store and manage data from IoT devices, such as sensors and connected devices.
Companies Using MySQL
Lastly, let’s see a couple of companies, which use MySQL Database to deliver their products and services.
First of all, WordPress uses MySQL as its default database management system. Without it, you wouldn’t read this article 😉
Moreover, GitHub uses MySQL as its core data store. BBC makes use of the MySQL InnoDB Cluster and Uber claims that MySQL engine as the low-level storage layer has allowed them to very quickly build a robust system.
Of course, when we look at the list, we can find other known companies, like:
- Airbnb and many more.
If you’d like to learn more about other companies, then you can check out the official customers’ list.
MySQL Introduction Conclusion
And that’s all for this MySQL introduction, which is a continuation of a Top 8 Databases series. Together, we learned what is MySQL, its advantages, and disadvantages, as well, as its history and use cases.
If you are interested in Spring Boot, then you might want to check out my other articles with MySQL in practice and others under the MySQL Tag.
Finally, as always am happy to answer any questions and hear your thoughts. See you in the comments section!