Centos7源码安装 mysql

Posted 超凡脫俗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7源码安装 mysql相关的知识,希望对你有一定的参考价值。

源码安装概念:

注意事项

1、源码包是从官方网站上下载来的,下载的文件常见格式一般是“.tar.gz”或".tar.bz2"。
2、源代码下载后的保存位置:"/usr/src 保存内核源代码,/usr/local/src 保存用户下载的源代码"
3、软件安装位置默认目录是"/usr/local/软件名",为方便管理与卸载,需要单独规划安装目录
4、软件安装报错一出现"error"或"warning"字样,其二是安装过程停止,如没停止只是出现警告信息,则只是软件部分功能无法使用,并非报错。

安装步骤

1、下载软件包
2、解压缩
3、进入解压目录
4、./configure软件配置与检查。
<1>安装前需要检测系统环境是否符合安装需求
<2>"./configure --help"查询其支持功能
一般是通过"./configure–prefix=安装路径"来指定安装路径。
<3>把系统环境检测结果、定义好的功能选项写入Makefile文件,后续编译和安装需要依赖该文件内容。

6、make 编译
make编译会调用gcc编译器,并读取Makefile文件中信息进行系统软件编译,编译目的是把源码程序转变为Linux识别的可执行文件,编译会比较费时,
7、make clean 清空编译内容(非必须步骤)
如果"./configure"或"make"编译中报错,那么重新执行命令前一定要执行make clean命令,它会清空Makefile文件或编译产生的".o"头文件。
8、make install 安装
真正的安装过程,一般会写清楚程序的安装位置,如果未指定安装目录,则可以把这个命令执行过程保存下来,以备将来删除使用。

linux编译安装都需要依赖安装包 gcc gcc-c++ make,mysql 5.5以上版本(包含mysql 5.5版本)都需要使用cmake工具进行编译,不能使用./configure编译),mysql 5.7以上版本(包含 mysql 5.7版本)在使用cmake进行编译时会提示错误需要boost软件包支持。

源码包下载

https://downloads.mysql.com/archives/community/—源码包下载地址
版本:5.7.25->Source Code->Generic Linux(Architecture Independent),选择mysql-boost-版本.tar.gz—选择版本号

安装部署

rpm -qa |grep -i mysql---先检查本机是否安装mysql

/etc/init.d/mysqld stop---mysql数据库停止,卸载前先停止它

/etc/init.d/mysqld status---mysql状态,再检查本机是否安装mysql

rpm -ev mysql-server-5.1.71版本号---使用rpm -ev卸载组件会提示先卸载依赖包,加--nodeps可以忽略依赖包卸载

whereis mysql---查看是否有残留mysql目录或文件

find / -name mysql

yum install -y gcc gcc-c++ cmake ncurses ncurses-devel bison ---yum在线安装编译所需工具和库

useradd -s /sbin/nologin mysql---添加用户

mkdir -p /data/mysql/data---建立所需目录

chown -R mysql:mysql /data/mysql---并更改所有者为mysql

tar -zxvf mysql-boost-5.7.25.tar.gz -C /usr/local/mysql/---将下载好的mysql解压到/usr/local/mysql目录下
cd /usr/local/mysql---切换到/usr/local/mysql目录下

cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost ---编译安装

使用ls、pwd查看当前文件夹及路径,
cd mysql-5.7.25/---再进入mysql文件夹内

make && make install

编辑配置文件

vi /etc/my.cnf---编辑配置文件,测试时有修改的就是以下选项
[mysqld]
port = 3306
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql/data
socket=/tmp/mysql.sock
chown -R mysql:mysql /usr/local/mysql/ ---将安装目录用户和组都更改为mysql

chown -R mysql:mysql /data/mysql/data ---将数据库数据目录和组更改为mysql,数据目录下一定要为空
./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data

---./代表当前目录/usr/local/mysql/,当前目录如果没有.mysql,在/usr/local/mysql/bin中,听说绝对路径也ok。

cp mysql.server /etc/init.d/mysqld ---在/usr/local/mysql/support-files目录下,拷贝可执行配置文件
service mysqld start---启动 ,如果未配置socket=/tmp/mysql.sock,会报错
./mysql -hlocalhost -uroot -p---测试连接,在bin目录下执行,密码为空,回车即可。

PATH=/usr/local/mysql/bin:$PATH---修改环境变量

source /etc/profile---重启

systemctl enable mysqld---设置开机自启动

以上是关于Centos7源码安装 mysql的主要内容,如果未能解决你的问题,请参考以下文章

centos7源码安装mysql时cmake报错

Centos7源码安装mysql

centos7.3源码安装mysql

速看!centos7下源码安装mysql5.7

Centos7服务器中通过编译源码安装MySQL

CentOS7 下源码安装MySQL 8.0.11