Home >Database >Mysql Tutorial >RHEL-7.8 MySQL 8.0 linux generic installation and deployment

RHEL-7.8 MySQL 8.0 linux generic installation and deployment

远方*
远方*Original
2022-03-10 11:13:54214browse

Prepare the most basic information my.cnf

The my.cnf configuration file in this case is the most basic initialization configuration file. It can only ensure that the mysql service starts normally and is not suitable for production environments.
About More performance parameters such as buffer and logfile need to be optimized and configured according to the host's CPU, MEM/hard disk and other hardware environments

System version
[root@mysql~]# cat /etc/redhat- release
----Red Hat Enterprise Linux Server release 7.8 (Maipo)
MySQL version
---MySQL-mysql-8.0.20

1.1. Prepare my.cnf configuration file
[root@mysql ~]#vi /ect/my.cnf

[mysqld]

SERVER ID

server_id=1

data directory

datadir=/mysql/data

SOCKET & pid

socket=/tmp/mysql.sock
pid-file=/tmp/mysql.pid

logfile

log-error=/mysql/log/error.log
log_bin = /mysql/binlog/mysql-bin
binlog_format=ROW

TRX mode

transaction-isolation = READ-COMMITTED

1.2 Environment variable configuration
[root@mysql ~]# pwd
/root

1.2.1 Add The following environment variables
[root@mysql ~]# vi .bash_profile

PATH=$PATH:/usr/local/mysql/bin

1.2.2 source effective current environment variables
[root@mysql ~]# source .bash_profile

1.2.3 Check the effective result. The environment variable of mysql is already in PATH
[root@mysql ~]#echo $PATH
/ usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin:/usr/local/mysql/bin:/root/bin :/usr/local/mysql/bin:/usr/local/mysql/bin

2.mysql data user and file directory initialization

2.1 Create mysql user and group

[root@mysql~]#groupadd mysql

[root@mysql~]#useradd -r -g mysql -s /bin/false mysql

2.2 Create mysql data file directory permissions

[root@mysql~]# mkdir -p /mysql/data
[root@mysql~]# mkdir -p /mysql/log/
[root@mysql~]# mkdir -p /mysql/binlog/
[root@mysql~]# chown -R mysql:mysql /mysql
[root@mysql~]# chmod -R 775 /mysql/

2.2.1 View Permissions

[root@mysql /]# ls -ld /mysql/
drwxr-xr-x. 5 mysql mysql 41 Oct 25 21:35 /mysql/

2.3 Unzip and install mysql server

2.3.1 Place the downloaded mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz file in the directory /usr/local

[root@mysql local]#cd /usr/local

2.3.2 Decompress mysql compressed file

[root@mysql local]#tar xvf mysql-8.0.20-linux-glibc2.12-x86_64. tar.xz

2.3.3 Create mysql soft link file
[root@mysql local]#ln -s mysql-8.0.20-linux-glibc2.12-x86_64 mysql

2.3.4 Create mysql-file and grant permissions
[root@mysql local]#cd mysql

[root@mysql mysql]#mkdir mysql-files

[root@mysql mysql] #chown mysql:mysql mysql-files

[root@mysql mysql]#chmod 750 mysql-files

3. Initialize mysql server

[root@mysql mysql]# cd /usr/local/mysql

[root@mysql mysql]#bin/mysqld --initialize --user=mysql

Configure ssl
[root@mysql mysql]#bin /mysql_ssl_rsa_setup

Use mysqld_safe to start mysql

[root@mysql mysql]#bin/mysqld_safe --user=mysql &

2020-10-25T13:57:57.972091Z mysqld_safe Logging to '/mysql/log/error.log'.
2020-10-25T14:58:58.008556Z mysqld_safe Starting mysqld daemon with databases from /mysql/data

Check port 3306, there is 3306 The port proves that mysql has been started
[root@mysql mysql]# ss -ln |grep 3306
tcp LISTEN 0 70 [::]:33060 [::]:*
tcp LISTEN 0 128 [:: ]:3306 [::]:*

3.2 Copy the mysql startup file to /etc/init.d/
[root@mysql mysql]#cp support-files/mysql.server /etc/init .d/mysql.server

4. Check the password
The error log directory is in /mysql/log/. Enter /mysql/log/ and you can also check error.log to find the mysql initialization password

[root@mysql]#cd /mysql/log/
[root@mysql log]# more error.log
2020-10-25T13:58:13.679884Z 0 [System] [MY-013169] [Server] /usr/local/mysql-8.0.20-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.20) initializing of server in progress as pro
cess 14924
2020-10- 25T13:58:13.693343Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2020-10-25T13:58:14.402699Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2020-10-25T13:58:15.799133Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Ern8uu_RY!9r

The password is random Code----> Ern8uu_RY!9r

5. Restart MySQL server
[root@mysql ~]# /etc/init.d/mysql.server restart
Shutting down MySQL. .2020-10-25T14:03:22.070562Z mysqld_safe mysqld from pid file /tmp/mysql.pid ended
SUCCESS!
Starting MySQL.. SUCCESS!
[1] Done bin/mysqld_safe --user =mysql (wd: /usr/local/mysql)
(wd now: ~)

6. Log in to mysql

Use rn8uu_RY!9r password to log in
[root@ mysql ]# mysql -uroot -h127.0.0.1 -p
Enter password:

Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 8
Server version: 8.0.20
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

You will be prompted to change the initial password when executing show database

mysql> ; show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

7. Modify the initial root password
The dimension of the mysql password is the user name host. To modify the password, you need to modify it together according to the dimensions of the user name and host.

mysql> alter user 'root'@'localhost ' identified by 'mysql123';
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

8. Use the newly modified password to log in to mysql

[root@ mysql]# mysql -uroot -h127.0.0.1 -p mysql123
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 8
Server version: 8.0.20
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> show databases;

Database

information_schema

mysql

performance_schema

sys

4 rows in set (0.00 sec)

At this point, the most basic initialization of mysql server is completed

The above is the detailed content of RHEL-7.8 MySQL 8.0 linux generic installation and deployment. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn