Redhat7.3安装MySQL8.0.22的详细教程(二进制安装)

一、MySQL安装包下载

官网地址:https://dev.mysql.com/downloads/mysql/

下载步骤:

过滤操作系统版本

选择归档安装包

下载后,上传并md5校验安装包是否与上图官方提供的值一致,确保传输过程安装包无损害

[root@MyDB1 ~]# cd /usr/local/software/
[root@MyDB1 software]# md5sum mysql-8.0.22-el7-x86_64.tar.gz
52e312605f66aaaa0efcd272b9fc0a1f mysql-8.0.22-el7-x86_64.tar.gz

解压安装包

[root@MyDB1 software]# tar -zxvf mysql-8.0.22-el7-x86_64.tar.gz
[root@MyDB1 software]# ln -s mysql-8.0.22-el7-x86_64/ mysql			#创建链接,方便操作

二、MySQL卸载说明

  • 只有rpm安装方式是需要卸载旧版本的mysql,二进制安装和编译安装不需要,但是要注意端口冲突
  • rpm若不卸载旧版本,在安装时,它会提示你mysql已安装,此时是无法再次安装的,只有通过yum更新版本
  • 为了保证后续操作不会产生其他冲突,我们卸载原有的mysql

注:在卸载旧的MySQL之前,注意备份数据

[root@MyDB1 ~]# rpm -qa|grep mysql								#查看是否已安装mysql数据库
[root@MyDB1 ~]# rpm -qa|grep mysql|xargs rpm -e --nodeps					#卸载mysql
[root@MyDB1 software]# rpm -qa|grep mariadb-libs|xargs rpm -e --nodeps		#卸载mariadb

三、创建用户和组

新建组和用户

[root@MyDB1 ~]# groupadd -g 2000 mysql
[root@MyDB1 ~]# useradd -u 2000 -g mysql -c "MySQL Server" -s /sbin/nologin mysql
[root@MyDB1 ~]# cat /etc/group|grep mysql
mysql:x:2000:
[root@MyDB1 ~]# cat /etc/passwd|grep mysql
mysql:x:2000:2000:Mysql software:/home/mysql:/sbin/nologin

注:若组和用户已存在,则删除系统默认组和用户,再次创建!

删除组和用户

[root@MyDB1 ~]# userdel mysql					#删除用户同时会删除相应的组

赋权给mysql路径

[root@MyDB1 ~]# cd /usr/local/software/
[root@MyDB1 software]# chown -R mysql:mysql mysql*

初始化之前的目录结构

注:此时是没有data目录

四、MySQL初始化

初始化之前先编辑好配置文件

[root@MyDB1 ~]# vi /etc/my.cnf
[root@MyDB1 ~]# cat /etc/my.cnf

内容如下:(其他的根据实际需求配置)
[mysqld]
basedir = /usr/local/software/mysql
datadir = /usr/local/software/mysql/data
log_error = /usr/local/software/mysql/mysql-error.log
port = 3306
socket = /usr/local/software/mysql/mysqld.sock
pid_file = /usr/local/software/mysql/mysqld.pid

character-set-server=utf8
lower_case_table_names=1
max_connections=1000
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

[mysql]
default-character-set=utf8

[client]
default-character-set=utf8

初始化开始

[root@MyDB1 ~]# /usr/local/software/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/software/mysql --datadir=/usr/local/software/mysql/data

初始化过程,输出日志文件中有root用户的临时密码

初始化之后的目录结构

五、MySQL启动服务

方式1——init.d: 启动服务

[root@MyDB1 ~]# cp /usr/local/software/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@MyDB1 ~]# /etc/init.d/mysqld start

验证服务

[root@MyDB1 ~]# ps -ef|grep mysql

解释说明

图中有两个进程,一个主进程,一个守护进程。当mysql意外停止时,守护进程会自动重启mysql服务

演示demo

[root@MyDB1 ~]# kill -9 75341						#直接杀死进程

方式2——systemctl: 编辑启动配置文件

[root@MyDB1 subsys]# vi /etc/systemd/system/mysqld.service

内容如下:(缺点:当kill掉时,无法自动启动恢复)
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
Documentation=https://www.freedesktop.org/software/systemd/man/systemd.unit.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
LimitNOFILE = 5000
ExecStart=/usr/local/software/mysql/bin/mysqld --defaults-file=/etc/my.cnf

启动服务

[root@MyDB1 ~]# systemctl start mysqld.service
[root@MyDB1 ~]# systemctl status mysqld.service

六、安全效率优化

启动权限限制

[root@MyDB1 ~]# cd /usr/local/software/mysql/bin/
[root@MyDB1 bin]# chmod 700 mysqld mysqld_safe
[root@MyDB1 bin]# ll mysqld mysqld_safe
-rwx------. 1 mysql mysql 441010738 Sep 24 03:42 mysqld
-rwx------. 1 mysql mysql  29157 Sep 24 03:18 mysqld_safe

注:现在只要root用户才能够启动停止MySQL服务!

服务随系统启动

systemctl enable mysqld.service
systemctl list-unit-files|grep mysql

七、配置环境变量

[root@MyDB1 ~]# vi /etc/profile

追加内容如下:
MYSQL_HOME=/usr/local/software/mysql
export PATH=.:$PATH:$MYSQL_HOME/bin

[root@MyDB1 ~]# source /etc/profile						#重新加载,生效!

八、修改root初始密码

创建socket链接

[root@MyDB1 ~]# ln -s /usr/local/software/mysql/mysqld.sock /tmp/mysql.sock

使用临时密码登录

[root@MyDB1 ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.22

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> 

注:当临时密码含有特使符号时,可能命令行输入会产生歧义。此时,交互时输入密码即可!

修改root密码

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

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

注:MySQL8密码必须符合一定复杂度,否则无法修改;退出当前会话后,重启登录生效!

九、配置mysql远程登录

  • 关闭防火墙或开放MySQL端口
  • 查看允许访问MySQL的用户和地址
mysql> select user,host from mysql.user;
+------------------+-----------+
| user    | host  |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys  | localhost |
| root    | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)

遇到的问题

mysql> grant all privileges on *.* to root@'%' identified by 'MyDB12@com';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
 near 'identified by 'MyDB12@com'' at line 1

注:该错误并不是语法错误,是因为mysql该版本不支持直接创建用户和赋权,而需要分别实现

创建远程登录用户

mysql> create user 'root'@'%' identified by 'MyDB12@com';
Query OK, 0 rows affected (0.01 sec)

赋权

mysql> grant all privileges on *.* to 'root'@'%';
Query OK, 0 rows affected (0.01 sec)

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

到此这篇关于Redhat7.3安装MySQL8.0.22(二进制安装)的文章就介绍到这了,更多相关Redhat7.3安装MySQL8.0.22内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 超详细MySQL8.0.22安装及配置教程

    大家好,今天我们来学习一下 MySQL8.0.22安装及配置,好好看,好好学,超详细的 第一步 进入MySQL官网下载,如下图所示: 第二步 进入下载完成后解压到除c盘以外的盘,如下图所示: 第三步 解压后的目录并没有的my.ini文件,没关系可以自行创建在安装根目录下添加的my.ini(新建文本文件,将文件类型改为的.ini),写入基本配置: [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=C:\Program Files\MySQL

  • 阿里云centos7安装mysql8.0.22的详细教程

    1. 下载MySQL安装包 首先点击https://dev.mysql.com/downloads/repo/yum/ 找到Linux7的版本: 这里会自动下载最新的版本的mysql,我这里是mysql8.0.22 然后去拼接网址: http://dev.mysql.com/get/ + xxx.rpm 比如说我的是http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 所以命令: [root@hadoop ~]#

  • Mysql8.0.22解压版安装教程(小白专用)

    1.资源下载 官网下载地址:https://dev.mysql.com/downloads/mysql/ 2.软件解压 2.1选择位置 需要注意的一点,解压的路径尽量避免出现中文,不然后期会报错. 2.2 更改名字(去文件明后缀) 这里如果不这样子修改,后期可能会报错!亲测. 3.配置文件 3.1 创建my.ini文件 把文本后缀改成ini,并且保存为ANSI格式即可. 这里不修改,可能会造成4.2.2里的错误2,亲测!: 3.2 更改my.ini文件内容 把my.ini用你电脑上的代码编写器打

  • Redhat7.3安装MySQL8.0.22的详细教程(二进制安装)

    一.MySQL安装包下载 官网地址:https://dev.mysql.com/downloads/mysql/ 下载步骤: 过滤操作系统版本 选择归档安装包 下载后,上传并md5校验安装包是否与上图官方提供的值一致,确保传输过程安装包无损害 [root@MyDB1 ~]# cd /usr/local/software/ [root@MyDB1 software]# md5sum mysql-8.0.22-el7-x86_64.tar.gz 52e312605f66aaaa0efcd272b9f

  • 源码编译安装MySQL8.0.20的详细教程

    在上篇文章给大家介绍了: MySQL8.0.20安装教程及其安装问题详细教程  https://www.jb51.net/article/186202.htm mysql8.0.20下载安装及遇到的问题(图文详解)  https://www.jb51.net/article/186208.htm CentOS7安装Mysql8.0.20步骤: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html 1 概述 本文章主要讲述

  • Ubuntu18.04 安装mysql8.0.11的图文教程

    1.下载deb包 2.运行命令 sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb sudo apt update 3.安装mysql8 sudo apt install mysql-server 4.输入root密码 5.密码加密方式选择5.x 6.查看mysql是否安装成功 mysql -u root -p 7.查看mysql字符集,mysql8字符集默认为utf-8. show variables like '%char%'; 总结 以上所述是小编

  • CentOS7版本安装Mysql8.0.20版本数据库的详细教程

    相关阅读: MySQL8.0.20安装教程及其安装问题详细教程  https://www.jb51.net/article/186202.htm mysql8.0.20下载安装及遇到的问题(图文详解)  https://www.jb51.net/article/186208.htm CentOS7安装Mysql8.0.20步骤: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html 官网下载有时速度比较慢,直接点击链接也

  • Linux7.6二进制安装Mysql8.0.27详细操作步骤

    目录 一.环境准备 1.1 操作系统版本 1.2 磁盘空间 1.3 关闭防火墙 1.4 关闭 selinux 1.5 HOST解析 1.6 Mysql下载 二. yum安装及配置 2.1 挂载本地光盘镜像 2.2 配置yum源 2.3 安装依赖包 三.卸载MariaDB 四.安装 MySQL 4.1 用户及目录创建 4.2 用户及组 4.3 上传软件包并解压 五.环境变量配置 六.创建参数文件 七.数据库初始化 八.启动Mysql 九.登陆Mysql 十.修改密码 十一.远程登陆设置 一.环境准

  • win2008下mysql8.0.11升级mysql8.0.17版本详细步骤

    升级背景: 为了解决mysql低版本的漏洞,从mysql5.5升级到了8.0.11版本,再次升级到了8.0.17版本(从版本是2019.7.22发布) mysql8.0.10以上的版本,安装步骤基本一样 经过学习,得知: MySQL的升级方式分为两种:原地升级和逻辑升级.这两种升级方式,本质没有什么区别的.只是在对数据文件的处理上有些区别而已.原地升级是直接将数据文件进行拷贝,而逻辑升级对数据文件的处理方式是通过逻辑导出导入,需要用到mysqldump. 逻辑升级大家都理解,这种方式在数据量比较

  • CentOS8部署LNMP环境之编译安装mysql8.0.29的教程详解

    一.前提 由于我安装了几次,我就不再讲述报错了,有点打脑壳!!!提前把相关依赖和报错就地解决. 1.所需源码包 mysql-8.0.19.tar.gz boost_1_70_0.tar.gz //安装mysql-8所需要的boost版本 rpcsvc-proto-1.4.tar.gz //后面出错所需要的源码包 mysql-8.0.19下载地址:http://mirrors.sohu.com/mysql/ boost_1_70_0下载地址:https://dl.bintray.com/boost

随机推荐