Mysql is a Relational Data Base Management System (RDBMS) protected by the GPL (GNU General Public License). Meaning that the software is open source and can be downloaded freely from the internet by developers for personal use. To build a software project, study the source code or modify it to suit custom requirements. The terms and conditions that control how this is managed are published here http://www.fsf.org/licenses/. For enterprise or commercial use a license can be purchased which will come with support, more stable code with more features. The MYSQL licensing can be seen here http://www.mysql.com/company/legal/licensing/
MySQL AB a Swedish software company founded in 1995 was the true owner of the RDBMS software. It was aquired in 2008 by Sun Microsystems and re-acquired by Oracle Corporation in 2010 when it took over the company. Mysql runs on most platforms commonly: Linux, UNIX and Windows systems. Along with Linux it makes up an enterprise software stack called LAMP. A complete software stack for the development and deployment of web applications, with Linux as the operating system, Apache as the web server, MySQL as the RDBMS and PHP, Perl or Python as the scripting language. The RDBMS sits at the back end of most most popular websites such as Facebook, Netflix, Google, Twitter, Associated Press and Bloonberg. From the MySQL industry faq, the RDBMS has 35,000 daily downloads and 5 million active installations. Also according to stats, from SD Times in July 2004, the RDBMS has 33% of the entire market-share as the third most deployed database in the world.
By default (before version 5.5) MyISAM was the default storage engine FOR MySQL, other storage engines such as InnoDB, Merge, Memory(heap), Archive, CSV and NDB are also available. MySQL has features such as Unicode support, cross-platform support, stored procedures, triggers, cursors, views, savepoints and transactions, query caching, replication, partitioning, clustering and Full-text indexing. MySQL supports diverse datatypes such as FLOAT, BINARY, CHAR, DOUBLE, VARCHAR, TEXT, VARBINARY, BLOB, TIME, TIMESTAMP, DATE, DATETIME, YEAR, SET, ENUM and OpenGIS along with signed and unsigned integers. MySQL supports different protocols for client server connectivity, very common are TCP/IP sockets. MySQL can be administered using command line and administrative tools such as Workbench and client utilities such as mysqladmin, mysqlcheck, mysqldump, mysqlimport, mysqlpump and mysqlshow.
MySQL forks also known as offshoots, are new open source dbs built from MySQL at various stages in its lifecycle. Examples are Drizzle a fork of MySQL 6.0; MariaDB a fork of MySQL 5.5 and Percona Server a fork of MySQL 8.0.
Ensure the server is ready by checking if the hostname is fully configured. Open up a shell and type the following command.
$ hostname -f
This should display the Fully Qualified Domain Name (FQDN) your server. The next step to update your machine.
sudo yum update
To intsall mysql execute the following command
sudo yum install mysql-server
To set run levels for mysql server start
sudo /sbin/chkconfig --levels 235 mysqld on
sudo service mysqld start
The MySQL instance will bind to local host (127.0.0.1) by default. The instance can be made to listen to MySQL on a remote server by editing the #bind-address directive in the /etc/my.cnf configuration file. This will also require you making changes to your firewall, to restrict connections to specific IP address.
Execute the mysql_secure_installation command to run the script to deal with any security issues in a MySQL installation.
Prompts will come up for changing your MySQL root password, delete anonymous user accounts, disableroot logins from external IPs and delete test databases. Respond by typing yes to each of these options. Learn more about the script on the MySQL Reference Manual page .