zoukankan      html  css  js  c++  java
  • RHEL8 CentOS8 下安装 MySQL 8.0<亲测>

    RHEL8 CentOS8 下安装 MySQL 8.0

    妙正灰
    9月前发布在 Linux
     182 0 2
     

    介绍

    RHEL 8 默认发布的MySQL版本8.0,它具有以下新功能:

    1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 带来了更好的性能**

    2. NoSQL:MySQL 从 5.7 版本开始提供 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进。该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档提供了多文档事务支持和完整的 ACID 合规性。

    3. 窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式。

    4. 隐藏索引:在 MySQL 8.0 中,索引可以被“隐藏”和“显示”。当对索引进行隐藏时,它不会被查询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。

    5. 降序索引:MySQL 8.0 为索引提供按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序。

    6. 通用表表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰。

    7. UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。

    8. JSON:MySQL 8 大幅改进了对 JSON 的支持。

    9. 可靠性:InnoDB 现在支持表 DDL 的原子性。

    10. 高可用性(High Availability):InnoDB 集群为您的数据库提供集成的原生 HA 解决方案。

    11. 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度、授权。

    目前 RHEL8 和 CentOS8 引用新的软件源方式——APPStream,针对非系统核心的软件可以让其保持支持主流版本的能力,以及满足部分客户同一个软件想同时安装不同版本的需求。

    因此后续,RHEL 和 CentOS 8会 MySQL 8.1 或者 9 稳定版发布后提供收到官方支持的软件源安装支持。

    安装

    一、(可选)如果主机内存小于1G需要设置 SWAP,不然无法启动 MySQL。 MySQL 8.0 的 InnoDB 很吃内存。

     
    curl -o create-swap.sh https://gist.githubusercontent.com/ivmm/1ecb35c74caef54727cdd9798dfb72bd/raw/5e697441ba6784f04d674556462478e0e64a317a/create-swap.sh
     
    sh create-swap.sh 1G// 1G设置1G交换内存,可以自定义

    二、安装 MySQL8.0

    yum install @mysql:8.0 -y

    三、启动 MySQL8.0 服务和开启启动

     
    systemctl start mysqld
     
    systemctl enable mysqld

    四、安全初始化,设置Root密码和进行安全设置

    mysql_secure_installation

    基本介绍:
    Enter current password for root (enter for none):
    解释:输入当前 root 用户密码,默认为空,直接回车。
    Set root password? [Y/n] y > > 解释:要设置 root 密码吗?输入 y 表示愿意。
    Remove anonymous users? [Y/n] y
    解释:要移除掉匿名用户吗?输入 y 表示愿意。
    Disallow root login remotely? [Y/n] y
    解释:不想让 root 远程登陆吗?输入 y 表示愿意。
    Remove test database and access to it? [Y/n] y
    解释:要去掉 test 数据库吗?输入 y 表示愿意。
    Reload privilege tables now? [Y/n] y
    解释:想要重新加载权限吗?输入 y 表示愿意。

    RHEL 8 下的 MySQL 8.0 使用mysql_native_password作为默认的身份验证算法,而不是默认的 caching_sha2_password ,如果依赖于新算法,需要手动修改 /etc/my.cnf.d/mysql-default-authentication-plugin.cnf 文件

    一、 登入数据库查看是否安装成功

    mysql -u root -p

    然后输入密码后登录

    二、简单查个版本号校验一下

     
    mysql> select version();
     
    +-----------+
     
    | version() |
     
    +-----------+
     
    | 8.0.13 |
     
    +-----------+
     
    1 row in set (0.00 sec)

    文件地址

    MySQL 位置路径备注
    my.cnf /etc/my.cnf.d/mysql-server.cnf /etc/my.cnf 是个空文件
    目录 /var/lib/mysql  
    socket /var/lib/mysql/mysql.sock  
    错误日志 /var/log/mysql/mysqld.log  
    PID文件 /run/mysqld/mysqld.pid  

    RHEL8 CentOS8 下安装 MariaDB 10.3 10.4 请参考:
    https://www.mf8.biz/rhel8-centos8-install-mariadb/

    查看全文
  • 相关阅读:
    springCloud学习总览
    leetcode Q46.把数字翻译成字符串
    手把手教你用redis实现一个简单的mq消息队列(java)
    主流排序算法全面解析
    从零开始react实战:云书签(总览)
    从零开始react实战:云书签-1 react环境搭建
    springboot整合elasticsearch7.2(基于官方high level client)
    你知道如何在小程序中推送模板消息?
    最新ubuntu搭建公网个人邮件服务器(基于postfix,dovecot,mysql)
    手把手docker部署java应用(初级篇)
  • 原文地址:https://www.cnblogs.com/duanweishi/p/12484744.html
  • 最新文章
  • Js 网页版扫雷游戏代码实现
    JS + HTml 时钟代码实现
    纯JS单页面赛车游戏代码分享
    jQuery 选择器 复杂查询
    JS优缺点
    JS 射击游戏
    自定义Alert+自动关闭
    Css Html 大风车
    JS 部分实例化方法(Curry)
    关于JS的日常工作总结
  • 热门文章
  • JS实现数组去重
    用Vue实现一个简单的图片轮播
    Javascript小白经典题型(二)
    Python系列教程一Python的基础语法(二)
    Python系列教程一Python入门(一)
    《Node.js教程系列》—初步了解node.js(一)
    《Node.js教程系列》—Node.js+MySQL+RESTful
    Javascript小白经典题型解析(一)
    Javascript小白经典题型(一)
    前端面试题目收集(一)
Copyright © 2011-2022 走看看