Practical part: teach you a detailed tutorial on installing MySQL on Linux

preface

How to install MySQL database step by step on a Linux host? You must be right to read this article!

1, Linux server installation

Options for installing Linux server: Centos, Redhat, Oracle Linux.

Linux installation package download:

https://mp.weixin.qq.com/s/PFKkftgaTWpJKCnhI3uxZw

Referring to the documents on the official website, the actual combat environment is configured as follows:

  • Redhat 7.9 x86_64
  • Memory 2G
  • Hard disk 50G

⭐ Linux host installation tutorial can refer to: Practical part: installing Linux system on VMware Workstation virtual machine

2, MySQL installation media Download

MySQL installation package official website download address: MySQL Product Archives !

Select version:

  • Classic version 5.7.20
  • Linux-Generic
  • glibc-2.12 && x86-64

After downloading, the installation package is as follows: mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz, which is uploaded to the Linux server folder through ftp tool.

3, MySQL installation

Refer to the official document for installation steps: Installing MySQL on Unix/Linux Using Generic Binaries

1. Check installation media

Upload the installation media to the / soft Directory:

2. Unzip the installation media

Unzip the installation media and change the unzipped folder name to mysql:

cd /soft
tar -xvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.20-linux-glibc2.12-x86_64 mysql

3. Turn off firewall

systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

4. Establish users and groups

To install mysql, you need to create a MySQL user:

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

5. Create related directories

mkdir -p /data/mysql
chown -R mysql:mysql /data
chown -R mysql:mysql /soft
chmod 750 /data

6. Configure environment variables

Configure the root user environment variable:

cat <<EOF>> /root/.bash_profile
export PATH=\$PATH:/soft/mysql/bin
EOF
##Effective environment variable
source /root/.bash_profile

7. Install dependent packages

Configure the yum source and install the libaio package:

##Mount mirror source
mount /dev/cdrom /mnt
##Configure yum source
cat <<EOF>>/etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1
EOF
##Install dependent packages
yum install -y libaio

8. Uninstall the built-in mariadb and mysql

  • Check whether mysql is installed in the system: rpm -qa | grep mysql is not installed because I minimize the installation.
  • If yes, force uninstall: rpm -e --nodeps $(rpm -qa | grep mysql)
  • Check whether mariadb is installed on the system: rpm -qa | grep mariadb
  • If yes, force uninstall: rpm -e --nodeps $(rpm -qa | grep mariadb). The uninstall is successful here.

4, MySQL initialization

1. Initialize MySQL database

Initialize and create MySQL database with the following command:

mysqld --initialize --user=mysql --basedir=/soft/mysql --datadir=/data/mysql/

Parameters: - basedir is the mysql decompression directory, - datadir is the mysql data storage directory.

📢 Note: the initial password of the root user is displayed here: yhfvt_rP,24M !

2. Configure my.cnf

Configuration my.cnf file:

cat <<EOF>/etc/my.cnf
[mysqld]
user=mysql
basedir=/soft/mysql
datadir=/data/mysql
server_id=6
port=3306
socket=/tmp/mysql.sock
##client
[mysql]
socket=/tmp/mysql.sock
prompt=lucifer [\\\\d]>
EOF

Start MySQL service:

/soft/mysql/support-files/mysql.server start

Of course, MySQL service can also be configured to start automatically!

3. Configure MySQL startup and self startup

Linux 6&7 general configuration mode:

cp /soft/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on

After configuration, you can start the MySQL service with service mysqld start!

Linux 7 configuration mode:

##Configure mysqld.service file:
cat <<EOF>>/usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/soft/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
systemctl enable mysqld

After configuration, you can start the mysql service with systemctl start mysqld!

4. Modify MySQL ROOT password

Try to connect to mysql database:

mysql -uroot -pyhfvt_rP,24M

Because the initial password is hard to remember, you need to modify the initial password of the database root user!

Reset root password:

mysqladmin -uroot -pyhfvt_rP,24M password mysql

Connect to MySQL database with new password:

mysql -uroot -pmysql

5. Query test

To view the currently created database:

To view the user information of MySQL database:

So far, MySQL database has been installed and can be connected for test operation!

Posted by BETA on Wed, 17 Nov 2021 23:50:29 -0800