Ubuntu 20.04安装MySQL8+完整指南

ubuntu20.04离线安装mysql8.0.30的方法步骤 Ubuntu20.04离线安装MySQL 8.0最新版 阅读详情

一、核心安装步骤对比与选择

在 Ubuntu 20.04 上安装 MySQL 8+,主要有以下三种主流方法,其特点对比如下:

安装方法核心优势适用场景复杂度
APT 仓库安装官方推荐,自动管理依赖与更新,版本稳定可靠。生产环境、常规开发环境首选。低
DEB 包手动安装可安装特定版本,不依赖网络仓库。需要离线安装或特定补丁版本。中
Docker 容器化安装环境隔离,部署快速,易于维护和迁移。测试、CI/CD 或微服务环境。中

对于绝大多数场景,推荐使用 APT 仓库安装,因其最为简便且由 Ubuntu 和 MySQL 官方共同维护。以下将以此方法为重点进行详细说明 。

二、通过 APT 仓库安装 MySQL 8.0

1. 更新系统包索引并安装 MySQL

首先,更新本地软件包列表,然后安装 mysql-server 包。此命令会安装 MySQL 8.0 的最新可用版本。

sudo apt update
sudo apt install mysql-server -y

执行后,APT 将自动处理所有依赖关系,包括客户端库和公共文件 。

2. 启动并验证 MySQL 服务

安装完成后,MySQL 服务通常会自动启动。为确保服务运行并设置为开机自启,执行以下命令:

# 检查服务状态
sudo systemctl status mysql

# 若未运行,则启动服务
sudo systemctl start mysql

# 设置开机自启
sudo systemctl enable mysql

systemctl status mysql 的输出应显示 active (running),表明服务已成功启动 。

3. 运行安全初始化脚本

MySQL 包含一个安全脚本,用于设置 root 密码、移除匿名用户、禁止远程 root 登录等。这是加固安装的关键步骤。

sudo mysql_secure_installation

执行此脚本后,将出现一系列交互式提示:

  • 验证密码组件:推荐输入 Y 以启用密码强度验证。
  • 设置 root 密码:为 MySQL root 用户设置一个强密码。
  • 移除匿名用户:输入 Y 以提高安全性。
  • 禁止远程 root 登录:输入 Y(除非有特殊需求)。
  • 移除测试数据库:输入 Y。
  • 重新加载权限表:输入 Y 使更改立即生效 。

三、配置与基本操作

1. 调整身份验证插件(如遇连接问题)

MySQL 8.0 默认使用 caching_sha2_password 插件,部分旧版客户端可能不兼容。如果需要改用传统的 mysql_native_password 插件,需进行以下配置。

首先,以 root 身份登录 MySQL:

sudo mysql -u root -p

在 MySQL 提示符下,执行以下 SQL 语句修改 root 用户的认证插件和密码(请将 'YourNewPassword' 替换为你的实际密码):

-- 更改root用户的认证插件和密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourNewPassword';
-- 刷新权限使更改生效
FLUSH PRIVILEGES;
-- 退出MySQL
EXIT;

此操作解决了部分第三方工具(如旧版 MySQL Workbench)的兼容性问题 。

2. 创建新用户与数据库(生产环境建议)

出于安全考虑,生产环境中应避免直接使用 root 用户进行日常操作。以下是创建新数据库和专属用户的示例:

# 登录MySQL
sudo mysql -u root -p
-- 创建一个新的数据库,例如 `myappdb`
CREATE DATABASE myappdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- 创建一个新用户,例如 `appuser`,并设置密码
CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'StrongUserPassword123!';

-- 授予新用户对 `myappdb` 数据库的所有权限
GRANT ALL PRIVILEGES ON myappdb.* TO 'appuser'@'localhost';

-- 刷新权限
FLUSH PRIVILEGES;

-- 退出
EXIT;

现在,你可以使用 appuser 和其密码通过 mysql -u appuser -p 登录并管理 myappdb 数据库 。

3. 配置远程访问(谨慎开启)

默认情况下,MySQL 只允许本地连接。如需从其他机器访问,需进行配置:

a. 修改 MySQL 绑定地址:
编辑 MySQL 配置文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

找到 bind-address 行,将其值从 127.0.0.1 改为 0.0.0.0(允许所有 IP)或特定的服务器 IP。

bind-address            = 0.0.0.0

b. 授予用户远程连接权限:
再次登录 MySQL,为用户授权(例如,允许 appuser 从任何主机连接):

CREATE USER 'appuser'@'%' IDENTIFIED BY 'StrongUserPassword123!';
GRANT ALL PRIVILEGES ON myappdb.* TO 'appuser'@'%';
FLUSH PRIVILEGES;

重要安全警告:'%' 通配符允许从任何主机连接。在生产环境中,应尽可能将 '%' 替换为具体的客户端 IP 地址或网段(如 '192.168.1.%'),并确保防火墙(如 UFW)已正确配置,仅允许必要的端口(默认 3306)通过 。

c. 重启 MySQL 服务使配置生效:

sudo systemctl restart mysql

四、验证安装与连接测试

1. 版本验证

通过以下命令检查已安装的 MySQL 版本:

mysql --version

输出应类似 mysql Ver 8.0.xx for Linux on x86_64 (MySQL Community Server - GPL),确认安装的是 MySQL 8.0+ 版本 。

2. 基本功能测试

登录 MySQL 并执行简单查询,验证安装是否成功:

mysql -u appuser -p
-- 显示当前用户和数据库版本
SELECT USER(), VERSION();
-- 显示所有数据库列表(应能看到你创建的 `myappdb`)
SHOW DATABASES;

五、故障排查与常用命令

  • 查看错误日志:若服务启动失败,首要检查错误日志。
    sudo tail -f /var/log/mysql/error.log
    
  • 重置 root 密码(如果忘记):
    1. 停止 MySQL 服务:sudo systemctl stop mysql
    2. 以安全模式启动并跳过权限表:sudo mysqld_safe --skip-grant-tables &
    3. 无密码登录:mysql -u root
    4. 在 MySQL 中执行:FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
    5. 退出并重启 MySQL 服务 。
  • 彻底卸载 MySQL:
    sudo systemctl stop mysql
    sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
    sudo rm -rf /etc/mysql /var/lib/mysql
    sudo apt autoremove
    
    此操作将删除所有配置文件和数据,请务必提前备份 。

参考来源

 

ROS2机械臂MPC轨迹规划实战:从MoveIt 2插件配置到参数调优全流程 本文详细介绍了ROS2机械臂MPC轨迹规划的全流程,从MoveIt 2插件配置到参数调优。通过模型预测控制(MPC)技术,实现高精度运动控制,特别适合复杂装配任务。文章包含环境搭建、插件部署、参数设计及实战调优方法,帮助开发者快速掌握ROS2机械臂的MPC轨迹规划技术。 阅读详情

相关推荐

cartographer从入门到精通(一):cartographer介绍

Cartographer的架构图我们可以看到白色框出来的三个区域,分别是Input Sensor Data(数据输入模块)Local SLAM(局部SLAM模块)Global SLAM (background thread)(全局SLAM模块)下面我们分别介绍一下这几个模块。

weixin_68094467的博客 1053

Ubuntu 20.04 安装最新 MySQL 8.0 官方版完整指南

MySQL 是广泛使用的开源关系型数据库,其版本演进直接影响功能可用性、安全合规与性能表现。在 Ubuntu 系统中,APT 包管理机制虽保障稳定性,但 LTS 版本长期冻结上游更新,导致默认 mysql-server 版本严重滞后(如 Ubuntu 20.04 仅提供 8.0.19),缺失 JSON_TABLE 增强、SET PERSIST 等关键特性及近年安全补丁。为兼顾版本新鲜度与系统兼容性,接入 MySQL 官方 APT 仓库成为生产环境首选方案——它通过 GPG 签名验证、依赖自动解析与原子化安装

weixin_33724046的博客 399

AD从原理图到PCB超详细教程

我在学习AD的时候,看了网上很多教程,但是东西很杂,有很多条理不清而且废话很多,所以相信大家学习的时候也是遇到一样的困难。我就特地写一篇帖子,整理了一下AD从画原理图开始一直到画完PCB文件的所有步骤,一方面是供大家参考学习,另一方面可以方便我自己学习记忆更加深刻。我用的版本是AD16中文版,大家用新的版本AD20或者AD22应该操作都是差不多的。

人生寂寞如雪 18万+

Ubuntu 20.04 安装 MySQL 8.0 后无法登录的完整排障指南

MySQL 是一种关系型数据库管理系统(RDBMS),其核心原理包括客户端-服务器架构、基于插件的认证机制与严格的权限模型。在 Ubuntu 20.04 系统中,MySQL 8.0 默认采用 auth_socket 插件实现操作系统级身份认证,而非传统密码验证,这一设计显著提升了本地安全性,但也导致普通用户执行 mysql -u root -p 时必然失败。该机制的技术价值在于规避密码明文传输与存储风险,适用于开发环境下的 root 管理隔离;典型应用场景涵盖 PHP/Laravel 本地开发、Django

cuiyingchan0663的博客 436

卡诺图化简法

目录 1.学前需要了解知识点 2.卡诺图(karnaugh map) 3.逻辑函数的卡诺图化简法 4.总结 1.学前需要了解知识点 最小项的定义 最小项的表示方法 最小项的相邻性 最小项的定义:一个函数的某个乘积项包含了函数的全部变量,其中每个变量都以原变量或反变量的形式出现,且仅出现一次,则这个乘积项称为该函数的一个标准积项,通常称为最小项。 最小项的表示方法:通常用来表...

hahasusu的专栏 17万+

Syzkaller实战教程2:运行环境配置+实例运行

本文详细介绍了在linux系统上搭建Syzkaller内核模糊测试环境的完整流程。 1.环境配置:通过VMware创建Ubuntu20.04虚拟机A,配置QEMU/KVM虚拟化环境,安装Go语言工具链和Syzkaller; 2.内核编译:下载Linux内核源码并配置KCOV等调试选项,编译生成带覆盖率支持的bzImage内核镜像; 3.测试环境构建:使用debootstrap创建Debian虚拟机镜像,通过QEMU启动嵌套虚拟机B; 实例测试: 4.演示两种测试场景 - 提供完整上手教程

cuguanren的博客 1377

deepin20.8 、ubutun22.04安装mysql8.0.31

在Deepin20.7.1下安装mysql 8.0.31

feichangyanse的博客 553

汇编语言(第4版)王爽 课程设计2 详细实现(一、虚拟模式DOS运行篇)

由于虚拟模式的限制,我们编写的许多逻辑暂时不能被检验,而因为《汇编语言》编写时间较早,其所依赖的运行环境如今只能够依靠虚拟机来搭建。比如实模式DOS,搭建步骤比较繁琐,因此我将其它的部分放在下一篇文章中进行讲解。事实上,我们实现的程序属于《汇编语言》课程设计2中任务程序部分,其中的完整任务还涉及到将该任务程序安装到软盘等操作,这些也都需要在实模式下才能运行,所以统一放到下一篇文章进行实现。

m0_73327328的博客 2824

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

在Ubuntu20.04上安装MySQL8.0及正确配置[已验证]安装MySQL验证登陆MySQL创建db解决workbench连接的问题小结常用操作如何新增用户对新增的用户更改加密方式和密码卸载MySQL参考 Ubuntu在20.04版本中,源仓库中MySQL的默认版本已经更新到8.0。因此可以直接安装。 安装MySQL sudo apt-get update #更新源 sudo apt-get install mysql-server #安装 验证 安装完成后,可以通过下面的命令来查看时候安装成

用心读书 6万+

Arduino开发实例-EMG 肌肉信号传感器

在医学研究中,测量肌肉的活动、收缩和扩张非常重要。 EMG 肌肉传感器测量肌肉活动并产生信号以显示扩张和收缩量。 因此,输出取决于所选肌肉的活动量。 3 绿色、红色和黄色电极连接到模块,用于传输来自肌肉运动的电信号。

视觉与物联智能 1698

GJB 5000B二级-II实施基础

本文主要描述GJB 5000B二级II实施基础与GJB 5000A的变化情况,以及过程域各条款的实施要点

Abel的博客 2581

Ubuntu20.04安装MySQL及配置MySQL workbench

文章目录前言一、MySQL安装与配置1. 安装MySQL2. 配置MySQL二、配置MySQL远程访问三、安装配置MySQL workbench1. 安装MySQL workbench2.使用MySQL workbench连接到数据库总结 前言 最近在学习林子雨老师的大数据时,发现为 Hadoop 安装 Hive 需要使用 MySQL 数据库保存 Hive 的元数据,而不是采用 Hive 自带的 derby 来存储元数据。为了填补大数据专栏的空白,查阅资料完成此篇博客。 系统版本:Ubuntu20.04

程序必须为人类阅读而编写,并且仅仅碰巧可以让机器执行 1万+

网络工程师软考通关指南:网络新技术与应用深度解析

网络安全与管理是网络工程师必须掌握的核心技能,华为设备在企业网络中广泛应用。建议考生在理解安全原理的基础上,重点掌握华为特有的命令体系和配置方法,通过模拟实验加深理解。下篇文章将深入讲解"网络优化与QoS"章节,涵盖流量调度、拥塞避免、服务质量等关键技术,敬请期待。

Programming Talk 253

在Ubuntu 20.04上安装MySQL的方法

MySQL 是一个开源的数据库管理系统,通常作为流行的 LAMP(Linux、Apache、MySQL、PHP/Python/Perl)堆栈的一部分安装。它实现了关系模型,并使用结构化查询语言(更为人所知的是 SQL)来管理其数据。本教程将介绍如何在 Ubuntu 20.04 服务器上安装 MySQL 8.0 版本。完成本教程后,您将拥有一个可用于构建下一个网站或应用程序的工作关系型数据库。

rubys007的博客 3393

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

如何在 Ubuntu 20.04 上安装 MySQL

通过完成它,您将拥有一个可工作的关系数据库,您可以使用它来构建您的下一个网站或应用程序。如果您选择设置验证密码插件,则您创建的使用密码进行身份验证的任何 MySQL 用户都将需要拥有满足您选择的策略的密码。这将删除一些匿名用户和测试数据库,禁用远程 root 登录,并加载这些新规则,以便 MySQL 立即尊重您所做的更改。. 如果您计划将此数据库与 PHP 应用程序(例如 phpMyAdmin)一起使用,您可能需要创建一个用户,该用户将使用较旧但仍然安全的。脚本完成后,您的 MySQL 安装将受到保护。

活到老、学到老 1790

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Ubuntu 20.04.1及Ubuntu 16.04在线安装和离线安装MySQL8.0.20 及 配置Ubuntu版navicat

在线安装就很简单了,终端执行如下命令: 输入如下命令进行检验是否安装mysql成功 二、离线安装 如果没有网,离线安装如下:官网下载mysql:https://dev.mysql.com/downloads/mysql/选择对应的版本,上面是Ubuntu20.04的,若Ubuntu16.04则下载Ubuntu16.04,点下载后跳转到如下页面,不必登录,选’No thanks, just start my download’ 直接下载! 将下载好的mysql-server_8.0.20-2ubuntu20.

Acegem的博客 5461

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

在Ubuntu 20.04上安装和配置MySQL 8:详细指南和远程访问设置

MySQL 8是一个功能强大、可靠的数据库管理系统,适用于各种规模和类型的应用程序。通过在Ubuntu 20.04上安装和配置MySQL 8,并开通远程访问,您可以方便地管理和访问数据库,提高应用程序的效率和可靠性。同时,要注意保护数据库的安全,使用安全的连接方式和密码管理措施,以防止未经授权的访问和数据泄露。

TradingAgents-CN专栏 4724

Ubuntu 20.04 卸载和安装 MySQL8.0

该文详细介绍了Ubuntu 20.04 卸载和安装 MySQL8.0的过程,通过一步步的介绍,帮助你完成MySQL的安装~

2201_75479723的博客 2714

在Ubuntu 20.04 LTS上安装MySQL 8.0的详细步骤讲解

安装MySQL 8.0在不同的操作系统上会有所不同,但在大多数Linux发行版上,安装过程都遵循相似的步骤。这里,我将提供在Ubuntu 20.04 LTS上安装MySQL 8.0的详细步骤,这些步骤可以轻松地应用到其他Linux发行版上,只需进行少量修改。

Mortal3306的博客 1万+

Ubuntu20.04 离线安装 MySQL 5.7

基于64位Ubuntu20.04.4,离线环境下,安装 MySQL5.7.*

emergencysun的博客 8133

ubuntu20.04安装mysql5.7版本

默认情况下,ubuntu20.04版本自带的mysql是8.0,如果我们需要安装5.7版本,我们需要通过如下的方式来安装。 1、直接下载二进制压缩包进行安装,解压并设置相关的参数就可以运行。 2、下载5.7的源,然后通过apt install mysql-server=5.7.31-1ubuntu18.04的方式进行安装。 3、下载5.7的deb文件,然后通过dpkg -i的方式安装。 这里,主要讲讲后面两种方式的安装,如何通过增加源apt install或者d...

feinifi的博客 3万+

Ubuntu20.04安装和卸载MySQL8

Ubuntu20.04安装MySQL8 这里的安装和卸载统一用的都是root用户,如果使用其他用户需要添加说sudo。 1、安装mysql-server8,命令如下: apt install mysql-server 执行命令过程如下图: 2、查看MySQL是否安装成功,命令如下: 可以使用mysql --version或者mysql -V查看版本信息,确认是否安装成功,如图: 也可以使用帮助命令mysql --help确认是否安装成功,如图: 3、初始化配置信息,命令如下: mysql_se

qq_33581509的博客 2894

ubuntu20.04安装mysql8

前言 之前整理了一篇centos7安装mysql8 但是,我最近转战ubuntu了。尤其是,最近笔记本的磁盘还是最终没有撑住,重装了操作系统。索性就全线转战吧。为了避免两个操作系统之间具体操作细节的差异,也避免以后随时要去官网翻文档,读完再安装的尴尬,于是就有了本文。目的就是可以让在ubuntu20.04上安装mysql8这个过程可以被快速得重复。 下载镜像 在链接https://dev.mysql.com/downloads/repo/apt/ 下载deb文件,并上传到服务器中。 sudo dpkg -i

征途无悔 3611

【ubuntu20.04安装MySQL以及MySQL-workbench可视化工具】

摘要:本文基于Ubuntu20.04 LST 以及MySQL 8.0.29,可视化工具使用mysql-workbench-community_8.0.29-1ubuntu20.04_amd64.deb

delilahy123的博客 9542

Ubuntu20.04安装Mysql8主从

注意:主数据库的配置文件中配置了需要同步的数据库,因此只会同步配置的数据库,不配置则同步全部。安装步骤和主数据库的安装步骤基本一样,但配置文件内容不同,以及不必开启远程连接。关闭主从数据库服务器防火墙或开放3306端口。通过工具连接主从数据库或者在服务器连接。主数据库查询服务ID及Master状态。从数据库验证slave用户是否可用。这里以firewall为例。从数据库中设置主数据库。

ζั͡山 ั͡有扶苏 ั͡✾的博客 1328

【MySQL】Ubuntu 20.04 下安装 MySQL 5.7

这篇文章详细介绍了在 Ubuntu 20.04 上安装 MySQL 5.7 的过程。首先,检查并卸载已有的 MySQL 服务,然后添加 MySQL APT 存储库的源,并处理公钥错误。接着,安装 MySQL 5.7 客户端和服务端,并进行基本配置,包括设置字符集和服务端端口。最后,重启 MySQL 服务以应用配置。文章提供了相关命令和配置文件示例,并列出了参考链接。

ljh1257的博客 2930
上一篇: 两台笔记本电脑如何连接一台作为扩展屏幕
Sunshine_向阳而生
博客等级 码龄7年 2粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值