MySQL is a data base control system that applies a relational database model. It was created by the Swedish company called MySQL AB, currently owned by Oracle Corporation. The main authors are Michael “Monty” Widenius and David Axmark. MySQL is considered to be one of the most successful pioneer of dual licensing, because it is available both under a free GPL and paid commercial licence.

MySQL is a multiplatform database in which communication takes place using the SQL language. Like other SQL databases, it is a SQL dialect with various modifications.

MySQL is relatively frequent among currently used databases because it’s easily implementable, powerful and freely distributable. A combination of GNU/Linux, Apache, MySQL and PHP is often deployed to build the basic web server software, the so-called “LAMP technology”.

Since its inception, MySQL has been optimised with emphasis on speed which lead to compromises in the form of the availability of simple backup methods and the fact that it hasn’t supported looks, triggers and stored procedures for a long time. Regarding the fact that their absence became essential for main users of the product – web developers - these features have been added in recent years.

Architecture of the MySQL server

The MySQL server architecture differs from some other database server architectures. The uppermost layer contains services that aren’t unique for MySQL and can serve most of the necessary client / server tools depending on the network.

In the next layer, there is a code for analysis, i.e. parsing, analyse, optimization and for all built-in functions. At this level, all functionality which is subsequently provided through storage engines is concealed.

The third of the layers contains storage engines themselves. They take care of storing and retrieving stored data. The server uses API to communicate with storage engines.

The advantages of using MySQL

  • Simplicity of use. MySQL is easy to install and, thanks to a wide range of third party tools that can be added to the database, the implementation settings is relatively simple. Moreover, it is a database that is relatively easy to work with. As long as you understand its language, you shouldn’t run into too many problems.
  • Available support. Although Oracle doesn’t have a perfect customer support history, the essence of MySQL itself which began as an open source platform, means that there is a large and active community of developers and enthusiasts who can help with many situations. This is due to the great popularity of solutions that have lead to a broad base of experts.
  • Availability. Based on what you need MySQL to use, implementation can cost from zero to ten thousand dollars and even more. In all cases, MySQL is more affordable than most other market options, except open source software.
  • Industrial standard. Although MySQL’s popularity has decreased in recent years, it is still one of the most used database systems in the world. It is compatible with almost every operating system and is considered an industrial standard.

The disadvantages of using MySQL

  • Stability. According to Digital Ocean, MySQL is less reliable than competing database solutions. These stability problems relate to the way in which certain functions, such as references, transactions or auditing, are addressed. Although the database is still perfectly usable, in some specific cases this may be a reason to opt for another solution.
  • Performance. Although MySQL is equipped to handle almost any volume of data, it tends to get stuck if too many operations are running at once. This relatively worse performance scalability means that if you are looking for a solution with various competing levels, it is probably preferable to look for another alternative.
  • The development isn’t communal. The development is slower because it isn’t dragged by the community. Since MySQL was taken over by Oracle, development has slowed down rapidly.
  • Addiction to add-ons. Some frequently used features can only be used with added applications and add-ons.