MySQL,作为一款开源的关系型数据库管理系统,凭借其高性能、可靠性和易用性,在众多DBMS中脱颖而出,广泛应用于各类Web应用和服务器环境中
本文将详细介绍如何在CentOS 7操作系统上安装MySQL,确保读者能够顺利完成安装并进行初步配置
一、安装前的准备工作 在安装MySQL之前,我们需要做一些必要的准备工作,以确保安装过程顺利进行
1.切换至root用户: CentOS 7中,安装MySQL需要在root用户下进行
虽然安装完成后,其他普通用户也可以使用MySQL,但为了确保权限和依赖问题,建议在root用户下执行安装命令
2.检查并卸载旧版本: CentOS 7默认可能安装了MariaDB,这是MySQL的一个分支
为了避免冲突,我们需要检查并卸载MariaDB或任何旧版本的MySQL
- 检查MariaDB/MySQL进程: bash ps ajx | grep mysql ps ajx | grep mariadb 如果发现有相关进程,使用`systemctl stop mysqld`或`systemctl stop mariadb`命令停止服务
- 检查并卸载MariaDB/MySQL安装包: bash rpm -qa | grep mysql rpm -qa | grep mariadb 对于找到的每个包,使用`yum remove`命令卸载,例如: bash yum remove mariadb-server mariadb-libs mariadb-common - 检查并删除MySQL/MariaDB的配置文件和数据目录: 配置文件通常位于`/etc/my.cnf`,数据目录位于`/var/lib/mysql`
如果不再需要这些数据,可以删除它们
3.备份重要数据: 在卸载旧版本或修改配置文件之前,务必备份重要数据,以防数据丢失
二、配置MySQL Yum源 MySQL官方提供了Yum源,方便用户通过Yum包管理器安装MySQL
我们需要先下载并配置这个Yum源
1.下载MySQL Yum源RPM包: 访问MySQL官方Yum源页面(如【http://repo.mysql.com/】(http://repo.mysql.com/)),找到与你的CentOS 7版本相匹配的RPM包
例如,对于MySQL 8.0,可以下载`mysql80-community-release-el7-7.noarch.rpm`
使用`wget`命令下载RPM包: bash wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm 2.安装MySQL Yum源RPM包: 使用`rpm`命令安装下载的RPM包: bash sudo rpm -ivh mysql80-community-release-el7-7.noarch.rpm 3.验证Yum源是否配置成功: 使用`yum list | grep mysql`命令查看可用的MySQL包,如果列出了多个MySQL相关的包,说明Yum源配置成功
三、安装MySQL服务器 配置好Yum源后,我们就可以开始安装MySQL服务器了
1.执行安装命令: 使用`yum install`命令安装MySQL服务器: bash sudo yum install mysql-community-server 2.处理GPG密钥过期问题: 如果在安装过程中遇到GPG密钥过期的问题,可以使用以下命令更新密钥: bash sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 3.验证安装是否成功: 安装完成后,可以使用`rpm -qa | grep mysql-community-server`命令验证MySQL服务器是否成功安装
四、启动MySQL服务并设置开机自启 安装完成后,我们需要启动MySQL服务,并设置它在系统启动时自动启动
1.启动MySQL服务: 使用`systemctl`命令启动MySQL服务: bash sudo systemctl start mysqld 2.检查MySQL服务是否启动成功: 使用`ps ajx | grep mysqld`命令检查MySQL服务是否启动成功
另外,也可以查看MySQL的日志文件(通常位于`/var/log/mysqld.log`)以获取更多信息
3.设置MySQL服务开机自启: 使用`systemctl enable mysqld`命令设置MySQL服务在系统启动时自动启动
五、获取初始密码并进行安全配置 MySQL首次启动时,会生成一个临时密码
我们需要获取这个密码,并使用`mysql_secure_installation`脚本进行安全配置
1.获取临时密码: 使用`grep`命令从MySQL日志文件中获取临时密码: bash sudo grep temporary password /var/log/mysqld.log 2.运行`mysql_secure_installation`脚本: 使用获取的临时密码登录MySQL,并运行`mysql_secure_installation`脚本进行安全配置
脚本会提示你修改root密码、移除匿名用户、禁用远程root登录等
六、配置MySQL 为了优化MySQL的性能和安全性,我们需要进行一些基本的配置
1.修改配置文件: MySQL的配置文件通常位于`/etc/my.cnf`
你可以根据服务器的硬件资源和业务需求修改关键参数,如内存分配、最大连接数、日志与持久化设置等
2.创建专用用户并限制权限: 为了避免直接使用root账户操作数据库带来的安全风险,建议创建专用用户并限制其权限
使用`CREATE USER`