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

【配置环境】Linux下安装MySQL

目录

一,环境

二,安装步骤

1.使用包管理器安装MySQL

2.配置MySQL的安全选项

3.设置root用户使用密码进行身份验证(可选)

三,拓展知识

1.如何修改MySQL的密码策略?


  • VMware® Workstation 16 Pro (版本:16.1.2 build-17966106)
  • ubuntu-22.04.2-desktop-amd64

1.使用包管理器安装MySQL

  • 对于Ubuntu/Debian系统,使用apt-get命令安装:
    • sudo apt-get update
    • sudo apt-get install mysql-server
  • 对于CentOS/RHEL系统,使用yum命令安装:
    • sudo yum update
    • sudo yum install mysql-server
  • 安装完成后,MySQL服务会自动启动。使用以下命令检查MySQL服务的状态:
    • sudo systemctl status mysql
  • 如果MySQL服务没有自动启动,可以手动启动MySQL服务:
    • 对于Ubuntu/Debian系统,使用以下命令:
      • sudo service mysql start
    • 对于CentOS/RHEL系统,使用以下命令:
      • sudo systemctl start mysql
  • 可以通过以下命令来检查MySQL服务是否在运行:
    • sudo systemctl is-active mysql
  • 停止MySQL服务命令如下:
    • sudo systemctl stop mysql

2.配置MySQL的安全选项

  • 对于MySQL 5.7版本及以上,运行以下命令进行初始配置:(这个命令会要求你设置MySQL的root用户密码和其他安全选项)
    • sudo mysql_secure_installation
  • 然后提示是否对密码验证组件进行配置,输入y
  • 接下来会显示选择设置密码的强度,输入0
  • 询问是否要移除匿名用户,输入y(上一步选择密码强度后会有一个输入要设置的密码过程,但是直接跳过了,原因看下一节
  • 询问是否禁用root用户进行远程登录,输入y
  • 询问是否删除测试数据库并访问它,输入y
  • 询问是否重新加载权限表,就是让到目前为止作出的设置将立即生效。输入y
  • 最后出现 All done,说明设置完成!
  • 安装完成后,可以通过以下命令登录MySQL服务器(此时是通过auth_socket插件进行身份验证的)
    • sudo mysql

3.设置root用户使用密码进行身份验证(可选)

  • 在配置MySQL的安全选项时,选择设置密码的强度后直接跳过了输入密码的一步,并显示如下红框中的内容
  • 这是因为在MySQL中,默认情况下,root用户使用的是auth_socket插件进行身份验证,而不是使用密码。auth_socket插件通过Unix套接字文件来验证用户的凭据。因此,如果使用auth_socket插件进行身份验证,就没有必要为root用户设置密码。

如果希望为root用户使用密码进行身份验证,可以按照以下步骤操作:

  • 以root用户身份登录MySQL(此时是通过auth_socket插件进行身份验证):
    • sudo mysql
  • 登录后,切换到MySQL系统数据库:
    • USE mysql;
  • 将root用户的身份验证方法更新为使用mysql_native_password插件:(将your_password替换为root用户的密码,密码长度至少为8个字符)
    • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
  • 刷新权限表使更改生效:
    • FLUSH PRIVILEGES;
  • 完成这些步骤后,root用户将可以通过密码进行身份验证,而不是通过auth_socket插件。
  • 最后通过以下命令并输入前面设置的MySQL的root用户密码,即可登录MySQL服务器:
    • mysql -u root -p

1.如何修改MySQL的密码策略?

  • 在设置MySQL的登录密码时,会遇到如下错误提示
  • 出现这个错误是因为MySQL默认启用了密码策略来确保密码的安全性。根据密码策略,密码必须满足一定的要求才能被接受,要求如下红框中内容。
  • 但在MySQL中,可以通过修改密码策略变量来调整密码策略的要求。具体来说,可以修改以下两个相关的变量:
    • validate_password.policy:该变量定义了密码策略的要求。其取值可以是一个或多个如下策略的组合。
      • LOW:密码只要求长度满足即可。
      • MEDIUM:密码至少要求包含数字、字母和特殊字符。
      • STRONG:密码至少要求包含数字、字母、特殊字符和其它字符。
    • validate_password.length:该变量定义了密码的最小长度要求,默认为8,可以根据需要进行调整。

可以按照以下步骤在MySQL中调整密码策略:

  • 以root身份登录MySQL:
    • sudo mysql
  • 执行以下命令修改密码策略:(将密码策略设置为LOW,密码最小长度设置为4)
    • SET GLOBAL validate_password.policy='LOW';
    • SET GLOBAL validate_password.length=4;
  • 刷新权限表使更改生效:
    • FLUSH PRIVILEGES;
  • 退出MySQL的命令行界面:
    • QUIT;

相关文章:

【配置环境】Linux下安装MySQL

目录 一,环境 二,安装步骤 1.使用包管理器安装MySQL 2.配置MySQL的安全选项 3.设置root用户使用密码进行身份验证(可选) 三,拓展知识 1.如何修改MySQL的密码策略? 一,环境 VMware Workst…...

【100天精通python】Day30:使用python操作数据库_数据库基础入门

专栏导读 专栏订阅地址:https://blog.csdn.net/qq_35831906/category_12375510.html 1 数据库基础知识介绍 1.1 什么是数据库? 数据库是一个结构化存储和组织数据的集合,它可以被有效地访问、管理和更新。数据库的目的是为了提供一种可靠的…...

android 如何分析应用的内存(十八)终章——使用Perfetto查看内存与调用栈之间的泄露

android 如何分析应用的内存(十八) 在前面两篇文章中,先是介绍了如何用AS查看Android的堆内存,然后介绍了使用MAT查看 Android的堆内存。AS能够满足基本的内存分析需求,但是无法进行多个堆的综合比较,因此…...

arcpy实现kml批量转出为shp 包括shp合并

参考文章 arcpy实现 kml批量转出为shp_kml批量合并转shp_A873054267的博客-CSDN博客 参考帮助是arcgis里边自带的KMLToLayer_conversion函数 应用场景: 两步路产生的多个轨迹文件KML,批量转换成arcgis 的gdb数据库 最后合并成一个shp 第一步&#…...

高等数学:泰勒公式

注:第三条 e x e^x ex的展开式,在 1 1 1和 1 2 x 2 \frac{1}{2}x^2 21​x2之间添上一个 x x x。 1 1 − x ∑ n 0 ∞ x n 1 x x 2 x 3 ο ( x 3 ) , x ∈ ( − 1 , 1 ) . \begin{aligned}\frac{1}{1-x}\sum_{n0}^\infty x^n1xx^2x^3\omicron(x^…...

JZ32 从上往下打印二叉树(Java)

题目地址:从上往下打印二叉树_牛客题霸_牛客网 题目回顾: 不分行从上往下打印出二叉树的每个节点,同层节点从左至右打印。例如输入{8,6,10,#,#,2,1},如以下图中的示例二叉树,则依次打印8,6,10,2,1(空节点不打印&…...

hackNos靶机

靶机训练1 - hackNos: Os-hackNos 靶机平台 Vulnhub 是一个提供各种漏洞环境的靶场平台,供安全爱好者学习使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行。每个镜像会有破解的目…...

取地址及 const取地址操作符重载

取地址及 const取地址操作符重载 #include <iostream> using namespace std;class A { public:A(int year, int month, int day){_year year;_month month;_day day;}//它们是默认成员函数&#xff0c;我们不写编译器会自动生成&#xff0c;自动生成就够用了&#xff…...

【Linux初阶】进程间通信介绍 管道

&#x1f31f;hello&#xff0c;各位读者大大们你们好呀&#x1f31f; &#x1f36d;&#x1f36d;系列专栏&#xff1a;【Linux初阶】 ✒️✒️本篇内容&#xff1a;进程间通信介绍&#xff0c;管道概述&#xff0c;匿名管道应用&#xff0c;命名管道应用 &#x1f6a2;&#…...

App 在macOS Catalina下提示已损坏无法打开解决办法:

App 在macOS Catalina下提示已损坏无法打开解决办法&#xff1a; 打开终端&#xff1b; 输入以下命令&#xff0c;回车&#xff1b; sudo xattr -d com.apple.quarantine /Applications/xxxx.app注意&#xff1a;/Applications/xxxx.app 换成你的App路径&#xff08;推荐直接…...

ad+硬件每日学习十个知识点(26)23.8.6 (DCDC的降压电路、升压电路、降压-升压电路,同步整流,选型考虑同步、隔离)

文章目录 1.DCDC的降压原理2.DCDC的升压原理3.DCDC的升压和降压原理4.什么是肖特基二极管造成的死区电压&#xff1f;5.MOS管有死区电压么&#xff1f;6.DCDC的同步整流&#xff08;用MOS管取代整流二极管&#xff0c;避免死区电压的影响&#xff09;7.DCDC选型——同步与非同步…...

Elasticsearch3节点集群配置账号密码安全验证

Elasticsearch3节点集群配置账号密码安全验证 ES配置文件 rootnode1:~# grep -Ev "^#|^$" /etc/elasticsearch/elasticsearch.yml cluster.name: es-pre node.name: node1 node.master: true node.data: true path.data: /data/elk/es/data path.logs: /data/elk/…...

ffmepg滤镜

视频按顺时针方向旋转90度 ffplay -vf transpose1 -i juren-30s.mp4 ffplay -f lavfi -i testsrc -vf transpose1 -f lavfi -i testsrc这个滤镜是ffmpeg给用户的一个测试使用的视频 视频水平翻转(左右翻转) -vf hflip 实现慢速播放&#xff0c;声音速度是原始速度的50% ffpla…...

Linux 基础(六)常用命令 - find locate which whereis gzip gunzip tar

find & locate & which & whereis & gzip & gunzip & tar findlocatewhichwhereisgzipgunzipzip/unziptar find 在指定目录下查找文件或目录 find --help Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...…...

【Ajax】回调地狱解决方法

回调地狱&#xff08;Callback Hell&#xff09;是指在异步编程中&#xff0c;特别是在嵌套的回调函数中&#xff0c;代码变得深度嵌套、难以阅读和维护的现象。这通常发生在处理多个异步操作时&#xff0c;每个操作都依赖于前一个操作的结果。回调地狱使代码变得难以理解、扩展…...

解决Vue根组件设置transition失效的问题

解决Vue根组件设置transition失效的问题 1.代码 <div id"app"><!-- :name"$route.meta.transitionName" --><transition :name"animation" mode"out-in"><router-view /></transition></div>&…...

【剑指 Offer 40】最小的k个数

题目&#xff1a; 输入整数数组 arr &#xff0c;找出其中最小的 k 个数。例如&#xff0c;输入 4、5、1、6、2、7、3、8 这 8 个数字&#xff0c;则最小的 4 个数字是 1、2、3、4。 示例&#xff1a; 输入&#xff1a;arr [3,2,1], k 2 输出&#xff1a;[1,2] 或者 [2,1] …...

vue3+vite在main.ts文件中引入./App.vue报错(./App.vue不是模块)

问题 如下图&#xff1a; 方法一 下载TypeScript Vue Plugin (Volar)插件就不报红了&#xff0c;看它的描述应该就是ts文件可以识别vue文件。 方法二 在src文件夹下添加env.d.ts文件&#xff0c;添加以下代码&#xff1a; declare module *.vue {import type { DefineC…...

【LeetCode】102. 二叉树的层序遍历、107. 二叉树的层序遍历 II

作者&#xff1a;小卢 专栏&#xff1a;《Leetcode》 喜欢的话&#xff1a;世间因为少年的挺身而出&#xff0c;而更加瑰丽。 ——《人民日报》 102. 二叉树的层序遍历 102. 二叉树的层序遍历 给你二叉树的根节点 root &#xff0c;返回其节…...

HTML详解连载(2)

HTML详解连载&#xff08;2&#xff09; 专栏链接 [link](http://t.csdn.cn/xF0H3)下面进行专栏介绍 开始喽超链接作用代码示例解释经验分享 音频标签代码示例注意强调 视频标签代码示例注意强调 列表作用&#xff1a;布局内容排列整齐的区域。分类&#xff1a;无序列表&#x…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...