虽然安装过程可能涉及多个步骤,但只需按照以下详细指南操作,即可顺利完成安装
本文将详细介绍从检查系统版本、卸载旧版 MySQL、下载和安装 RPM 包、配置 MySQL 服务,到安全设置和远程访问配置的整个过程
一、检查系统版本 首先,我们需要确认 CentOS 的版本,确保其为6.5
使用以下命令查看系统版本: bash cat /etc/redhat-release 该命令将输出类似于`CentOS release6.5(Final)` 的信息,确认版本无误后,方可进行后续步骤
二、卸载旧版 MySQL 在 CentOS6.5 上,系统可能默认安装了旧版本的 MySQL,例如5.1.71
为了避免版本冲突,我们需要先卸载这些旧版本
使用以下命令检查并删除旧版 MySQL: bash yum list installed | grep mysql 该命令将列出所有已安装的 MySQL 相关包
接下来,使用`yum` 或`rpm` 命令删除这些包
例如,删除`mysql-libs` 包: bash yum -y remove mysql-libs.i686 或者,如果`yum` 删除时遇到依赖问题,可以使用`rpm` 的强力删除模式: bash rpm -e --nodeps mysql-libs.i686 卸载完成后,手动删除`/var/lib/mysql` 目录中的数据和`/etc/my.cnf`配置文件(如果确定不再需要): bash rm -f /etc/my.cnf rm -rf /var/lib/mysql 三、下载 MySQL5.7 RPM 包 接下来,从 MySQL官方网站下载适用于 CentOS6.5 的 MySQL5.7 RPM 包
访问 MySQL 的下载页面:【MySQL5.7 下载】(https://dev.mysql.com/downloads/mysql/5.7.htmldownloads),下载`mysql57-community-release-el6-.noarch.rpm` 包
注意选择与您的系统架构相匹配的版本
使用`wget` 命令下载 RPM 包
由于访问 HTTPS 时可能需要忽略证书检查,因此添加`--no-check-certificate` 参数: bash wget https://dev.mysql.com/get/mysql57-community-release-el6-.noarch.rpm --no-check-certificate 将`替换为具体的版本号,例如mysql57-community-release-el6-9.noarch.rpm`
四、安装 MySQL5.7 下载成功后,使用`yum` 命令安装 RPM 包: bash yum install mysql57-community-release-el6-.noarch.rpm 安装完成后,检查`/etc/yum.repos.d/`目录下是否增加了 MySQL5.7 的安装源文件
使用以下命令查看: bash ls /etc/yum.repos.d/ 应该能够看到`mysql57-community.repo` 和`mysql-community-source.repo` 文件
五、使用 yum 安装 MySQL 服务器 现在,使用`yum` 命令安装 MySQL 服务器: bash yum install mysql-community-server 安装过程中,系统会要求确认两次,输入`y` 继续
安装完成后,可以启动 MySQL 服务: bash service mysqld start 六、MySQL 配置与安全设置 1.查看 root 用户初始密码 MySQL5.7 在安装后会生成一个临时的 root 密码,存储在`/var/log/mysqld.log`文件中
使用以下命令查看: bash grep password /var/log/mysqld.log 记下该密码,稍后将用于登录 MySQL
2.修改 root 密码 使用初始密码登录 MySQL: bash mysql -u root -p 登录后,使用`SET PASSWORD` 命令修改密码
注意,新密码必须符合 MySQL 的密码策略,通常要求包含大小写字母、数字和特殊字符: sql SET PASSWORD FOR root@localhost = PASSWORD(新密码); 例如: sql SET PASSWORD FOR root@localhost = PASSWORD(Root123!); 3.配置 MySQL 开机自启 使用`chkconfig` 命令设置 MySQL 服务开机自启: bash chkconfig --list | grep mysqld chkconfig mysqld on 4.修改字符集为 UTF-8 编辑`/etc/my.cnf` 文件,在`【mysqld】` 部分添加`character-set-server=utf8`,并在文件末尾新增`【client】` 段,添加`default-character-set=utf8`
修改后,重启 MySQL 服务: bash service mysqld restart 使用以下命令验证字符集设置: sql SHOW VARIABLES LIKE %character%; 七、防火墙与远程访问配置 1.开放 MySQL 访问端口 3306 编辑防火墙配置文件`/etc/sysconfig/iptables`,添加允许访问3306 端口的规则: bash vim /etc/sysconfig/iptables 在文件中添加以下行(确保在`icmp-host-prohibited` 之前): iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport3306 -j ACCEPT 保存并退出后,重新加载防火墙规则: bash service iptables restart 2.配置远程访问 默认情况下,MySQL 仅允许本地访问
要允许远程访问,需要修改 MySQL 数据库中的`user` 表
登录 MySQL 后,执行以下命令: sql USE mysql; UPDATE user SET host=% WHERE user=root; FLUSH PRIVILEGES; 注意,如果`host`字段已经包含`%` 或其他允许远程访问的值,则无需更新
运行`FLUSH PRIVILEGES;` 以使更改生效
另外,为了安全起见,建议为远程用户创建专门的账户,并授予必要的权限,而不是直接修改 root用户的 host字段
例如: sql CREATE USER remote_user@% IDENTIFIED BY password; GRANT ALL PRIVILEGES ON- . TO remote_user@% WITH GRANT OPTION; FLUSH PRIVILEGES; 八、总结 通过以上步骤,我们成功在 CentOS6.5 上安装了 MySQL5.7,并进行了基本的配置和安全设置
这些步骤涵盖了从系统准备到服务启动、字符集配置、防火墙设置和远程访问配置的整个过程
在实际应用中,可能还需要根据具体需求进行进一步的调优和安全加固
希望本文能为您提供有价值的参考和帮助