在CentOS虚拟机上安装MySQL 5.6是搭建本地开发测试环境的常见操作,整个过程需要按照步骤逐步处理,避免出现依赖缺失或者配置错误的问题。

安装前准备
首先确认CentOS虚拟机的系统版本,本文以CentOS 7为例,其他版本操作差异不大。先检查系统是否已经安装了其他版本的MySQL或者MariaDB,避免冲突。
# 检查已安装的MySQL相关包 rpm -qa | grep mysql # 检查已安装的MariaDB相关包 rpm -qa | grep mariadb # 如果有输出,先卸载对应包,比如卸载mariadb yum remove mariadb-libs -y
接着安装必要的依赖工具,确保后续下载和安装过程正常进行。
yum install -y wget gcc-c++ ncurses-devel cmake make perl
下载MySQL 5.6安装包
前往MySQL官方归档页面获取5.6版本的对应安装包,这里选择通用的Linux二进制包,适配CentOS系统。
# 进入临时目录 cd /tmp # 下载MySQL 5.6.51二进制包,可根据需要替换版本号 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz
解压并配置MySQL
解压下载好的安装包,移动到系统常用的安装目录,然后创建MySQL运行所需的用户和目录。
# 解压安装包 tar -zxvf mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz # 移动到安装目录 mv mysql-5.6.51-linux-glibc2.12-x86_64 /usr/local/mysql # 创建mysql用户和用户组 groupadd mysql useradd -r -g mysql mysql # 创建数据目录并修改权限 mkdir -p /usr/local/mysql/data chown -R mysql:mysql /usr/local/mysql
然后执行初始化脚本,生成初始的数据库文件。
cd /usr/local/mysql # 执行初始化脚本 scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
配置系统服务
将MySQL的服务脚本复制到系统服务目录,方便后续通过systemctl命令管理MySQL服务。
# 复制服务脚本 cp support-files/mysql.server /etc/init.d/mysqld # 修改服务脚本中的basedir和datadir sed -i 's#^basedir=$#basedir=/usr/local/mysql#' /etc/init.d/mysqld sed -i 's#^datadir=$#datadir=/usr/local/mysql/data#' /etc/init.d/mysqld # 添加服务并设置开机自启 chkconfig --add mysqld chkconfig mysqld on
同时可以复制默认的配置文件到系统配置目录,优化MySQL的运行参数。
cp support-files/my-default.cnf /etc/my.cnf # 编辑配置文件,添加基础配置 cat >> /etc/my.cnf << EOF [mysqld] basedir = /usr/local/mysql datadir = /usr/local/mysql/data port = 3306 server_id = 1 character-set-server = utf8mb4 collation-server = utf8mb4_general_ci EOF
启动并验证MySQL
启动MySQL服务,查看服务状态确认是否正常运行。
# 启动MySQL服务 service mysqld start # 查看服务状态 service mysqld status
服务启动后,使用初始的root用户登录MySQL,默认初始密码为空,登录后建议先修改root密码。
# 将mysql命令加入环境变量,方便直接调用
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile
source /etc/profile
# 登录MySQL
mysql -u root
# 登录后修改root密码,替换为自己的密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_new_password');
# 刷新权限
FLUSH PRIVILEGES;常见问题解决
- 如果启动服务时报错,可以查看
/usr/local/mysql/data目录下的错误日志,定位具体问题 - 如果远程连接MySQL失败,需要检查是否开放了3306端口,以及是否给root用户授权了远程访问权限
- 如果出现依赖缺失的错误,根据错误提示安装对应的依赖包即可
完成以上步骤后,就可以在CentOS虚拟机上正常使用MySQL 5.6了,后续可以根据项目需求创建数据库和用户,进行相关的开发测试工作。