当前位置: 首页 > news >正文

centosu7 二进制安装mysql5.7

一、准备工作

1. 卸载原有MariaDB(如有)
sudo yum remove -y mariadb-libs
sudo rm -rf /var/lib/mysql
2. 安装依赖
sudo yum install -y libaio numactl openssl-devel
3. 创建MySQL用户和目录
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
sudo mkdir -p /data/mysql/{data,logs,tmp}
sudo chown -R mysql:mysql /data/mysql

二、下载并安装MySQL 5.7

1. 下载二进制包(选择国内镜像加速)
wget https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
2. 解压并安装
tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local
sudo ln -s mysql-5.7.44-linux-glibc2.12-x86_64 mysql
3. 配置环境变量
echo 'export PATH=/usr/local/mysql/bin:$PATH' | sudo tee /etc/profile.d/mysql.sh
source /etc/profile

三、初始化数据库

1. 初始化数据目录
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/data/mysql/data \
--log-error=/data/mysql/logs/mysql-error.log

注意:初始化后会生成临时root密码,记录在日志中:

sudo grep 'temporary password' /data/mysql/logs/mysql-error.log
2. 生成SSL/RSA文件
sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/data/mysql/data

四、配置MySQL服务

1. 创建配置文件 /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql/data
socket=/data/mysql/mysql.sock
log-error=/data/mysql/logs/mysql-error.log
pid-file=/data/mysql/mysql.pidcharacter-set-server=utf8mb4
collation-server=utf8mb4_general_ci
max_connections=1000
tmpdir=/data/mysql/tmp[client]
socket=/data/mysql/mysql.sock
2. 创建Systemd服务文件 /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
After=network.target[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
ExecReload=/bin/kill -HUP $MAINPID
Restart=always[Install]
WantedBy=multi-user.target
3. 启动服务
sudo systemctl daemon-reload
sudo systemctl start mysqld
sudo systemctl enable mysqld

五、安全配置

1. 运行安全向导
sudo /usr/local/mysql/bin/mysql_secure_installation

按提示操作:

  1. 输入初始化时的临时密码

  2. 设置新root密码

  3. 移除匿名用户(选Y)

  4. 禁止root远程登录(选Y)

  5. 移除test数据库(选Y)

  6. 重载权限表(选Y)

2. 开放防火墙(如需远程访问)
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

六、验证安装

mysql -u root -p -e "SELECT VERSION();"

应输出类似:

+-----------+
| VERSION() |
+-----------+
| 5.7.44    |
+-----------+

七、故障排查指南

1. 启动失败检查
# 查看错误日志
sudo tail -50 /data/mysql/logs/mysql-error.log# 检查权限
sudo ls -l /data/mysql/# 检查端口占用
sudo netstat -tulnp | grep 3306
2. 常见问题解决
  • 错误1libaio.so.1: cannot open shared object file
    解决:sudo yum install -y libaio

  • 错误2PID file cannot create
    解决:

    sudo chown mysql:mysql /data/mysql
    sudo rm -f /data/mysql/mysql.pid

附:目录结构说明

/data/mysql/
├── data/      # 数据库文件
├── logs/      # 错误日志
└── tmp/       # 临时文件

按照此流程操作,即可在CentOS 7.6上完成MySQL 5.7的手动安装。如需远程访问,建议创建专用用户而非直接使用root。

相关文章:

  • Linux——消息队列
  • Spring Boot集成MinIO的详细步骤
  • 避坑,app 播放器media:MediaElement paly报错
  • 子函数嵌套的意义——以“颜色排序”为例(Python)
  • css 中float属性及clear的释疑
  • 小白如何从0学习CSS
  • Spark-SQL与Hive的连接及数据处理全解析
  • 关于STM32创建工程文件启动文件选择
  • 服务器带宽问题,以及服务器的上传下载速度,异常卡顿等
  • 通过建模和仿真进行高速连接器设计
  • 绿算轻舟系列FPGA加速卡:驱动数字化转型的核心动力【2】
  • SDK游戏盾ip可以破解吗
  • Elasticsearch 8.18 中提供了原生连接 (Native Joins)
  • 单例模式:懒汉和饿汉
  • 深入探索函数的奥秘:从基础到进阶的编程指南
  • uniapp(Vue)开发微信小程序 之 保存图片到本地
  • 其利天下即将亮相第21届(顺德)家电电源与智能控制技术研讨会
  • 确保连接器后壳高性能互连的完整性
  • Go-zero:JWT鉴权方式
  • 车载刷写架构 --- 刷写流程中重复擦除同一地址的问题分析
  • php网站管理系统/产品关键词
  • wordpress制作上传图片/长春网站优化咨询
  • 网站开发论文英文资料/seo案例模板
  • 公司手机版网站制作/网站建设方案设计书
  • 建设网站的目的服装类/网络营销比较常用的营销模式
  • 网站客户端制作/新网站百度收录要几天