先看一下我的安装环境

MySQL版本
链接 https://dev.mysql.com/downloads/repo/yum/
点击跳转下方图片地址链接

这个rpm可以使用wget下载

wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

也可以点击DownLoad下载后在导入centos7中

下载完成后使用yum命令本地安装yum源

yum localinstall mysql80-community-release-el7-1.noarch.rpm

执行完毕后使用下面的命令检查是否安装成功

yum repolist enabled | grep "mysql.*-community.*"

看到类似下图说明安装成功

[root@localhost 桌面]# yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64        MySQL Connectors Community         0
mysql-tools-community/x86_64             MySQL Tools Community              0
mysql80-community/x86_64                 MySQL 8.0 Community Server         0

使用下面命令进行安装

yum install -y mysql-community-server

安装过程

[root@localhost 桌面]# yum install -y mysql-community-server
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile* base: mirrors.cqu.edu.cn* extras: mirrors.aliyun.com* updates: mirrors.cqu.edu.cn
base                                                     | 3.6 kB     00:00
extras                                                   | 3.4 kB     00:00
mysql-connectors-community                               | 2.5 kB     00:00
mysql-tools-community                                    | 2.5 kB     00:00
mysql80-community                                        | 2.5 kB     00:00
updates                                                  | 3.4 kB     00:00
(1/7): extras/7/x86_64/primary_db                          | 205 kB   00:02
(2/7): base/7/x86_64/group_gz                              | 166 kB   00:02
(3/7): mysql-connectors-community/x86_64/primary_db        |  29 kB   00:02
(4/7): mysql-tools-community/x86_64/primary_db             |  48 kB   00:02
(5/7): mysql80-community/x86_64/primary_db                 |  35 kB   00:00
(6/7): base/7/x86_64/primary_db                            | 5.9 MB   00:03
(7/7): updates/7/x86_64/primary_db                         | 6.0 MB   00:01
正在解决依赖关系
--> 正在检查事务
---> 软件包 mysql-community-server.x86_64.0.8.0.13-1.el7 将被 安装
--> 正在处理依赖关系 mysql-community-common(x86-64) = 8.0.13-1.el7,它被软件包 mysql-community-server-8.0.13-1.el7.x86_64 需要
--> 正在处理依赖关系 mysql-community-client(x86-64) >= 8.0.0,它被软件包 mysql-community-server-8.0.13-1.el7.x86_64 需要
--> 正在检查事务
---> 软件包 mysql-community-client.x86_64.0.8.0.13-1.el7 将被 安装
--> 正在处理依赖关系 mysql-community-libs(x86-64) >= 8.0.0,它被软件包 mysql-community-client-8.0.13-1.el7.x86_64 需要
---> 软件包 mysql-community-common.x86_64.0.8.0.13-1.el7 将被 安装
--> 正在检查事务
---> 软件包 mariadb-libs.x86_64.1.5.5.56-2.el7 将被 取代
--> 正在处理依赖关系 libmysqlclient.so.18()(64bit),它被软件包 2:postfix-2.10.1-6.el7.x86_64 需要
--> 正在处理依赖关系 libmysqlclient.so.18(libmysqlclient_18)(64bit),它被软件包 2:postfix-2.10.1-6.el7.x86_64 需要
---> 软件包 mysql-community-libs.x86_64.0.8.0.13-1.el7 将被 舍弃
--> 正在检查事务
---> 软件包 mysql-community-libs-compat.x86_64.0.8.0.13-1.el7 将被 舍弃
--> 解决依赖关系完成依赖关系解决================================================================================Package                      架构    版本             源                  大小
================================================================================
正在安装:mysql-community-libs         x86_64  8.0.13-1.el7     mysql80-community  2.3 M替换  mariadb-libs.x86_64 1:5.5.56-2.el7mysql-community-libs-compat  x86_64  8.0.13-1.el7     mysql80-community  2.1 M替换  mariadb-libs.x86_64 1:5.5.56-2.el7mysql-community-server       x86_64  8.0.13-1.el7     mysql80-community  381 M
为依赖而安装:mysql-community-client       x86_64  8.0.13-1.el7     mysql80-community   26 Mmysql-community-common       x86_64  8.0.13-1.el7     mysql80-community  554 k事务概要
================================================================================
安装  3 软件包 (+2 依赖软件包)总下载量:412 M
Downloading packages:
警告:/var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-common-8.0.13-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
mysql-community-common-8.0.13-1.el7.x86_64.rpm 的公钥尚未安装
(1/5): mysql-community-common-8.0.13-1.el7.x86_64.rpm      | 554 kB   00:00
(2/5): mysql-community-libs-8.0.13-1.el7.x86_64.rpm        | 2.3 MB   00:00
(3/5): mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm | 2.1 MB   00:00
(4/5): mysql-community-client-8.0.13-1.el7.x86_64.rpm      |  26 MB   00:06
(5/5): mysql-community-server-8.0.13-1.el7.x86_64.rpm      | 381 MB   00:39
--------------------------------------------------------------------------------
总计                                                10 MB/s | 412 MB  00:41
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 检索密钥
导入 GPG key 0x5072E1F5:用户ID     : "MySQL Release Engineering <mysql-build@oss.oracle.com>"指纹       : a4a9 4068 76fc bd3c 4567 70c8 8c71 8d3b 5072 e1f5软件包     : mysql80-community-release-el7-1.noarch (installed)来自       : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction正在安装    : mysql-community-common-8.0.13-1.el7.x86_64                  1/6 正在安装    : mysql-community-libs-8.0.13-1.el7.x86_64                    2/6 正在安装    : mysql-community-client-8.0.13-1.el7.x86_64                  3/6 正在安装    : mysql-community-server-8.0.13-1.el7.x86_64                  4/6 正在安装    : mysql-community-libs-compat-8.0.13-1.el7.x86_64             5/6 正在删除    : 1:mariadb-libs-5.5.56-2.el7.x86_64                          6/6 验证中      : mysql-community-libs-compat-8.0.13-1.el7.x86_64             1/6 验证中      : mysql-community-libs-8.0.13-1.el7.x86_64                    2/6 验证中      : mysql-community-client-8.0.13-1.el7.x86_64                  3/6 验证中      : mysql-community-server-8.0.13-1.el7.x86_64                  4/6 验证中      : mysql-community-common-8.0.13-1.el7.x86_64                  5/6 验证中      : 1:mariadb-libs-5.5.56-2.el7.x86_64                          6/6 已安装:mysql-community-libs.x86_64 0:8.0.13-1.el7                                    mysql-community-libs-compat.x86_64 0:8.0.13-1.el7                             mysql-community-server.x86_64 0:8.0.13-1.el7                                  作为依赖被安装:mysql-community-client.x86_64 0:8.0.13-1.el7                                  mysql-community-common.x86_64 0:8.0.13-1.el7                                  替代:mariadb-libs.x86_64 1:5.5.56-2.el7                                            完毕!

使用systemctl start mysqld命令启动
使用systemctl status mysqld查看服务启动状态
服务启动过程

[root@localhost 桌面]# systemctl start mysqld
[root@localhost 桌面]# systemctl status mysqld
● mysqld.service - MySQL ServerLoaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)Active: active (running) since 四 2018-11-22 19:38:59 CST; 1min 39s agoDocs: man:mysqld(8)http://dev.mysql.com/doc/refman/en/using-systemd.htmlProcess: 55058 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)Main PID: 55140 (mysqld)Status: "SERVER_OPERATING"Tasks: 37CGroup: /system.slice/mysqld.service└─55140 /usr/sbin/mysqld11月 22 19:38:36 localhost.localdomain systemd[1]: Starting MySQL Server...
11月 22 19:38:59 localhost.localdomain systemd[1]: Started MySQL Server.

设置开机启动

systemctl enable mysqld
systemctl daemon-reload

修改root的默认密码
在修改密码之前要先做一件事,就是找到mysql的配置文件(vim /etc/my.cnf)↓
把密码的加密方式改成之前版本的,8.0版本更换了密码的加密方式,我们就先用旧的
找到Mysql的配置文件并编辑

vim /etc/my.cnf

找到 default-authentication-plugin=mysql_native_password
打开注释,保存退出编辑。

查询密码命令

 grep 'temporary password' /var/log/mysqld.log

查询过程

[root@localhost 桌面]# grep 'temporary password' /var/log/mysqld.log
2018-11-22T11:38:51.559334Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 5(Y2Ly+Cs:Q*

5(Y2Ly+Cs:Q*就是我的初始化登录密码

登录mysql

[root@localhost 桌面]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.13Copyright (c) 2000, 2018, 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>

登录后不允许进行任何操作,我们需要先修改密码,否则一直会报下面这个错误

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

密码修改命令,如果报错可能是密码设置的简单了

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

如果不想输入太复杂的密码,可以通过下面的方式降低密码复杂度,这样密码就可以随便设置了

查看密码设置策略

SHOW VARIABLES LIKE 'validate_password%';

得到下面结果

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password.check_user_name    | ON    |
| validate_password.dictionary_file    |       |
| validate_password.length             | 4     |
| validate_password.mixed_case_count   | 1     |
| validate_password.number_count       | 1     |
| validate_password.policy             | LOW   |
| validate_password.special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.06 sec)

参数解释
validate_password.check_user_name
用户名检测
validate_password_dictionary_file
插件用于验证密码强度的字典文件路径。
validate_password_length
密码最小长度
validate_password_mixed_case_count
密码至少要包含的小写字母个数和大写字母个数。
validate_password_number_count
密码至少要包含的数字个数。
validate_password_policy
密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。有以下取值:
Policy Tests Performed
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file
默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
validate_password_special_char_count
密码至少要包含的特殊字符数。

我们用下面两条命令修改密码强度限制
设置密码强度级别,三个数字分别对应低,中,高三个级别.我们设置成"低"也就是0

set global validate_password.policy=0;

这个是设置密码长度的,不能低于4位,根据需要自己设置长度.

set global validate_password.length=4;

这个是修改密码的命令,给root用户本地登录设置密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '我的密码';

增加远程连接用户

创建用户(user:用户名;%:任意ip,也可以指定)

CREATE USER 'testname'@'%' IDENTIFIED BY 'testpwd';

授权,默认创建的用户权限是usage,就是无权限,只能登录而已
(all:所有权限,这里有select,update等等权限,可以去搜一下;后面的
.*:指定数据库.指定表,这里是所有;to后面就是你刚才创建的用户)
*

grant all on *.* to 'testname'@'%';

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
username与host 根据情况进行修改

GRANT all ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

最后刷新一下

FLUSH PRIVILEGES;

使用Navicat 远程登录
更改加密方式:

ALTER USER 'testname'@'%' IDENTIFIED BY 'testpwd' PASSWORD EXPIRE NEVER;

更改密码:testpwd

ALTER USER 'testname'@'%' IDENTIFIED WITH mysql_native_password BY 'testpwd';

最后刷新一下

FLUSH PRIVILEGES;

防火墙设置,让 3306 端口对外可访问

iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
# 查看规则是否生效
iptables -L -n # 或者: service iptables status# 此时生产环境是不安全的,远程管理之后应该关闭端口,删除之前添加的规则
iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
注意:上面iptables添加/删除规则都是临时的,如果需要重启后也生效,需要保存修改:
service iptables save # 或者: /etc/init.d/iptables save

或者

vi /etc/sysconfig/iptables # 加上下面这行规则也是可以的
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

小白centos7安装mysql8步骤说明相关推荐

  1. CentOS7 安装 mysql8

    本文主要从以下几个方面对自己在centos7 下安装mysql8过程做如下总结: CentOS7 安装mysql8 步骤: window下的Navicat 连接MySql8: 涉及到的Linux命令 ...

  2. centos7安装Mysql8.0步骤

    CentOS7安装mysql8.0步骤 1.1 安装前清理工作: 1.1.1 清理原有的mysql数据库: 使用以下命令查找出安装的mysql软件包和依赖包: rpm -pa | grep mysql ...

  3. 虚拟机安装mysql8步骤

    虚拟机安装Mysql8步骤 一.创建虚拟机,搭建centos7Linux系统 Linux系统安装,用的VirtualBox虚拟机,下载地址https://www.virtualbox.org/wiki ...

  4. Centos7安装MySql8出现失败处理

    腾讯云centos7安装Mysql过程,以及遇到的问题 centos7安装MySql8   有一个1核2G的腾讯云服务器和阿里云服务器,去年活动打骨折买的,才38一年.今天试着在腾讯云的centos7 ...

  5. Centos7 安装mysql8.0.21 Compressed TAR Archive版

    Centos7 安装mysql8.0.21 Compressed TAR Archive版 一.官网下载安装包https://downloads.mysql.com/archives/communit ...

  6. CentOS7安装MySQL8.0和Nginx

    本文档包括使用 PHP-FPM 为 Nginx 1.4.x HTTP 服务器安装和配置 PHP 的说明和提示. 本指南假定您已经从源代码成功构建 Nginx,并且其二进制文件和配置文件都位于 /usr ...

  7. centos7安装MySQL8以及各种管理工具

    1.安装MySQL8. 首先查看 mysql 安装了哪些东西,为了先把自带的MySQL5删除. rpm -qa | grep -i mysql 若返回如下情况,说明存在mysql (我已经安装了MyS ...

  8. 【mysql】新手必备 centos7 安装mysql8

    文章目录 前言 实验环境 1. 内核版本 2. 操作系统版本: 3. 准备mysql数据库及版本: 4. 卸载掉机器中mariadb的包 5. 关闭selinux和防火墙 注意: 正式安装mysql ...

  9. CentOS7安装mysql8并配置

    一.下载 对应版本进去复制下载地址,我这里的下载地址为mysql8.0版本https://dev.mysql.com/get/mysql80-community-release-el7-3.noarc ...

最新文章

  1. Android开发者指南(5) —— monkeyrunner
  2. FFplay源代码分析:整体流程图
  3. 主页被篡改修正方法(续)
  4. 代码的世界中,一个逻辑套着另外一个逻辑,如何让每一种逻辑在代码中都有迹可循?...
  5. SpringCloud配置中心内容加密
  6. mapgis中6.7属性结构_不知道如何组织项目结构,这个项目也许可以给你启发
  7. 在linux环境中配置tomcat
  8. 中超联赛提交函数的c语言,C语言文件操作(File)
  9. 【王道操作系统笔记】操作系统的运行机制和体系结构
  10. mktime()的格式
  11. 计算机二级考试先后顺序,(常文档排按照计算机二级考试试题顺序编写.doc
  12. 迅雷赚钱宝变砖TTL修复教程赚钱宝刷机
  13. 201871010114-李岩松《面向对象程序设计(java)》第一周学习总结
  14. Python中常用英文单词大全
  15. 最新WIFI分销大师小程序源码+带后端/亲测可用
  16. 对mysql优缺点的思考
  17. 哪一种验证方法最好?形式验证、硬件加速还是动态仿真?
  18. 【MYSQL用户创建报错】ERROR 1396 (HY000): Operation CREATE USER failed for ‘user1‘@‘%‘
  19. 三星Z Fold2 5G评测:折叠屏手机的最强形态
  20. SSLOJ2895 购买干草

热门文章

  1. 列举独立开发者适用的数种游戏引擎
  2. 北方工业大学计算机网络,北方工业大学计算机科学与技术研究生导师介绍:马东超...
  3. 【js手写系列】防抖节流(debounce throttle)
  4. mac下安装Homebrew教程 碰壁的最终归宿
  5. fluent什么时候用滑移网格_Fluent 动网格与滑移网格,震荡水翼flapping foil
  6. for master
  7. easyui隔行变色
  8. APP(Android版)客户端与服务器端时间校准
  9. Dependency‘org.framework:spring-webmvc:’ not found
  10. 圣诞节特别篇:网站美化圣诞雪花