
前言安装与卸载中用户全部切换成root 一旦安装普通用户也能使用的~一、卸载不必要的环境CentOS 7 默认会安装 MariaDB它与 MySQL 存在文件和服务冲突必须先卸载清理全程建议切换至 root 用户操作普通用户需加sudo获取权限1. 检查并停止 MariaDB 服务首先检查 MariaDB 进程是否存在若存在则停止对应的服务# 检查mariadb进程 ps ajx |grep mariadb # 停止mariadb服务 systemctl stop mariadb.service # 检查mysql进程 ps ajx |grep mariadb # 停止mysql服务 systemctl stop mysql执行停止命令后若需要身份验证输入 root 密码即可。再次执行ps ajx |grep mariadb若无服务进程则说明停止成功。2. 检查并卸载默认安装包检查系统中已安装的 MariaDB 和 MySQL 相关 rpm 包# 检查mariadb相关包 rpm -qa | grep mariadb # 检查mysql相关包 rpm -qa | grep mysql卸载查到的所有冲突安装包建议逐个卸载确保清理干净sudo yum remove 查到的包名如果想要把查到的包名批量化的删除rpm -qa | grep mysql | xargs yum-y remove二、配置 MySQL 官方 Yum 源CentOS 7 默认 yum 源中无 MySQL 官方包需手动添加 MySQL 官方 yum 源建议安装与系统版本匹配的 MySQL 版本避免兼容性问题。1. 查看系统版本确认 CentOS 7 具体版本保证 yum 源与系统匹配获取mysql官方yum源http://repo.mysql.com/cat /etc/redhat-release2. 下载并安装 MySQL Yum 源从 MySQL 官方仓库http://repo.mysql.com/下载对应 CentOS 7 的 mysql57-community-release 包也可直接通过 rpm 命令安装# 安装mysql57社区版yum源 sudo rpm -Uvh mysql57-community-release-el7-10.noarch.rpm若执行时出现Permission denied权限错误添加sudo即可解决出现签名警告可忽略不影响安装。3. 验证 Yum 源安装结果ls /etc/yum.repos.d/ | grep mysql #检查 yum 源是否能识别 MySQL 相关包 yum list |grep mysql三、安装 MySQL 服务通过配置好的官方 yum 源一键安装 MySQL 社区版服务器会自动安装依赖的公共模块、库、客户端等组件。sudo yum install -y mysql-community-server四、MySQL 服务基础操作安装完成后进行服务启动、状态检查等基础操作确认服务正常运行。1. 查看配置文件和数据目录MySQL 默认配置文件为/etc/my.cnf默认数据存储目录为/var/lib/mysql执行以下命令查看# 查看配置文件 ls /etc/my.cnf # 查看数据目录 sudo ls /var/lib/mysql2. 启动并检查 MySQL 服务# 启动mysql服务 systemctl start mysqld.service # 检查mysql进程是否运行 ps axj |grep mysqld若进程列表中出现/usr/sbin/mysqld相关进程说明服务启动成功。3. 设置开机自启动可选为避免服务器重启后 MySQL 服务失效可设置开机自启动# 开启开机自启动 systemctl enable mysqld # 重载系统服务配置 systemctl daemon-reload五、MySQL 登录与密码配置MySQL 5.7 安装后会为 root 用户生成临时密码也可能存在无密码情况提供三种登录方法按顺序尝试即可推荐优先使用方法一。方法一通过临时密码登录推荐1.查找临时密码MySQL 临时密码默认存放在/var/log/mysqld.log日志文件中执行以下命令提取sudo grep temporary password /var/log/mysqld.log输出结果中rootlocalhost:后即为临时密码例如yLMalT:v5l*。2.临时密码登录使用提取的临时密码登录 MySQL 客户端mysql -uroot -p3.输入临时密码后即可进入 MySQL 命令行。修改密码策略并重置密码MySQL 5.7 默认开启密码强度验证要求密码包含数字、符号、大小写字母且长度≥8 位新手可先降低密码策略再修改自定义密码# 关闭密码强度验证0为最低级别 set global validate_password_policy0; # 设置密码最小长度为1 set global validate_password_length1; # 重置root本地登录密码替换为自定义密码 ALTER USER rootlocalhost IDENTIFIED BY 你的自定义密码; # 刷新权限使配置生效 FLUSH PRIVILEGES;方法二直接无密码登录1.若安装的 MySQL 无临时密码root 用户默认无密码可直接执行以下命令登录mysql -uroot方法三跳过权限验证登录适用于密码丢失 / 无法登录1.若以上两种方法均无法登录可通过修改配置文件跳过权限验证步骤如下vim /etc/my.cnf2.在[mysqld]节点最后添加跳过权限验证配置保存并退出skip-grant-tables3.重启 MySQL 服务使配置生效systemctl restart mysqld4.无密码登录 MySQLmysql -uroot注意登录成功后建议及时修改密码并注释掉skip-grant-tables配置重启服务恢复权限验证避免安全风险。六、配置 MySQL 编码解决中文乱码为避免数据库存储和查询出现中文乱码需配置 MySQL 服务端编码为 UTF-8编辑/etc/my.cnf配置文件vim /etc/my.cnf在[mysqld]节点中添加以下配置# 服务端编码设置为utf8 character-set-serverutf8 # 默认存储引擎为InnoDB default-storage-engineinnodb配置完成后重启 MySQL 服务使编码配置生效systemctl restart mysqld注意暂不建议在[mysql]节点添加default-character-setutf8MySQL 5.7 存在该配置的 bug会导致汉字无法回显。七、安装常见问题解决问题 1终端无法输入中文数据库中文插入失败首先检查系统终端的编码设置确保为 UTF-8env |grep LANG若输出LANGen_US.utf8则为正常若编码非 UTF-8需修改系统编码配置确保终端和 MySQL 编码一致。问题 2安装时出现 GPG 秘钥过期错误报错信息示例Failing package is: mysql-community-client-5.7.39-1.el7.x86_64 GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql解决方案导入 MySQL 最新的 GPG 秘钥rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022问题 3启动服务时出现权限错误确保/var/lib/mysql目录的属主和属组为 mysql 用户若权限异常执行以下命令修复chown -R mysql:mysql /var/lib/mysql