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数据库。在实际使用中,还需要根据具体需求进行更多的配置和优化。

相关推荐
Linux-lucky5 分钟前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
清水白石0081 小时前
Python 死锁排查全攻略:从线程卡死到锁依赖定位与工程化修复
linux·网络·python
ao-weilai2 小时前
Linux基础:Ext系列文件系统
linux·运维·服务器
qq_349447952 小时前
Linux系统,安装git,从使用git下载仓库(GitHub, Gitee, GitLab 等),并且使用ssh密钥,可以直接执行git pull
linux·git·ssh
mCell5 小时前
GitHub Actions 玩法大赏:一台远程主机的七种活法
linux·github·agent
盐焗鹌鹑蛋6 小时前
【Linux】动静态库的制作与使用
linux
01_ice6 小时前
MySQL库和表的操作
数据库·mysql
艾伦_耶格宇6 小时前
【ELK】-4 logstash的搭建及操作
linux·运维·ubuntu·elk
mifengxing7 小时前
文件逻辑结构、物理结构与磁盘空闲存储空间管理
大数据·linux·运维·操作系统·计算机408