CentOS 7 安装 MySQL 详细教程

CentOS 7 安装 MySQL 详细教程

本文将详细介绍如何在 CentOS 7 系统上安装 MySQL 数据库,并提供基本配置指南。

前言

MySQL 是最流行的开源关系型数据库管理系统之一,广泛应用于各种规模的应用程序中。在 CentOS 7 上安装 MySQL 有多种方法,本文将介绍最常用的安装方式。

使用 Yum 仓库安装 MySQL

步骤 1:添加 MySQL Yum 仓库

首先,我们需要添加 MySQL 的官方 Yum 仓库:

bash

复制代码
# 下载 MySQL Yum 仓库安装包
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

# 安装 MySQL Yum 仓库
sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm

步骤 2:选择 MySQL 版本(可选)

默认情况下,MySQL Yum 仓库启用的是 MySQL 8.0 版本。如果你想安装其他版本(如 MySQL 5.7),可以运行以下命令:

bash

复制代码
# 查看可用的 MySQL 版本
yum repolist all | grep mysql

# 禁用 MySQL 8.0 仓库
sudo yum-config-manager --disable mysql80-community

# 启用 MySQL 5.7 仓库
sudo yum-config-manager --enable mysql57-community

步骤 3:安装 MySQL 服务器

bash

复制代码
# 安装 MySQL 服务器
sudo yum install mysql-community-server

步骤 4:启动 MySQL 服务

bash

复制代码
# 启动 MySQL 服务
sudo systemctl start mysqld

# 设置 MySQL 开机自启
sudo systemctl enable mysqld

# 检查 MySQL 服务状态
sudo systemctl status mysqld

步骤 5:获取临时密码并修改

MySQL 安装后会生成一个临时密码,我们需要找到这个密码并修改它:

bash

复制代码
# 获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log

输出结果类似于:

text

复制代码
2023-01-01T00:00:00.000000Z 1 [Note] A temporary password is generated for root@localhost: 临时密码

使用获取到的临时密码登录 MySQL:

bash

复制代码
mysql -uroot -p

输入临时密码后,你会进入 MySQL 提示符。现在修改 root 密码:

sql

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

注意:MySQL 8.0 默认要求强密码策略,密码需要包含大小写字母、数字和特殊字符。

步骤 6:运行安全安装脚本(推荐)

MySQL 提供了一个安全安装脚本,可以帮助你提高数据库的安全性:

bash

复制代码
sudo mysql_secure_installation

按照提示完成以下安全设置:

  1. 验证密码强度插件

  2. 更改 root 密码

  3. 移除匿名用户

  4. 禁止 root 远程登录

  5. 移除测试数据库

  6. 重新加载权限表

相关推荐
布莱克6051 小时前
MySQL 增删改查(CRUD)语法详解
数据库·mysql·增删改查
rm -rf * && haha.sh3 小时前
【Linux】Rocky 9.8 操作系统磁盘分区与MySQL数据目录迁移
linux·运维·mysql
ao-weilai5 小时前
MySQL数据库:表操作
数据库·mysql·adb
宵时待雨5 小时前
MySQL数据库1:数据库基础
服务器·数据库·mysql
做运维的阿瑞5 小时前
一个 NULL 让整列姓名消失?MySQL 字符串与日期函数复盘
数据库·sql·mysql
Dxy12393102166 小时前
MySQL 条件注释语法
数据库·mysql
H.莓飛7 小时前
【数据结构】栈
linux·开发语言·数据结构·算法·centos
FYKJ_20107 小时前
SSM校园互助与闲置交易平台62145-计算机课程设计、毕业设计
java·spring boot·python·mysql·架构·spark·课程设计
傲世仙尊7 小时前
从HTTPS到MySQL-会话保持的攻防与数据库的真面目
数据库·mysql·https
jyOverQ7 小时前
MySQL 崩溃以后怎么恢复数据?redo log、undo log 与 Crash Recovery
数据库·mysql