首页 > 数据库 >Linux系统之安装MySQL8.0版本

Linux系统之安装MySQL8.0版本

时间:2023-09-26 10:24:25浏览次数:38  
标签:64 Linux mysql community mysqld yum 版本 MySQL MySQL8.0

一、MySQL介绍

1.1 MySQL简介

MySQL 8.0 是最新版本的 MySQL 数据库管理系统,是一种关系型数据库管理系统,由 Oracle 公司开发和维护。MySQL 8.0 带来了一系列新特性,包括多个性能提升,更好的安全性和扩展性,以及新的管理功能。

1.2 MySQL特点

  • 更好的性能:MySQL 8.0 提供了对于大型查询和事务处理的更好的性能支持。它引入了新的索引类型,如哈希索引,以提供更快的查询操作。
  • 更好的安全性:MySQL 8.0 引入了更好的密码验证规则,以保证用户账户的安全性。它还支持更强的加密,如 TLS 和 SSL。此外,它还提供了更好的访问控制机制,如基于角色的访问控制。
  • 更好的扩展性:MySQL 8.0 引入了新的数据字典架构,它使用了更高效的内存表来缓存表元数据信息,以提高性能。
  • 新的管理功能:MySQL 8.0 引入了新的管理功能,如 InnoDB 集成的全文搜索、更好的在线DDL 和 JSON 支持。

二、本次实践介绍

2.1 环境规划

本次实践环境为个人测试环境,使用操作系统为centos7.6。

2.2 本次实践目的

  • 1.在centos7.6系统下安装MySQL8.0版本。
  • 2.可以远程登录mysql数据库。

三、卸载mariadb数据库

3.1 卸载mariadb数据库

如果系统上已安装有maraidb数据库,需要卸载mariadb

yum remove mariadb* -y
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql/

3.2 卸载mysql数据库

如果系统已安装有其他版本的mysql,需提前卸载清空环境。

rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式,
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql/

四、配置yum仓库

4.1 下载rpm文件

下载mysql80-community-release-el7-7.noarch.rpm

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

4.2 配置yum仓库

配置mysql的yum仓库

 sudo rpm -Uvh mysql80-community-release-el7-7.noarch.rpm

4.3 检查yum仓库状态

检查yum仓库状态

[root@jeven ~]# yum repolist all |grep enable
base/7/x86_64                                CentOS-7 - Base - m enabled: 10,072
extras/7/x86_64                              CentOS-7 - Extras - enabled:    518
mysql-connectors-community/x86_64            MySQL Connectors Co enabled:    227
mysql-tools-community/x86_64                 MySQL Tools Communi enabled:    100
mysql80-community/x86_64                     MySQL 8.0 Community enabled:    424
updates/7/x86_64                             CentOS-7 - Updates  enabled:  5,061

4.4 检查mysql版本

检查mysql默认安装版本

[root@jeven ~]# yum repolist enabled | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community                 227
mysql-tools-community/x86_64      MySQL Tools Community                      100
mysql80-community/x86_64          MySQL 8.0 Community Server                 424

五、安装MySQL8.0

5.1 安装mysql

使用yum直接安装mysql

yum install mysql-community-server -y

5.2 启动mysql服务

启动mysql服务,并设置开机自启。

systemctl enable --now mysqld

5.3 检查mysql服务状态

检查mysql服务状态

[root@jeven ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2023-07-23 19:37:31 CST; 35s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 117898 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 117971 (mysqld)
   Status: "Server is operational"
    Tasks: 38
   Memory: 472.2M
   CGroup: /system.slice/mysqld.service
           └─117971 /usr/sbin/mysqld

Jul 23 19:37:21 jeven systemd[1]: Starting MySQL Server...
Jul 23 19:37:31 jeven systemd[1]: Started MySQL Server.

六、mysql的初始配置

6.1 获取登录密码

获取随机生成的登录密码

[root@jeven ~]# grep 'temporary password' /var/log/mysqld.log
2023-07-23T11:37:25.670116Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Sw#rsuaMh4(I

6.2 本地登录mysql

本地使用生成的随机密码,登录mysql。

mysql -uroot -p

6.3 修改本地用户密码

修改本地用户’root’@‘localhost’ 的密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root.36#336';

6.4 新建远程登录用户

  • 设置用户密码策略的安全强度
set global validate_password.policy=LOW;
  • 设置密码长度不少于4
set global validate_password.length=4;
  • 查看密码策略
SHOW VARIABLES LIKE 'validate_password%';

  • 新建用户
create user 'admin'@'%' identified WITH mysql_native_password BY 'admin';
grant all on *.* to  'admin'@'%'    with GRANT OPTION;
flush privileges;

七、远程登录mysql

在其他mysql客户端远程登录mysql

[root@server ~]# mysql -h 192.168.3.166 -uadmin -padmin
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.0.34 MySQL Community Server - GPL

Copyright (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>

标签:64,Linux,mysql,community,mysqld,yum,版本,MySQL,MySQL8.0
From: https://www.cnblogs.com/huangjinyong/p/17729523.html

相关文章

  • 优化Linux服务器
    正常使用环境下的Linux服务器有精准、稳定、高效、安全等需求,其优化也是有着很多的窍门。本文分享了九条平时进行Linux服务器优化的经验,内容涉及邮件服务器、Web服务器、网络配置、内存管理等方面1时间同步正常使用环境下的服务器对时间的要求是精准的,我的邮件服务器的dovecot服务,......
  • Linux-Stream内存带宽及MLC内存延迟性能测试方法
    1、Stream内存带宽测试  Stream是业界主流的内存带宽测试程序,测试行为相对简单可控。该程序对CPU的计算能力要求很小,对CPU内存带宽压力很大。随着处理器核心数量的增大,而内存带宽并没有随之成线性增长,因此内存带宽对提升多核心的处理能力就越发重要。Stream具有良好的空间局部......
  • Linux-----fork.c进行拆解分析
    fork()函数说明fork()是一个用于创建新进程的系统调用,fork可以在父进程中创建一个子进程。子进程是父进程的副本,frok从父进程继承了大部分资源和状态。先简单理解一下fork()函数#include<stdio.h>#include<stdlib.h>#include<unistd.h>intmain(){pid_tpid;//......
  • 开源防火墙实战手册(4)-linux/unix基础(3)
    目录配置文件主机名主机名和IP地址的映射域名系统(DNS)解析器配置文件主机名[waterruby@localhost~]$cat/etc/hostnamewaterruby-server主机名和IP地址的映射[waterruby@localhost~]$cat/etc/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4loca......
  • linux 中sed命令输出匹配字符的下一行或者若干行
     001、grep实现(base)[root@pc1test2]#lsa.txt(base)[root@pc1test2]#cata.txt##测试数据12keyword345keyword678(base)[root@pc1test2]#grep"keyword"-A2a.txt##输出匹配字符后面的两行keyword34--keyword67 002、s......
  • Linux-----进程、线程、协程的生命周期、调度器slab
    Linux进程、线程、协程的区别进程进程是操作系统中的一个独立执行单元。每个进程都有自己的独立内存空间,包括代码段、数据段、堆栈等。进程之间通常需要通过进程间通信(IPC)来交换数据和信息。进程启动和销毁开销较大,因为需要分配和释放独立的内存空间。进程之间隔离度高,一个......
  • linux 文件权限
    1.查看文件权限2.rwx的意义3.改变文件属性与权限3.1rwx与4213.2改变文件权限:chmod3.3改变文件所属组群:chgrp3.4改变文件所有者:chownLinux下一切皆文件,Linux中所有内容都是以文件的形式保存和管理的,因此了解文件系统是学习Linux十分重要的一步。而Linux是一个多用户操作......
  • linux的认知与基本命令
    一.linux的了解1.什么是Linux?      a,Linux是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布。它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它......
  • Linux-----任务调度层次
    在Linux操作系统中,任务调度涉及多个层次和组件,这些层次和组件共同协作以实现任务的分配和执行。以下是Linux中的任务调度层次:硬件调度最底层的调度发生在处理器硬件层面。硬件调度器(通常由CPU或CPU内核管理)负责在不同任务之间切换,并根据硬件特性执行任务。这包括处理硬件中断、......
  • Linux---内核初始化
    内核初始化引导加载程序(BootLoader)计算机首先加载引导(GRUB)。引导加载程序的任务是从存储介质(硬盘、光盘等)加载操作系统内核到内存中,并跳转到内核的启动位置。设置堆栈和切换到保护模式内核初始开始时,计算机可能仍让处于实模式。内核会设置堆栈,切换到保护模式或长模式......