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

Linux研学-MySQL安装

一 MySQL5.7

1 配置远程仓库

  yum所链接的远程仓库中,没有MySQL5.7的版本,故需要配置额外的远程仓库。

# 导入密钥
# 主要目的是验证软件包的完整性和来源的合法性,防止恶意软件或篡改的包被安装到系统中
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
# 通过 RPM 包管理器下载并安装一个包含 MySQL 5.7 仓库元数据的 RPM 包
# -Uvh:是 rpm 命令的选项组合,具体含义如下:
# -U(或 --upgrade):表示升级或安装软件包。如果软件包已安装,则升级到最新版本;如果未安装,则直接安装。
# -v(或 --verbose):表示详细模式,会在安装过程中显示更多信息,便于用户了解安装进度。
# -h(或 --hash):表示显示散列进度条,由一系列 # 符号组成,直观展示安装进度。
#http://repo.mysql.com/mysql57-community-release-el7-7.noarch.rpm:是 MySQL 官方提供的 RPM 包下载地址,该包包含指向 MySQL 5.7 仓库的元数据(如仓库地址、GPG 密钥等)。
rpm -Uvh http://repo.mysql.com/mysql57-community-release-el7-7.noarch.rpm

2 安装5.7版本

yum -y install mysql-community-server

3 启动

  MySQL安装完成后,会自动配置名为mysqld的服务,可以被systemctl所管理

#  启动 MySQL 服务
systemctl start mysqld# 配置 MySQL 开机自启动
systemctl enable mysqld# 验证 MySQL 服务状态
systemctl status mysqld
# 正常运行的输出示例
systemctl status mysqld
● mysqld.service - MySQL ServerLoaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; preset: disabled)Active: active (running) since Mon 2025-07-14 13:46:04 CST; 13s agoInvocation: 85b12a79c5e44efd975ce199f296e83dDocs: man:mysqld(8)http://dev.mysql.com/doc/refman/en/using-systemd.html
# Loaded: enabled → 已配置开机自启。
# Active: active (running) → 服务正在运行。
# 如果显示 inactive (dead),说明服务未启动,需重新执行 systemctl start mysqld。

4 获取初始密码(临时)

  初始用户名为root,初始密码可在日志文件中查询到

cat /var/log/mysqld.log | grep "temporary password"# abX;<Cs4<B7g 密码
2025-07-14T05:46:00.230632Z 1 [Note] A temporary password is generated for root@localhost: abX;<Cs4<B7g

5 登录

  获得密码后,通过以下命令进行登录

mysql -uroot -p

6 修改初始密码

  密码默认策略:长度 ≥ 8 位。;包含大小写字母、数字和特殊字符(如 !, @, #);不能是常见简单密码(如 123456, password)

# 编写密码于单引号内
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPassword123!';

  可配置简单密码(测试/学习环境)

# 修改策略为 LOW(允许简单密码)
SET GLOBAL validate_password_policy = LOW;
# 最小长度设为 4
SET GLOBAL validate_password_length = 4;

7 配置远程登陆

  设置可登录的IP和远程登录的密码,%表示都可以登录,最后刷新权限

# ALL PRIVILEGES:拥有所有操作权限(增删改查、创建/删除数据库、用户管理等)。
# *.*:作用于所有数据库和表。
# 'root'@'%':允许从任何主机(%)以 root 身份连接。
# WITH GRANT OPTION:允许该用户将自己的权限授予其他用户。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;
# 查看权限
SHOW GRANTS FOR 'root'@'%';

8 检查端口

  退出mysql,检查 mysql 默认绑定的 3306 端口

netstat -anp | grep 3306
tcp6    0    0 :::3306       :::*     LISTEN    4629/mysqld

二 MySQL8.0

1 配置远程仓库

# 导入密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
# 添加 MySQL 8.x YUM 仓库
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

2 安装8.0版本

yum -y install mysql-community-server

3 启动

#  启动 MySQL 服务
systemctl start mysqld# 配置 MySQL 开机自启动
systemctl enable mysqld# 验证 MySQL 服务状态
systemctl status mysqld

4 获取初始密码

grep 'temporary password' /var/log/mysqld.log

5 登录

mysql -uroot -p

6 修改初始密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';

  配置简单密码(测试/学习环境)

# 修改策略为 LOW(允许简单密码)0=LOW, 1=MEDIUM, 2=STRONG
SET GLOBAL validate_password.policy = 0;
# 最小长度设为 4
SET GLOBAL validate_password.length = 4;

7 远程登录

# 创建 root 远程登录用户(首次设置)
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '强密码';
# 后续修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';

8 检查端口 – 3306

netstat -anp | grep 3306
http://www.dtcms.com/a/293213.html

相关文章:

  • IP43半加固笔记本L156H
  • Embassy实战:Rust嵌入式异步开发指南
  • 使用docker(ubuntu)搭建web环境(php,apahce2)
  • Vue 3 响应式系统中的 effectScope、watchEffect、effect 和 watch 详解
  • 解锁 Rust 语言:交叉编译与安全防护全攻略
  • Redis - ZSet数据结构与滑动窗口应用
  • 在 WebSocket 中使用 @Autowired 时遇到空指针异常
  • 二、Vue常用指令:v-bind、v-model、v-on
  • 【Python】常见模块及其用法
  • MSTP技术
  • 建造者模式:构建复杂对象的优雅方式
  • c练习-c基础
  • Pulsar存储计算分离架构设计之Broker无状态
  • vscode目录,右键菜单加入用VSCode打开文件和文件夹(快速解决)(含删除)(脚本)
  • gma视角的历史地图集3:自夏至宋3000年5座洛阳城
  • 【锁】MySQL中有哪几种锁?
  • opencv-图像处理
  • 视频编解码技术的未来趋势:从H.266到AI驱动的绿色革命
  • 【AI 学习笔记】Tool Calling:让 AI 不再“纸上谈兵“
  • 深入解析 Fetch API 的 credentials 属性:Cookie 携带机制
  • 洛谷 P3478 [POI 2008] STA-Station
  • Ollama Docker 容器向容器内传输AI模型并挂载模型
  • 基于快速S变换的配电网故障选线
  • Android开发:Java与Kotlin深度对比
  • IDC权威认可:瑞数信息双项入选《中国大模型安全保护市场概览》
  • CSS+JavaScript 禁用浏览器复制功能的几种方法
  • AWE2026启动:加码AI科技,双展区联动开启产业新格局
  • LeetCode 刷题【11. 盛最多水的容器】
  • Zap日志库指南
  • PCIe Base Specification解析(三)