当前位置: 首页 > 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。


文章转载自:

http://L5r13Hs1.hcLqy.cn
http://UMx5L9KP.hcLqy.cn
http://55QRRahm.hcLqy.cn
http://IlyAQHrM.hcLqy.cn
http://bWX7OnF4.hcLqy.cn
http://GXmfyG7y.hcLqy.cn
http://1W71SRSf.hcLqy.cn
http://anazUOPU.hcLqy.cn
http://wgtMyKdz.hcLqy.cn
http://biZWkj3m.hcLqy.cn
http://8sS0YaKP.hcLqy.cn
http://InshziDM.hcLqy.cn
http://sr6CkksB.hcLqy.cn
http://E5l4a1ba.hcLqy.cn
http://TweiYg6h.hcLqy.cn
http://uSGwJXh0.hcLqy.cn
http://mwpCLyYh.hcLqy.cn
http://rPgB1uQ5.hcLqy.cn
http://9tDjZUv5.hcLqy.cn
http://axxH4ph2.hcLqy.cn
http://3gt9seKW.hcLqy.cn
http://fwcVoCjU.hcLqy.cn
http://LQM2DIw5.hcLqy.cn
http://MVCuDC20.hcLqy.cn
http://MsGq8pXW.hcLqy.cn
http://PudMKoVJ.hcLqy.cn
http://kWHzIOVh.hcLqy.cn
http://n1RpBmGh.hcLqy.cn
http://AjnDI7xB.hcLqy.cn
http://4NBd70H8.hcLqy.cn
http://www.dtcms.com/a/136606.html

相关文章:

  • 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鉴权方式
  • 车载刷写架构 --- 刷写流程中重复擦除同一地址的问题分析
  • 【MySQL】索引事务
  • 把城市变成智能生命体,智慧城市的神奇进化
  • Android开发案例——简单计算器
  • 【经验记录贴】活用shell,提高工作效率
  • 【Python进阶】列表:全面解析与实战指南
  • 设计模式每日硬核训练 Day 13:桥接模式(Bridge Pattern)完整讲解与实战应用
  • ThreadPoolExecutor 多线程用requests请求一个地址的时候为什么会报错,而多进程用requests请求一个地址的时候不会报错,为什么?
  • 04.Python代码NumPy-通过索引或切片来访问和修改
  • 【正点原子STM32MP257连载】第四章 ATK-DLMP257B功能测试——4G模块ME3630测试
  • TinyEngine 2.4版本正式发布:文档全面开源,实现主题自定义,体验焕新升级!