This guide contains instructions on how to install and do basic configuration of a MySQL database. At the time of this writing, the stable version is 5.7.
- Operating System: Ubuntu 18.04
- Access to a Terminal or Shell Console (Need proper and consistent term for this)
Installation via Package Manager
01. Open a terminal window
02. Update the package repository and install MySQL. This will install the latest and most stable version of the database.
$ sudo apt update $ sudo apt install mysql-server -y
03. Verify the MySQL has been installed
$ mysql --version
Securing the MySQL
Securing the MySQL database is a recommended step.
01. Run MySQL secure installation. Then type y or Y when asked to confirm execution.
$ sudo /usr/bin/mysql_secure_installation
02. Enter 2 option for a STRONG password
03. Choose a strong password with the following criteria
- Minimum length : 8
- Has a number [0-9]
- Has a lower case character [a-z]
- Has an upper case character [A-Z]
- Has a special character (e.g. @, $, %, etc.)
A sample password that satisfy the criteria : 123g33kN1kolaT3sl@. You can use this tool to generate a strong password: https://bartday.com/password_generator.html
04. Enter the password then confirm by entering y
05. Remove the anonymous user by entering y. It is advisable to remove the anonymous user.
By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment.
06. Disallow root login remotely. This is a security concern, if you don’t want the root user to be accessible remotely. Enter y.
07. Remove the test database, enter y.
By default, MySQL comes with a database named ‘test’ that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment.
08. Enter y to reload the privilege tables.
09. Test the MySQL config, by login using the root account.
$ sudo mysql -u root -p # Enter the root password
Our humans need coffee too! Your support is highly appreciated, thank you!