Linux下编译安装MySQL

Posted john4415

tags:

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

这里先说一下各个版本,我用的是centos7+mysql5.7版本,可以从MySQL官网下载。

https://dev.mysql.com/downloads/mysql/5.6.html#downloads

下载即可技术图片

还需要下载boost_1_59_0.tar.gz。去官网下载

链接:https://pan.baidu.com/s/1hyD8MdQybC9o0_fcVfDl4w
提取码:uiz9

首先先yum安装一些依赖包和工具

yum install make *curses* gcc gcc44* gcc-c++ gcc-g77 cmake bison libaio-devel.x86_64  -y

第二步:创建新目录用于存放编译中间文件

技术图片
tar -xzvf mysql-5.7.16.tar.gz

cd mysql-5.7.16
mkdir debug
cd debug
View Code

第三步:生成编译环境

技术图片
mv  boost_1_59_0.tar.gz ./mysql-5.7.16

cmake .. -DBUILD_CONFIG=mysql_release -DINSTALL_LAYOUT=STANDALONE -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_DTRACE=OFF -DWITH_EMBEDDED_SERVER=OFF -DWITH_INNOB_MEMCACHED=ON -DWITH_SSL=bundled -DWITH_ZLIB=system -DWITH_PAM=ON -DCMAKE_INSTALL_PREFIX=/var/mysql/ -DINSTALL_PLUGINDIR="/var/mysql/lib/plugin" -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EDITLINE=bundled -DFEATURE_SET=community -DCOMPILATION_COMMENT="MySQL Server (GPL)" -DWITH_DEBUG=OFF -DWITH_BOOST=..
View Code

 当看到-- Configuring done

    -- Generating done

代表配置完成

在debug下执行:make -j 24 && make install

第四步:安装MySQL数据库

准备配置文件,my.cnf 放到目录:/var/mysql/data_3306

技术图片
[mysqld]
port=3306
datadir=/var/mysql/data_3306
log_error=/var/mysql/data_3306/error.og
basedir=/var/mysql/
View Code

创建数据库

/var/mysql/bin/mysqld --dafaults-file=/var/mysql/data_3306/my.cnf --initialize --user=mysql

第五步:启动mysql

/var/mysql/bin/mysqld --dafaults-file=/var/mysql/data_3306/my.cnf --user=mysql

第六步:初始化

数据库启动时为root用户随机生成一个密码,存储在log_error文件里,

可以通过在数据库里修改密码 alter user ‘root‘@‘localhost‘ identified by ‘password‘;

也可以通过制定参数--initalize-insecure,但这样就和5.6版本一样了,可能存在不安全因素

 

新增mysql用户组

groupadd mysql

新增mysql用户

useradd -r -g mysql mysql

chown -R mysql:mysql . ----该文件为/var/mysql
配置环境变量
  • vi /etc/profile
  • export PATH=$PATH:/var/mysql/bin
正常启动就行


以上是关于Linux下编译安装MySQL的主要内容,如果未能解决你的问题,请参考以下文章

在Linux下编译安装MySQL并通过C语言操作MySQL数据库

linux下编译安装nginx

centos下编译安装MySQL5.6

Linux下编译安装nginx并且监控

Linux下编译安装Lnmp

Linux下编译安装MySQL