一、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 32位mysql_Redhat7.3安装MySQL8.0.22的详细教程(二进制安装)相关推荐

  1. linux安装mysql8⼀步⼀步超详细教程

    1.linux安装mysql8⼀步⼀步超详细教程 cd /usr/local/src 2.下载mysql8 wget https://dev.mysql.com/get/Downloads/MySQL ...

  2. centos8安装mysql8_CentOS 8安装MySQL8.0.22图文教程

    安装环境 系统版本:CentOS-8.2.2004(安装centos系统本章节不细节描述) mysql版本:MySQL8.0.22 一.Mysql下载 1.下载 MySQL 所需要的安装包,下载地址: ...

  3. 360天擎卸载密码_Windows安装和完全卸载MySQL8.0(超详细教程)

    前言 MySQL8相比之前版本改动还是挺大的,因为刚从安装接触,就先从基本的说起.现在的mysql8安装只能采用解压配置版,像以前老版本的傻瓜式安装将不复存在. 注意点 MySQL8之后并不需要my. ...

  4. mysql8.0 linux安装自启动_Linux系统安装部署MySQL8.0.12特详细教程

    第一篇文章要详细讲解下Linux系统下安装新版MySQL8.0.12教程,我的系统是Centos7: 1.首先下载MySQL8.0.12软件包 方法一.直接下载到Linux系统: 8.0版本:wget ...

  5. Linux-centos安装MySQL8.0.22连接驱动文件mysql-connector-java-8.0.22-1.el7.noarch.rpm

    目录 1.下载地址 2.选择版本 3.安装驱动 1.下载地址 https://downloads.mysql.com/archives/c-j/ 2.选择版本 选择对应的版本,这里系统选择Redhat ...

  6. mac安装mysql8.0.11_【MySQL】Mac安装MySQL(V8.0.15)蹚坑记录

    这个版本还是挺冷门的,我照着网上的教程搞了好几个小时都老是提示密码错误,终于是有了结果.为避免日后遗忘,以下是我给自己留的存档,非任何原创学术技术研究. 1.下载dmg,之后正常安装. 在选择哪种密码 ...

  7. mysql8.0.22安装配置_无需安装—Mysql8.0.22安装与配置详细教程

    免安装版的Mysql MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的 标准化语言,其特点为体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,在 Web 应 ...

  8. 在Ubuntu20.04上安装MySQL8.0及正确配置[已验证]

    在Ubuntu20.04上安装MySQL8.0及正确配置[已验证] 安装MySQL 验证 登陆MySQL 创建db 解决workbench连接的问题 小结 常用操作 如何新增用户 对新增的用户更改加密 ...

  9. 刀片式服务器安装centos7.6,安装mysql8.0,jdk,docker,nginx,

    1.为刀片式服务器安装Linux系统并配置Jdk 1.1先使用ultralSO制作Linux系统 U盘启动盘 **1**先准备好centos7的ISO文件,下载ultralSO安装后执行,点击文件-& ...

最新文章

  1. 程序员:我不学Python了!!
  2. matlab交流电源并联,交流电路串联谐振和并联谐振的仿真分析
  3. 万字长文带你了解蚁群算法及求解复杂约束问题【源码实现】
  4. Asp.Net Core 中IdentityServer4 授权中心之应用实战
  5. xss原理和注入类型
  6. IE8 beta2现已正式发布!
  7. KNN回归python实现
  8. 谷歌和ESRI眼中的Web Mercator
  9. [case29]JDK11的ZGC小试牛刀
  10. Silverlight实用窍门系列:20.后台CS代码中创建四种常用的动画效果【附带源码实例】...
  11. 您电脑的网络管家 -NetSetMan
  12. Linux使用ragel进行文本快速解析(上)
  13. 怎么把mov视频转换成mp4格式
  14. c语言反步法编程,CCM模式下Boost电路的反步法非线性控制与仿真.pdf
  15. 串口转以太网与监控软件modbusTCP客户端通信配置
  16. 关于Excel自定义TEXTJOIN函数、SWITCH函数
  17. 【贪心算法】-背包问题
  18. Python的前奏:excel常用功能简介,数据透视表,切片器
  19. 「万物生长」一个APK从诞生到活跃在Android手机上,android驱动开发权威指南pdf
  20. 华为用linux系统装eclipse,centos装eclipse

热门文章

  1. codeforces div3 D Circular Dance (链式向前星)
  2. ajax注册表单用户名实时验证,Ajax注册表单用户名实时验证..doc
  3. android java广播,[原]Android应用程序发送广播(sendBroadcast)的过程分析
  4. linux可以生成pdb调试信息吗,Linux通过使用pdb简单调试python计划
  5. java 取字符的ascii_如何用java获得字符串的ASCII值
  6. 工程师必知的代码重构指南
  7. android http pos 请求和gson解析处理head头信息
  8. Web服务之四:httpd虚拟主机
  9. 工厂模式的python实现
  10. 【软件工程】关于计算机的一些问答与思考