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

Ubuntu 24.04上安装MySQL 8.0

在Ubuntu 24.04上安装MySQL 8.0有多种方法,以下是几种常见的安装方式:

方法一:使用APT官方仓库安装(推荐)

1. 更新软件包索引

sudo apt update

2. 安装MySQL服务器

sudo apt install mysql-server

3. 启动MySQL服务

sudo systemctl start mysql
sudo systemctl enable mysql

4. 检查MySQL状态

sudo systemctl status mysql

方法二:使用MySQL官方仓库安装

安全配置

运行安全安装脚本

sudo mysql_secure_installation

按照提示进行安全配置:

  • 设置验证密码策略 Y

  • 设置root密码 

  • 移除匿名用户 Y

  • 禁止远程root登录 Y

  • 移除测试数据库 Y

  • 重新加载权限表 Y

基本操作命令

启动/停止/重启MySQL

sudo systemctl start mysql    # 启动
sudo systemctl stop mysql     # 停止
sudo systemctl restart mysql  # 重启
sudo systemctl status mysql   # 查看状态

连接MySQL

sudo mysql -u root -p
root默认密码为空,没有密码

配置远程访问(可选)

1. 修改MySQL配置

编辑配置文件:

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

找到 bind-address 并修改:

text

bind-address = 0.0.0.0

2. 创建远程访问用户

CREATE USER 'pplsunny'@'%' IDENTIFIED BY '1qazxsw2';GRANT ALL PRIVILEGES ON *.* TO 'pplsunny'@'%';FLUSH PRIVILEGES;

3. 重启MySQL服务

sudo systemctl restart mysql

常见问题解决

忘记root密码

  1. 停止MySQL服务:

sudo systemctl stop mysql
  1. 跳过权限检查启动:

sudo mysqld_safe --skip-grant-tables &
  1. 连接并重置密码:

USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
FLUSH PRIVILEGES;
EXIT;
  1. 重启MySQL服务:

bash

sudo systemctl restart mysql

查看MySQL版本

bash

mysql --version

验证安装

安装完成后,可以通过以下命令验证:

bash

sudo mysql -u root -p -e "SELECT VERSION();"

这样就在Ubuntu 24.04上成功安装了MySQL 8.0。建议使用第一种方法,因为它最简单且由Ubuntu官方维护。

在Ubuntu 24.04上设置MySQL root密码有多种方法,以下是详细的步骤:

方法一:使用mysql_secure_installation(推荐)

1. 运行安全配置脚本

bash

sudo mysql_secure_installation

2. 按照提示操作

text

Securing the MySQL server deployment.Connecting to MySQL using a blank password.VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?Press y|Y for Yes, any other key for No: 
  • 选择密码验证策略:建议选择 Y 来启用密码强度验证

  • 选择密码级别

    • 0 = 低强度

    • 1 = 中等强度

    • 2 = 高强度

Please set the password for root here.New password: [输入新密码]
Re-enter new password: [再次输入密码]
  • 输入并确认root密码

  • 移除匿名用户:选择 Y

  • 禁止远程root登录:选择 Y

  • 移除test数据库:选择 Y

  • 重新加载权限表:选择 Y

方法二:直接使用MySQL命令行

1. 以root身份登录MySQL(初始无密码)

sudo mysql

2. 在MySQL中设置root密码

sql

-- 选择mysql数据库
USE mysql;-- 设置root用户密码(替换'your_password'为实际密码)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_strong_password';-- 刷新权限
FLUSH PRIVILEGES;-- 退出
EXIT;

方法三:如果已经知道当前密码

1. 登录MySQL

bash

mysql -u root -p

2. 修改密码

sql

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_strong_password';
FLUSH PRIVILEGES;
EXIT;

方法四:使用mysqladmin

bash

sudo mysqladmin -u root password "new_strong_password"

或者如果已经有密码需要修改:

bash

sudo mysqladmin -u root -p'old_password' password "new_strong_password"

验证密码设置

测试新密码登录

bash

mysql -u root -p

输入新设置的密码,应该能成功登录。

检查用户认证信息

sql

SELECT user, host, authentication_string, plugin FROM mysql.user WHERE user = 'root';

密码策略配置(可选)

查看当前密码策略

sql

SHOW VARIABLES LIKE 'validate_password%';

修改密码策略(如果需要)

sql

-- 设置密码长度要求
SET GLOBAL validate_password.length = 8;-- 设置密码策略级别(0=LOW, 1=MEDIUM, 2=STRONG)
SET GLOBAL validate_password.policy = 1;-- 使配置永久生效
SET PERSIST validate_password.policy = 1;

常见问题解决

如果无法登录

  1. 停止MySQL服务

bash

sudo systemctl stop mysql
  1. 跳过权限检查启动

bash

sudo mysqld_safe --skip-grant-tables &
  1. 重新设置密码

sql

USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
FLUSH PRIVILEGES;
EXIT;
  1. 重启MySQL服务

bash

sudo systemctl restart mysql

密码强度要求错误

如果遇到密码不符合策略要求,可以:

  • 设置更强的密码

  • 或者临时降低密码策略级别

sql

SET GLOBAL validate_password.policy = 0;

安全建议

  1. 使用强密码:包含大小写字母、数字和特殊字符

  2. 定期更换密码

  3. 不要共享root密码

  4. 为不同应用创建单独的用户

完成以上步骤后,MySQL root用户的密码就设置成功了!

http://www.dtcms.com/a/532635.html

相关文章:

  • Java基于SpringBoot的高校报修与互助平台小程序【附源码、文档说明】
  • 工信部icp备案流程关键词在线优化
  • 做视频的模板下载网站ppt汇报模板免费下载
  • 10.16-10.25力扣计数刷题
  • 在K8s中部署多个ASP.NET Core实例
  • 14.如何利用ArcGIS将矢量线、面的坐标数据保存为txt
  • 网站开发者模式怎么打开做策划网站推广怎么写简历
  • zynq ttc pwm例子
  • 【底层机制】linux IO 为什么要有进程表项、文件表项、v节点表项、i节点表项
  • 怎么用wordpress修改网站源码镇江网站网站建设
  • 设计方案表网站名称汉台网站制作
  • git误合并两分支如何回退
  • 【Linux系统编程】编译器gcc/g++
  • LeetCode 面试经典 150_链表_K 个一组翻转链表(61_25_C++_困难)(四指针法;头插法)
  • 做一个简单网站多少钱建设银行网站买手机
  • Ubuntu 22.04上安装Vivado2023.1(离线方式)
  • 使用 OpenAI SDK 调用阿里云 Qwen 模型:从基础到提示词工程实战
  • HTTPS 高频考点
  • 安徽网站建设 网新线上推广100种方式
  • 东莞专业做网站优化用vs2010做网站登入
  • 若依框架学习第二天:功能改造与问题攻坚实战 (2)
  • 为什么要学深度学习?——从“传统编程”到“数据驱动”的思维跃迁(附AI落地案例)
  • 简述网站建设优坏的评价标准wordpress 手机访问不了
  • 浙江网站改版设计公司网站策划书结尾
  • 网站建设 招标公告域名注册的网站
  • 【OC】UIKit常用组件适配iOS 26
  • 自适应微网站开发舟山网站设计
  • 南京高端网站开发朝城做网站公司
  • 26.UE-游戏逆向-绘制骨骼编号
  • 可做产品预售的网站九江有限公司