当前位置: 首页 > article >正文

Ubuntu 上安装 MySQL 8.0.22

在 Ubuntu 上安装 MySQL 8.0.22,可以通过以下步骤完成:


步骤 1:更新系统软件包

sudo apt update
sudo apt upgrade -y

步骤 2:下载 MySQL 官方 APT 仓库包

前往 MySQL 官方下载页面获取 APT 仓库配置包的链接:MySQL APT Repository

使用以下命令下载:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb

步骤 3:添加 MySQL APT 仓库

安装下载的 .deb 文件:

sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb

在安装过程中,系统会显示一个界面供你选择 MySQL 版本。确保选中 MySQL 8.0,并确认。

如果错过了此配置,可通过以下命令重新配置:

sudo dpkg-reconfigure mysql-apt-config

步骤 4:更新软件包索引

运行以下命令更新仓库:

sudo apt update

步骤 5:安装 MySQL Server

sudo apt install mysql-server -y

安装过程中,系统会提示设置 MySQL 根用户的密码,按照提示输入并记住密码。


步骤 6:验证 MySQL 安装

启动 MySQL 服务:

sudo systemctl start mysql
sudo systemctl enable mysql

检查 MySQL 服务状态:

sudo systemctl status mysql

登录 MySQL:

mysql -u root -p

输入刚才设置的密码即可登录。


步骤 7:检查 MySQL 版本

登录后运行以下命令确认版本:

SELECT VERSION();

应该显示类似 8.0.22 的输出。


可选步骤:配置安全性

为确保 MySQL 安装安全,可以运行以下命令:

sudo mysql_secure_installation

按照提示完成配置,包括删除匿名用户、禁用远程 root 登录、移除测试数据库等。


完成后,你的 Ubuntu 系统应该已经成功安装了 MySQL 8.0.22。

如果在安装 MySQL 时没有提示设置 root 用户的密码,这可能是因为 MySQL 在较新的版本中默认使用 auth_socket 插件进行身份验证,而不是传统的用户名和密码。


解决方法:设置或修改 root 用户密码

  1. 登录 MySQL:
    使用 sudo 直接登录:

    sudo mysql
    
  2. 切换到 mysql 数据库:

    USE mysql;
    
  3. 修改 root 用户的身份验证插件并设置密码:
    如果希望改用密码进行身份验证,运行以下命令:

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'p~4Ps:=_@HcJHC';
    FLUSH PRIVILEGES;
    

    注意:将 你的新密码 替换为你想设置的新密码。

  4. 退出 MySQL:

    EXIT;
    
  5. 验证新密码:
    退出后,尝试使用新密码登录:

    mysql -u root -p
    

    输入刚才设置的密码即可。


如果需要保留 auth_socket 插件

如果你希望继续使用 auth_socket 插件而不设置密码,只需通过以下命令确认 root 用户使用的身份验证方式:

SELECT user, host, plugin FROM mysql.user;

结果中,如果看到 root@localhost 的插件是 auth_socket,可以通过在系统中切换到 root 用户来直接访问 MySQL:

sudo mysql

重启服务(可选)

完成修改后,可以重启 MySQL 服务以确保更改生效:

sudo systemctl restart mysql

这样可以确保 MySQL 按你的需求正确配置身份验证方式。

CREATE USER ‘bet’@‘%’ IDENTIFIED BY ‘gbankclub’;
CREATE USER ‘casino’@‘%’ IDENTIFIED BY ‘dMlrZs9uVdIAXBsV’;

GRANT ALL PRIVILEGES ON . TO ‘bet’@‘%’;
GRANT ALL PRIVILEGES ON . TO ‘casino’@‘%’;

FLUSH PRIVILEGES;

  1. 检查 MySQL 配置
    MySQL 默认可能只允许本地连接,需要修改配置以支持远程连接。

修改 mysqld.cnf

找到并编辑 MySQL 的配置文件(通常在 /etc/mysql/mysql.conf.d/mysqld.cnf):

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
确保以下设置:

[mysqld]
bind-address = 0.0.0.0
解释:
bind-address=0.0.0.0 允许 MySQL 监听所有网络接口。
如果设置为 127.0.0.1,MySQL 只会接受本地连接。
保存文件后,重启 MySQL 服务:

sql_mode=“STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION”

sudo systemctl restart mysql


http://www.kler.cn/a/547014.html

相关文章:

  • Redis常用的五种数据结构详解
  • #渗透测试#批量漏洞挖掘#AJ-Report开源数据大屏存在远程命令执行漏洞
  • vue3 怎么自动全局注册某个目录下的所有 vue 和 tsx 组件
  • ESP32无线Wi-Fi蓝牙方案,设备智能连接控制,物联网通信应用
  • Node.js 中的 Event 模块详解
  • SpringCloud - Seata 分布式事务
  • 2月14日笔记
  • Java中如何高效地合并多个对象的List数据:方法与案例解析!
  • 2025年AI免费大战:从DeepSeek到GPT-5的商业逻辑与行业变革
  • 数据库与表的基本操作
  • 在香橙派5 NPU上使用Yolov5
  • 轮子项目--消息队列的实现(3)
  • 如何优化React应用的性能?
  • 常见的 Web 攻击方式有哪些,如何防御?
  • 技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
  • 每日温度问题:如何高效解决?
  • SAP-ABAP:SAP的Screen Layout Designer屏幕布局设计器详解及示例
  • 【后端面试总结】什么是堆,什么是栈
  • Spring Boot与数据库集成(Spring Data JPA)
  • 急停信号的含义