CentOS7上编译安装MySQL5.7教程
centos7编译安装mysql5.7

首页 2025-07-12 06:47:48



CentOS7编译安装MySQL5.7详细指南 在CentOS7系统上编译安装MySQL5.7是一个涉及多个步骤的过程,但只要你按照以下指南逐步操作,就一定能够成功安装并配置好MySQL数据库

    本文将详细介绍从清理安装环境到启动MySQL服务的全过程,确保你能够顺利地在CentOS7上运行MySQL5.7

     一、前期准备 在开始安装之前,你需要确保你的CentOS7系统是最新的,并且具备必要的权限

    此外,由于MySQL与MariaDB存在冲突,你需要先卸载系统自带的MariaDB

     1.更新系统: 首先,确保你的系统是最新的

    打开终端,运行以下命令来更新软件包索引并升级所有已安装的软件包

     bash sudo yum update -y 2.卸载MariaDB: CentOS7默认安装了MariaDB,这是MySQL的一个分支

    由于MySQL和MariaDB不能共存,你需要先卸载MariaDB

     bash sudo yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y sudo userdel -r mysql sudo rm -rf /etc/my sudo rm -rf /var/lib/mysql 3.创建MySQL用户: 创建一个专门用于运行MySQL服务的用户

     bash sudo useradd -r mysql -M -s /bin/false 二、下载和解压MySQL安装包 接下来,你需要从MySQL官方网站下载MySQL5.7的安装包,并将其解压到指定目录

     1.下载MySQL安装包: 访问MySQL官方网站,下载MySQL5.7的源码包

    你可以使用wget命令直接在终端中下载

     bash wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz 2.解压安装包: 将下载的安装包解压到/usr/local目录

     bash sudo mkdir -p /usr/local/{data,mysql,log} sudo tar xzvf mysql-boost-5.7.27.tar.gz -C /usr/local/ 注意:如果你安装的MySQL版本是5.7或更高,需要安装boost库,因为高版本的MySQL需要boost库才能正常运行

    MySQL安装包中已经包含了boost库,所以你不需要单独下载

     三、安装编译工具和依赖 在编译MySQL之前,你需要安装一些必要的编译工具和依赖

     bash sudo yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake 四、编译和安装MySQL 现在,你可以开始编译和安装MySQL了

     1.进入解压后的MySQL目录: bash cd /usr/local/mysql-5.7.27/ 2.运行cmake配置: 在运行cmake之前,你需要指定一些编译选项

    以下是一个常用的cmake配置命令: bash sudo cmake . -DWITH_BOOST=boost/boost_1_59_0/ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DMYSQL_DATADIR=/usr/local/mysql/data -DINSTALL_MANDIR=/usr/share/man -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 参数详解: -`-DCMAKE_INSTALL_PREFIX=/usr/local/mysql`:指定MySQL的安装目录

     -`-DSYSCONFDIR=/etc`:指定配置文件的存放目录

     -`-DMYSQL_DATADIR=/usr/local/mysql/data`:指定数据目录,错误日志文件也会存放在这个目录

     -`-DINSTALL_MANDIR=/usr/share/man`:指定帮助文档的存放目录

     -`-DMYSQL_TCP_PORT=3306`:指定MySQL的默认端口

     -`-DMYSQL_UNIX_ADDR=/tmp/mysql.sock`:指定sock文件的位置,用于网络通信

     -`-DDEFAULT_CHARSET=utf8`:指定默认字符集

     -`-DEXTRA_CHARSETS=all`:指定扩展的字符集支持所有字符集

     -`-DDEFAULT_COLLATION=utf8_general_ci`:指定默认的排序规则

     -`-DWITH_SSL=system`:使用系统提供的SSL库

     -`-DWITH_EMBEDDED_SERVER=1`:编译嵌入式数据库服务器

     -`-DENABLED_LOCAL_INFILE=1`:允许从本地导入数据

     -`-DWITH_INNOBASE_STORAGE_ENGINE=1`:编译InnoDB存储引擎

     3.编译和安装: 运行以下命令来编译和安装MySQL

     bash sudo make && sudo make install 这个过程可能会比较耗时,请耐心等待

     五、初始化MySQL数据库 在MySQL安装完成后,你需要初始化数据库

     1.进入MySQL安装目录: bash cd /usr/local/mysql 2.更改目录所有者: bash sudo chown -R mysql.mysql . 3.初始化数据库: bash sudo ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 初始化完成后,系统会生成一个临时密码,你需要记住这个密码,用于首次登录MySQL

     六、配置MySQL 接下来,你需要配置MySQL,包括创建配置文件和设置开机自启

     1.创建配置文件: 在/etc目录下创建my.cnf配置文件,并添加以下内容

     bash sudo vim /etc/my.cnf ini 【client】 port =3306 socket = /tmp/mysql.sock default-character-set = utf8 【mysqld】 port =3306 user = mysql

MySQL连接就这么简单!本地远程、编程语言连接方法一网打尽
还在为MySQL日期计算头疼?这份加一天操作指南能解决90%问题
MySQL日志到底在哪里?Linux/Windows/macOS全平台查找方法在此
MySQL数据库管理工具全景评测:从Workbench到DBeaver的技术选型指南
MySQL密码忘了怎么办?这份重置指南能救急,Windows/Linux/Mac都适用
你的MySQL为什么经常卡死?可能是锁表在作怪!快速排查方法在此
MySQL单表卡爆怎么办?从策略到实战,一文掌握「分表」救命技巧
清空MySQL数据表千万别用错!DELETE和TRUNCATE这个区别可能导致重大事故
你的MySQL中文排序一团糟?记住这几点,轻松实现准确拼音排序!
别再混淆Hive和MySQL了!读懂它们的天壤之别,才算摸到大数据的门道