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. 重新加载权限表

相关推荐
Zzzzmo_6 小时前
【MySQL】JDBC(含settings.xml文件配置/配置国内镜像以及pom.xml文件修改)
数据库·mysql
FirstFrost --sy7 小时前
MySQL内置函数
数据库·mysql
eggwyw8 小时前
MySQL-练习-数据汇总-CASE WHEN
数据库·mysql
jarreyer10 小时前
CentOS 7 无法使用 yum 安装软件
linux·运维·centos
mygljx10 小时前
MySQL 数据库连接池爆满问题排查与解决
android·数据库·mysql
Bdygsl11 小时前
MySQL(1)—— 基本概念和操作
数据库·mysql
身如柳絮随风扬12 小时前
什么是左匹配规则?
数据库·sql·mysql
jiankeljx12 小时前
mysql之如何获知版本
数据库·mysql
小李来了!13 小时前
数据库DDL、DML、DQL、DCL详解
数据库·mysql
我科绝伦(Huanhuan Zhou)13 小时前
【生产案例】MySQL InnoDB 数据损坏崩溃修复
数据库·mysql·adb