跳转到主要内容

category

What is MySQL?

MySQL is a relational database management system, used by customers across the world from small home-grown applications up to some of the largest data centers. It is developed, distributed and supported by Oracle, who acquired the product from Sun Microsystems in 2010 when Oracle bought Sun. MySQL is a very stable, scalable, and high-performance database management system that can be run on a desktop/laptop, alongside other applications, on web servers, on massive mainframe computers in distributed architecture and in highly available infrastructure.

Photo by Rubaitul Azad on Unsplash

MySQL has been around since 1995 and uses Structured Query Language as the backbone of the system. MySQL is available as open source which means that is possible for anyone to use and modify the software, with some conditions that must be met under the General Public License (GPL).

What are the editions?

There are three license editions of MySQL available today:

Standard
Features MySQL Database server, connectors, replication, utilities, and workbench among others.

Enterprise
Everything that the Standard edition has, along with partitioning, utilities, enterprise backup, high availability features, security, scalability, and audit components.

Cluster Carrier Grade
Everything from Standard and Enterprise plus support for larger data sets, MySQL Cluster Manager, and additional enterprise class features

How to check MySQL Version in Workbench

If you want to know how to check the MySQL version in Workbench (the MySQL visual tool that allows for database design, data modelling, database admin and SQL among others), open Workbench in the main application, click on the main menu and select ‘Server Status’. Here you will find all key features enabled, server status, file location of database, if its running and some statistics.

If you prefer to execute a script output, execute this below, once you log on to the server:

mysql> SHOW VARIABLES LIKE “%version%”;

How to license MySQL

Firstly, you must investigate which edition you have installed. If you are not using the correct edition, then you must either upgrade or downgrade to the appropriate edition or you must acquire a license. There are a few ways to license MySQL — the easiest way (and cheapest) is to use MySQL Community edition — which is freely available via the GPL open-source license. However, if you decide that you do not want your modifications to be freely available to the world to use (as is the license use case), then you must have one of the following licenses — Standard, Enterprise or Cluster Carrier Grade.

MySQL licenses are available from Oracle, through a reseller or direct. Standard and Enterprise editions are only available on a subscription basis. The more expensive Cluster Carrier Grade edition is available on a subscription or perpetual license model.

This means that if you want to pay for the license and keep it as ‘your’ license (as a capital spend, giving a perpetual license), then you must acquire the larger and more expensive edition — with that comes a support cost on an annual- renewal of 22% of the license fee.

The mechanism of how to count number of licenses required is modelled on the Server metric. So, for example, if you had MySQL Enterprise on a server of 2 sockets (processors) then you would have to buy MySQL Enterprise subscription (1–4 socket server) at $5k per annum.

The more sockets on each server(s) the more subscriptions you need to buy. The below table is made up from publicly available prices as of January 2024.

Typical Issues

The typical issues that I have encountered over the years are:

Incorrect edition in use — lack of awareness about difference in editions. I encounter this all the time, where a download has happened many years ago, and the system has grown and become near impossible to remediate. Making sure that the right edition is in use is so important and cannot be overstated.

No license at all — typically I encounter customers who think that MySQL is ‘free’ — which it is, but only under certain conditions. If you do not want to share your modifications via open source, then you must have either a paying subscription or perpetual license.

Not enough perpetual licenses — I continually see uncertainty on how to count, what to count and by how much. There are so many metrics and ways to license Oracle products that makes customers unclear as to what policy and what counting mechanism to use. The offerings are ‘tiered’ according to the number of sockets/processors, NOT cores and then the number of servers of each size requiring a license.

Updated software to latest version without active support contract — I have seen several environments that have been upgraded after support has expired — this is a red flag and should be avoided — do not under any circumstances upgrade unless you have an active support contract or are utilising the open-source community edition.

Enterprise features in use, including clustering, high availability features - Of course, over time databases grow and given the fact that MySQL can handle very large data sets and can become very important for data access, having an environment that is highly available is more and more common and required. This lends itself to enabling high availability features such as clustering. If you do not have the Cluster Carrier Grade license and are using these features, then you do not have the correct license — and this is the most expensive edition. So please be aware of the features and license implications.

Lack of awareness of how the software should be licensed and monitored - Many times, I see customers using MySQL as the ease of deploying MySQL is very simple, quick, and scalable. However, given enough time, MySQL can become like a home-grown virus and grow and grow until it is nearly impossible to remove. This means that monitoring such home grown environments can become a tedious task. If proper monitoring tools and techniques are employed from the start (or implemented) then MySQL can be reined in somewhat.

Summary

In summary, I would like to point out that indeed MySQL can be free, but it can also be a costly mistake to just think that it is always free. You may have seen some our blogs and news updates on how Oracle are now starting to approach customers of fringe products such as Java, Linux support, VirtualBox — well, MySQL should be put in that category also. The fact that Oracle are now seeing a decrease in license revenues due to a number of things such as the market, consolidation, cloud migrations, transition programmes and other cheaper alternatives, it is now more important than ever to make sure that customers are using the correct edition, licensing a more cost-effective way, and monitoring the activity, that could cause an untimely approach from Oracle.

Contact us via the SAM team or your usual contact at Version1, if you have any questions on this or any other Oracle license topic.

About the Author:

Johnny Cree is a SAM consultant working for Version 1 in the UK and Ireland with over 15 years in Oracle license management. He has a wealth of experience and knowledge across all Oracle product categories. He especially likes audit defence, negotiation and Oracle applications and technology. Johnny is a technical wizard also and has many years’ experience in a lot of programming, project management and face to face customer interaction. Prior to working for Version 1, he headed up the UK and Ireland Oracle delivery for SoftwareONE. He has worked across implementation projects and managed services coupled with sound knowledge of Software Asset Management tools such as ServiceNow, Snow and Flexera.