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

相关推荐
2301_7717172111 小时前
解决mysql报错:1406, Data too long for column
android·数据库·mysql
绘梨衣54712 小时前
Docker+FastAPI+MySQL 项目部署报错汇总
mysql·docker·fastapi
dvjr cloi12 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
czlczl2002092513 小时前
利用“延迟关联”优化 MySQL 巨量数据的深分页查询
数据库·mysql
俺不要写代码14 小时前
数据库:函数
数据库·mysql
Ruci ALYS15 小时前
MySQL大小写敏感、MySQL设置字段大小写敏感
数据库·mysql
@小柯555m17 小时前
MySql(高级操作符--操作符混合运用)
数据库·sql·mysql
向風而行19 小时前
MySQL详解
数据库·mysql
Bert.Cai20 小时前
MySQL CURTIME()函数详解
数据库·mysql
Bert.Cai20 小时前
MySQL CURDATE()函数详解
数据库·mysql