CentOS7安装MySQL数据库教程
centos7怎么安装mysql数据库

首页 2025-07-17 15:14:42



CentOS7上安装MySQL数据库的详细指南 MySQL是一款流行的开源关系型数据库管理系统(RDBMS),广泛应用于各种Web应用程序

    在CentOS7上安装MySQL数据库,可以通过下载RPM包进行本地安装,或者利用YUM源进行部署

    本文将详细介绍通过官方YUM源在CentOS7上安装MySQL数据库的步骤,并涵盖一些关键的配置和优化建议

     一、准备工作 在开始安装之前,请确保你的CentOS7系统已经更新到最新版本,并且拥有root权限或者能够使用sudo命令来获取root权限

    此外,由于MySQL在CentOS7的默认仓库中并未包含最新版本,因此推荐通过官方YUM源进行安装

     二、安装MySQL 1. 更新YUM源 CentOS7自带的YUM源访问速度可能较慢,因此建议将YUM源更新为国内镜像源,例如阿里源

    这可以大大提高软件包的下载速度

     首先,安装wget工具(如果尚未安装): bash yum install wget 然后,备份原有的YUM源配置文件: bash mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak 接着,使用wget下载阿里源的YUM源配置文件: bash wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 更新YUM源后,执行以下命令来清理YUM缓存并更新系统软件包: bash yum clean all yum makecache yum update -y 2. 添加MySQL官方YUM仓库 接下来,下载并安装MySQL官方提供的YUM仓库文件

    这将允许你通过YUM来安装MySQL软件包

     使用wget下载MySQL8.0的YUM仓库RPM包: bash wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm 或者,你也可以选择下载MySQL5.7的YUM仓库RPM包(如果你需要安装旧版本): bash wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm 下载完成后,使用rpm命令安装YUM仓库文件: bash sudo rpm -ivh mysql80-community-release-el7-7.noarch.rpm 或者(对于MySQL5.7): bash sudo rpm -ivh mysql57-community-release-el7-8.noarch.rpm 安装完成后,你可以在`/etc/yum.repos.d/`目录下看到MySQL的YUM源配置文件

     3. 安装MySQL服务器 现在,你可以使用YUM来安装MySQL服务器软件包了

    执行以下命令: bash sudo yum install mysql-community-server 在安装过程中,YUM会自动处理所有依赖关系,并下载并安装所需的软件包

    如果遇到GPG密钥过期的错误,你可以通过更新密钥来解决: bash rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 然后再次尝试安装命令

     4. 启动MySQL服务 安装完成后,你需要启动MySQL服务

    执行以下命令: bash sudo systemctl start mysqld 你可以使用以下命令来检查MySQL服务的运行状态: bash sudo systemctl status mysqld 如果你希望MySQL服务在系统启动时自动启动,可以执行以下命令来启用开机自启: bash sudo systemctl enable mysqld 三、MySQL初始配置 MySQL安装并启动后,你需要进行一些初始配置才能开始使用

     1. 获取临时密码 MySQL首次启动时会自动生成一个临时密码,你可以在`/var/log/mysqld.log`日志文件中找到它: bash sudo grep temporary password /var/log/mysqld.log 记录下这个临时密码,稍后将使用它来登录MySQL

     2. 登录MySQL并修改密码 使用临时密码登录MySQL: bash mysql -uroot -p 然后系统会提示你输入密码,输入刚才记录的临时密码即可

     登录后,你需要修改root用户的密码

    MySQL8.0及更高版本对密码策略有严格要求,你需要创建一个符合策略的密码(包含大小写字母、数字和特殊字符)

    执行以下命令来修改密码: sql ALTER USER root@localhost IDENTIFIED BY NewStrongPassword!; 请将`NewStrongPassword!`替换为你自己的强密码

     如果你遇到密码策略限制导致无法设置密码的问题,你可以暂时降低密码策略要求: sql SET GLOBAL validate_password_policy = LOW; SET GLOBAL validate_password_length =6; 然后再尝试设置密码

    但请注意,这只是一个临时解决方案,强烈建议在生产环境中使用强密码策略

     3.移除匿名用户并禁用远程root登录(可选) 为了提高MySQL的安全性,你可以移除匿名用户并禁用远程root登录

    这可以通过运行`mysql_secure_installation`脚本来完成,该脚本会引导你完成这些安全配置步骤

     bash sudo mysql_secure_installation 按照提示进行操作即可

     四、MySQL配置与优化 安装并配置好MySQL后,你可能还需要进行一些额外的配置和优化以满足你的业务需求

     1. 调整配置文件(`/etc/my.cnf`) MySQL的配置文件位于`/etc/my.cnf`(或`/etc/mysql/my.cnf`,具体路径可能因安装方式和版本而异)

    你可以根据服务器硬件资源和业务需求来调整关键参数

    以下是一些常见的配置项: ini 【mysqld】 内存分配 innodb_buffer_pool_size=2G 建议为物理内存的50%-70% max_connections=200 根据并发量调整 日志与持久化 slow_query_log=1 long_query_time=2 innodb_flush_log_at_trx_commit=1 请根据你的实际情况调整这些参数

    调整完成后,记得重启MySQL服务以使更改生效

     2. 用户权限管理 避免直接使用root账户操作数据库,建议创建专用用户并限制其权限

    例如: sql CREATE USER app_user@localhost IDENTIFIED BY StrongPassword123!; GRANT SELECT, INSERT, UPDATE, DELETE ON app_db. TO app_user@localhost; FLUSH PRIVILEGES; 这将创建一个名为`app_user`的新用户,并授予其对`app_db`数据库的SELECT、INSERT、UPDATE和DELETE权限

     3.索引优化与查询分析 通过EXPLAIN命令分析慢查询,并添加合适的索引来提高查询性能

    例如: sql EXPLAIN SELECT - FROM orders WHERE user_id=100; CREATE INDEX idx_user_id ON orders(user_id); 这将分析对`orders`表的查询,并在`user_id`列上创建一个索引以加速查询

     4.防火墙设置 仅允许特定IP地址访问MySQL端口(默认3306)

    这可以通过配置防火墙规则来实现

    例如,使用firewalld来添加一条允许特定IP地址访问33

nat123映射怎么用?超详细步骤,外网访问内网轻松搞定
nat123域名怎么用?两种方式轻松搞定
nat123怎么用?简单几步实现内网穿透
内网穿透工具对比:nat123、花生壳与轻量新选择
远程访问内网很简单:用对工具,一“箭”穿透
ngrok下载完全指南:从入门到获取客户端
内网远程桌面软件:穿透局域网边界的数字窗口
从外网远程访问内网服务器的完整方案
Windows Server 2008端口转发完全教程:netsh命令添加/查看/删除/重置
为什么三层交换机转发比Linux服务器快?转发表硬件加速的秘密