CentOS下安装MySQL详解

文章目录

  • 一、安装前准备
  • 二、安装步骤
    • [1. 下载MySQL安装包](#1. 下载MySQL安装包)
    • [2. 上传并解压安装包](#2. 上传并解压安装包)
    • [3. 安装MySQL](#3. 安装MySQL)
    • [4. 配置MySQL](#4. 配置MySQL)
    • [5. 启动MySQL服务](#5. 启动MySQL服务)
    • [6. 设置开机自启](#6. 设置开机自启)
    • [7. 连接MySQL并修改密码](#7. 连接MySQL并修改密码)
  • 三、常见问题及解决方案

在Linux环境下,MySQL是一种广泛使用的开源关系型数据库管理系统。本文将介绍在CentOS 7.2系统上安装MySQL 5.7.44版本的过程。

一、安装前准备

在安装MySQL之前,需要确保系统满足以下要求:

  • CentOS 7.2或更高版本。
  • 具有足够的磁盘空间和内存。
  • 具有root权限或具有sudo权限的用户。

另外,由于CentOS 7默认安装了MariaDB,而MariaDB与MySQL存在冲突,因此在安装MySQL前需要卸载MariaDB。

bash 复制代码
#卸载mariadb
rpm -qa | grep mariadb
rpm -e --nodeps <包名>  #(如 mariadb-libs-5.5.44-2.el7.centos.x86_64)

#清理旧MySql残留
rm -rf /etc/my.cnf /var/lib/mysql /var/log/mysqld.log

二、安装步骤

1. 下载MySQL安装包

MySQL官方网站:https://dev.mysql.com/

网盘链接: https://pan.baidu.com/s/1gEDphgm4IXtJD2Oz2hwtNA 提取码: fs8e

2. 上传并解压安装包

使用FTP工具将下载好的安装包上传到CentOS服务器的根目录下。然后,使用WinRAR或其他解压工具在Windows环境下解压安装包。解压后,将得到的文件夹通过FTP工具再次上传到CentOS服务器的根目录下。

3. 安装MySQL

打开终端,进入MySQL安装包所在的目录,执行以下命令进行安装:

bash 复制代码
sudo tar -xvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.xz
sudo mv mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql
sudo useradd -M -s /sbin/nologin mysql
sudo mkdir /var/lib/mysql
sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod -R 700 /var/lib/mysql

4. 配置MySQL

进入MySQL目录,执行以下命令进行初始化配置:

bash 复制代码
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql

执行完成后,会生成一个临时密码,请务必记下这个密码。

5. 启动MySQL服务

编辑MySQL的配置文件my.cnf,设置字符集为UTF-8,避免中文乱码问题。然后,启动MySQL服务:

bash 复制代码
sudo bin/mysqld_safe --user=mysql &

6. 设置开机自启

为了方便管理,可以将MySQL设置为开机自启。执行以下命令:

bash 复制代码
sudo cp support-files/mysql.server /etc/init.d/mysql
sudo chkconfig --add mysql
sudo chkconfig mysql on

7. 连接MySQL并修改密码

使用之前生成的临时密码连接MySQL,然后修改密码:

bash 复制代码
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

三、常见问题及解决方案

在安装和配置MySQL过程中,可能会遇到一些常见问题。例如,无法启动MySQL服务、无法连接到MySQL等。这些问题通常是由于配置文件错误、权限问题或端口冲突等原因引起的。在解决这些问题时,可以参考官方文档或搜索相关论坛,找到相应的解决方案。

通过以上步骤,我们成功地在CentOS环境下安装了MySQL数据库。在实际使用中,还需要根据具体需求进行更多的配置和优化。

相关推荐
_upupup20 分钟前
包管理器和vim
linux·服务器
一颗小树x26 分钟前
NVIDIA 驱动故障排查实录:内核升级导致 nvidia-smi 失效
linux·服务器·nvidia驱动·启动失败·内核升级
不恋水的雨27 分钟前
gbase中union all导致末尾多出空格的坑
数据库·sql·mysql
_smart_boy__36 分钟前
I.MX6U开发板Uboot无法ping Ubuntu问题解决方案(二)
linux·运维·ubuntu
DianSan_ERP1 小时前
多平台订单自动下载与回传的技术实现:从消息推送到状态闭环引言
java·linux·服务器·前端·网络·架构·自动化
Android系统攻城狮1 小时前
Linux Gstreamer深度解析之gst_audio_decoder_get_parse_state调用流程与实战(四十九)
linux·音视频·gstreamer音视频·gstreamer音视频进阶
~光~~1 小时前
【嵌入式Linux学习】GFP_NOIO / GFP_NOFS(Linux 内核 gfp 分配标志)
linux·运维·学习
坤坤子吖1 小时前
ELF加载、动态链接、GOT与PLT
linux·笔记·学习
android阿杜2 小时前
Ubuntu 26.04 LTS 系统每次重启后屏幕亮度都会增加一点
linux·运维·ubuntu
懿路向前2 小时前
【唤醒实战笔记】2026-09-29 | 智能体提示词迭代史(v1 → v8)
linux·笔记·算法