A database is an information organized in such a fashion that a computer program can access the stored data or a part of it. This electronic file system is stored, updated, selected and deleted using a special program called Database Management System (DBMS). There is a huge list of DBMS, a few of which makes to the list here are – MySQL, MariaDB, SQL Server, Oracle, DB2, LibreOffice Base, Microsoft Access, etc.
Those who have worked on Linux Environment must have been knowing that MySQL used to be the Default Relational Database Management System for a very long time before it was replaced by MariaDB. What happened all of a sudden? Why Linux project waved bye to this project. Before we continue this topic lets have a brief note.
About MySQL
MySQL was founded by Allan Larsson, Michael Widenius and David Axmark in the year 1995, 19 years ago. It was released under the name of co-founder Michael Widenius daughter, ‘My‘. This project was released under GNU General Public License as well as under certain Proprietary License. MySQL was owned by MySQL AB firm until it went into the hands of Oracle Corporation. It is written in Programming Language – C and C++ and is available for Windows, Linux, Solaris, MacOS and FreeBSD.
About MariaDB
After the Acquisition of MySQL by Oracle Inc. and the need of a reliable and scalable Database led the scholars to think an alternatives like PostgreSQL and MongoDB. Switching to either of two was neither easy nor better replacement from future perspective.
At the same time in the year 2009, Michael Widenius started working on MarisDB as a fork of MySQL. In the year 2012 the bricks of nonprofit MariaDB Foundation was laid. It was named after the founder’s daughter Maria.
MariaDB is a fork of MySQL Relational Database Management System which again is released under GNU General Public License. It is written in Programming Language – C, C++, Perl and Bash and is available for Systems Linux, Windows, Solaris, MacOS and FreeBSD.
The Acquisition of MySQL
$1 billion was not a small amount for the MySQL AB firm moreover they don’t want to let the chance go into vain for an Open-Source project to come into Mainstream world and hence MySQL came under the Collar of Sun Microsystem in the Year 2008.
It was a matter of chance that Oracle Inc., purchased Sun Microsystem and eventually MySQL was a property of Oracle, in the year 2009. With this takeover a lot of questions were generated that time. Such as:
- Is it going to be good for Market?
- Is it going to be beneficial for users ?
- Oracle by providing support and releasing updates for an Open source DBMS, on the way of Oracle, doing any good?
- Is it going to be proved as an acquired Armour of oracle?
- What will be its effect on proprietary Market?
- Is Companies like Microsoft, Apple will show a boost-up trend in market?
- Is it going to be healthy or harmful for IBM?
- Will it demoralize FOSS Enthusiastic?
Even today, we not have the answer of all the questions but certainly market has proved a lot. Some of the changes world has witnessed.
Wikipedia
The world’s Sixth most Popular website has moved its Database from MySQL to MariaDB.
The world’s most popular site transferred from MySQL to MariaDB.
MariaDB is performing better and hence world busiest Web Sites are using it. And anyone running Linux Seriously must know that the ‘M‘ of LAMP stack has changed.
Several On-line forums and business analyst’s viewed this as a trump played by Oracle to finish-off MySQL user base. Darwin said ‘Survival of the Fittest‘ and market tends to understand this. MySQL fork MariaDB foundation and survival created history.
MySQL and MariaDB – A Comparative Study
The compatibility of MariaDB with MySQL and even some advanced feature became the strength of MariaDB.
Name | MySQL | MariaDB |
Description | Relational Database Management System. | A drop-in MySQL replacement. |
DB Engine Ranking | 2 | 27 |
Developer | Oracle Inc. | Michael Widenius |
First Release | 1995 | 2009 |
License | GNU/GPL | GNU/GPL |
Language | C and C++ | C, C++, Perl and Bash |
Server Support | Linux, Solaris, Windows, FreeBSD and MacOS | Linux, Solaris, Windows and FreeBSD |
Data Scheme | Yes | Yes |
Database Model | Relational Database Management System | Relational Database Management System |
Data-Type | Yes | Yes |
SQL | Yes | Yes |
Access Method | JDBC, ODBC | JDBC, ODBC |
Scripting | Yes | Yes |
Trigger function | Yes | Yes |
Replication | Yes | Yes |
Replication Method | Master-Master, Master-Slave and Cluster | Master-Master and Master-Slave |
Foreign Keys | Yes | Yes |
Durability | Yes | Yes |
Website | mysql.com | mariadb.org |
NOTE: Drop-in replacement means, if an application works on MySQL 5.5, it will also work on MariaDB 5.5 without any glitch.
Installation of MariaDB in Linux
MariaDB 10.0.12 is the current stable release. Moreover MariaDB download page contains distro specific binaries for RPM based distro’s as well as DPKG based Distros, which can be downloaded from the link below.
Just download the appropirate RPM and DPKG package and install it as shown below.
# rpm -ivh maria*.rpm [For RedHat based systems] # dpkg -i maria*.deb [For Debian based systems]
You can also install MariaDB from the repository, but it is important to setup the repo, first. Follow the link below and select your distro and go.
This is the easiest way to install MariaDB on latest as well as old stable Linux Distribution. However, if you don’t know how to setup repositories under Linux systems. You can follow our below articles, where we’ve covered MariaDB installation on few selected distributions.
- Setup LAMP (Linux, Apache, MariaDB, PHP/PhpMyAdmin) in RHEL/CentOS
- Install LAMP (Linux, Apache, MariaDB, PHP) on Ubuntu 14.04 Server
- Installing LEMP (Nginx, PHP, MySQL with MariaDB engine and PhpMyAdmin) in Arch Linux
- Installing LAMP (Linux, Apache, MySQL/MariaDB, and PHP/PhpMyAdmin) in Arch Linux
- Installing LEMP (Linux, Nginx, MySQL/MariaDB, PHP/PHP-FPM and PhpMyAdmin) in Gentoo Linux
That’s all for now. Its not the end. Its a beginning. A Journey that was started in 2009 is still continuing and it has to go a long way from here. MariaDB has the maturity of MySQL and your feels at home who has experienced MySQL.
We will be coming up with an article shortly which will guide from making small tables to running small queries. Till then stay tuned and connected to Tecmint. Don’t forget to provide us with your valuable feedback in the comment section below.
Thank you for publishing the article. I’m sure many were interested to hear some of the details. I suggest that you try to have a native English speaker review such articles before publication. It would make them more accurately express your intent.
The big advantage of a database system is that information is stored in a logical way that makes it efficient to query and update. Database management systems contain the software used to create, access, and manage databases. Vendors have gained reknown (and marketshare) for their databases by making them fast, reliable, and highly scalable. Many advanced features have been added to make it possible to express sophisticated relationships within relational models. The extent to which these features are supported, and the extent to which performance can be tuned to optimize for certain characteristics are attractive features.
Oracle, Informix, Sybase, Microsoft, and several other companies dominated this market for many years, and are known for being extremely expensive. What set apart both PostgreSQL and MySQL was that they are free and open source. MySQL was aimed at simplicity that still supports effective scalability. PostgreSQL was aimed at supporting a more advanced set of features at the expense of simplicity. Given the uncertain future of MySQL (or of any open source software bought out by a commercial competitor) the availability of of the MariaDB alternative is very welcome to all in the industry.
You said that “… some advanced feature became the strength of MariaDB.” but in your table it looks like MariaDB has LESS features than MySQL.
Which are those “advanced features” that you forgot to mention?
It is most unfortunate that Mr. Avishek Kumar’s education in Computer Science was incomplete as to allow him to omit PostgreSQL, a world class RDBMS that powers Yahoo, Fujitsu, Sony Corporation RedHat and thousands more enterprises and aptly considered a viable replacement for Oracle 11, is missing from his “list”. Even the venerable SyBase, from which SQL Server derived under very ignominious circumstances and actions by Microsoft deserves credible mention on his list.
Most of those” new” to technology – within the past 5 – 7 years are lacking a sound education foundation , particularly in the factual and consequential history and circumstances of several critical pro ducts and technologies.
Their technology educational systems therefore need updating and improvement.
Dear W. Anderson,
Thanks for the time you have given to write such a critics.
well we could not Understand why PostgreSQL should make to this List? only because a PostgreSQL die-hard-fan wants this?
Is PostgreSQl MySQL fork?
IS PostgreSQL MariaDB fork?
Does it belongs to the community of any of the two above?
What’s its role in MySQL forking and MariaDB development?
was PostgresSQL involved in Google’s and Wikipedia’s movement from MySQL to MariaDB?
we understand PostgresSQL and know its use.
Dear sir, it would have been nice to appreciate a work that deserve rather than talking ill-education System, Don’t you think so?
Thanks for the research you have done for the article!
A couple of minor corrections:
MariaDB also support MacOS
MariaDB has it’s own cluster solution (Galera) which is master-master.
In addition MariaDB also supports multi-source replication and true
parallel replication.
When it comes to the future, one of the most important things that shows the support of MariaDB in the community is that all major Linux distributions are supporting MariaDB and that most of them have now MariaDB instead of MySQL as default database.
Welcome @ Michael Widenius,
we know MariaDB can be installed on Mac OS using Homebrew. But what exactly is Homebrew? Many claims its a package Manager. But is it?
Homebrew isn’t a package manager, it’s a ports system. It is Free and Opensource application. we understand porting and installing are two different things. Hence kept Mac OS out of this list.
For your rest of findings we really appreciate you and need to confirm before updating it to the article.
I would say homebrew is both a package system and a distribution channel (similar to rpm packages and rpm package repositories)
For example, the steps to install MariaDB on MacOS are:
brew # Install homebrew
brew update
brew search mariadb # Check MariaDB version provided
brew install mariadb
unset TMPDIR
mysql_install_db
# Start MariaDB
cd /usr/local/Cellar/mariadb/5.2.6 ; /usr/local/Cellar/mariadb/5.2.6/bin/mysqld_safe –datadir=/usr/local/var/mysql
It’s a few mores steps than just doing ‘yum install mariadb’, but it
does provide MariaDB for MacOSX users.
This is documented in detail at:
https://mariadb.com/kb/en/building-mariadb-on-mac-os-x-using-homebrew/
I appreciate what you are doing for the Linux community!
Thank you
Thanks @ chyan123 for the appreciation.
Still got no idea why big company like Wikipedia and Google change their database system for MySQL to MariaDB, just because the latter one is free?
Oracle re-branded MySQL when acquired Sun Microsystem.
No one was convinced that Sun had the best of intentions in mind for MySQL. Many thought Sun purchased MySQL in hopes of saving itself from collapse. Many also thought Sun would do such things as make MySQL proprietary or make it fail because of their track record in the recent past.
There remained certain other dilemmas, a few of which were technical.
Another reason is that mysql development happens behind closed doors with the occasional release. While it is a very well maintained, there is no way to follow day to day mysql development.
You can do that with mariadb https://mariadb.com/kb/en/mariadb/documentation/getting-started/compiling-mariadb-from-source/source-getting-the-mariadb-source-code/
It looks like mysql source code is on github https://github.com/mysql/mysql-server and that we can actually follow development.
Please, please, learn how not to use capital letters.
@ dreadwolf,
please make us learn where to use and where not to use CAPITAL LETTERS. Your suggestions are welcome.
“And anyone running Linux Seriously must know that the ‘M‘ of LAMP stack has changed.”
It should be ‘seirously’ and not ‘Seriously’ in this sentence for example. You only capitalize pronouns in the middle of a sentence.
I meant to type ‘seriously’.