MySQL Introduction

MySQL is an open-source database management system. It was declared DBMS of the year 2019 from the DB-Engines ranking. It can be a standalone system where client programs can directly query the database. However, MySQL usually forms the backbone for many applications and is used along with other programs. For example, MYSQL is the ‘M’ in the LAMP stack (Linux – Apache – MySQL – Perl/Python).

Drupal, phpBB, etc. use this database management system; these all are database-driven web applications. Many big corporations like Facebook, Twitter, Youtube, etc., use this leading database system. According to the MySQL site, these are some of their customers.

MySQL is written in C and C++, while its parser is in YACC (Yet Another Compiler-Compiler). MySQL works on most operating systems like Linux, Mac OS, Windows, BSDI, Open Solaris, etc.

A Swedish company, MySQL AB, created MySQL. Its original authors were David Axmark and Micheal “Monty” Widenius. The “My” comes from Widenius’ daughter’s name, and the SQL, of course, stands for Structured Query Language.

Before we dive into MySQL, let us first understand the terms  Database and Relational Database Management Systems mean.

What is Database?

A database is a collection of data usually stored electronically. It can be accessed, managed, and updated by database management systems.

Connolly and Begg define Database Management System (DBMS) as a “software system that enables users to define, create, maintain and control access to the database” in their book “Database Systems – A Practical Approach to Design Implementation and Management. “

A Database management system or DBMS is a software that end-users and other applications use to interact with the data. A DBMS does the job of:

  • Storing the data
  • Maintaining the data
  • Updating the data
  • Handling access right to the data
  • Enforcing constraints and rules for data storage and
  • Facility for recovery of data in case of damage. 

Depending on the way the data stored and maintained, there are different Database Management System types. One of the most widely used systems is the Relational Database Management System.

What is an RDBMS?

An RDBMS is a database management system that stores the data gets as relations, i.e., tables. In RDBMS, we divide the data into different tables. These tables have a set structure and constraints(rules). The tables then connect using keys.

RDBMS are extremely popular since they are easy to implement, manage and administer. One of the most popular open-source RDBMS systems out there is MYSQL.

Some of the features or advantages of MySQL are as follows:

  • Easy to Use: MySQL runs on SQL, and just a basic knowledge of SQL is enough to get started. It also has excellent documentation.
  • Scalable: MYSQL supports multi-threading and hence can be scaled to accommodate huge applications easily.
  • Secure: MySQL is globally renowned for being the most secure and reliable database management system.
  • High Performance:  MySQL storage-engine framework provides top-notch optimization and also the ability to configure the database server. This ability ensures extreme performance.
  • Uptime: MySQL offers 24X7 uptime and high availability solutions like specialized cluster servers and master/slave replication configurations.
  • Transactional support: MySQL implements the ACID properties and is one of the most robust transactional database engines.
  • High Flexibility: MYSQL provides support for a vast number of embedded applications.

So next, we will look at how we set up MySQL in Windows operating system.