mysql5.7.11 源码编译安装 (Red hat linux 6.5 )

Posted

tags:

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

mysql5.7.11 源码编译安装 (Red hat linux 6.5 )
一、准备工作
1.1 卸载系统自带mysql

查看系统是否自带mysql, 如果有就卸载了, 卸载方式有两种yum, rpm, 这里通过yum卸载

rpm -qa | grep mysql    //查看系统自带mysql
yum -y remove mysql-*   //卸载mysql
rpm -e –nodeps mysql-5.1.73-3.el6_5.x86_64 //卸载mysql
1.2 卸载系统自带boost,并安装boost_1_59_0

mysql 5.7 依赖于boost_1_59_0或更高版本, 查看系统是否自带boost, 如果有就卸载了

rpm -qa | grep boost    //查看系统自带boost
yum -y remove boost-*   //卸载boost
rpm -e –nodeps boost-filesystem-1.41.0-11.el6_1.2.x86_64 //卸载boost

安装 boost_1_59_0 , cmake 编译时加上 -DWITH_BOOST=/usr/local/boost

tar -zxvf boost_1_59_0.tar.gz
mv boost_1_59_0 /usr/local/boost

1.3 安装依赖包

yum install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl

1.4 安装cmake

tar -zxvf cmake-3.4.1.tar.gz
./configure
make && make install
1.5 下载 mysql 源码包 mysql-5.7.11.tar.gz

通过wget下载

wget http://cdn.mysql.com/Downloads/MySQL-5.7.11/mysql-5.7.11.tar.gz

windows中下载需要的源码包,通过文件传输工具rzsz上传

yum install lrzsz //安装rzsz
rz //上传

1.6 创建用户组mysql和用户mysql

检查系统是否已经有mysql用户,如果没有则创建

cat /etc/group | grep mysql     //查看是否存在mysql用户组
cat /etc/passwd | grep mysql    //查看是否存在mysql用户
groupadd mysql                  //创建用户组
useradd -r -g mysql mysql       //创建用户

1.7 创建mysql目录和数据库目录,并赋予用户mysql权限

创建mysql目录和数据库目录

mkdir /usr/local/mysql          //创建mysql目录
mkdir /usr/local/mysql/data     //创建数据库目录
chown -R mysql:mysql /usr/local/mysql   //赋予权限
二、编译、安装、配置mysql
2.1 编译、安装mysql

编译时带上一些参数如安装根目录、数据库目录、编码、端口号、默认存储引擎等
编译的时候记得带上 -DWITH_BOOST=/usr/local/boost

tar -zxvf mysql-5.7.11.tar.gz
cd mysql-5.7.11
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DENABLE_DOWNLOADS=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
make && make install
配置选项参考地址, [http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html][1]
2.2 编译出错, 重新编译前要删除编译失败的文件

重新编译时,需要清除旧的对象文件和缓存信息

make clean
rm -f CMakeCache.txt

2.3 配置my.cnf

my.cnf文件可以根据自己的需求选择合适的配置, 网上有很多, 可以参考, 这里不在详细说明。记得把 my.cnf 放到 /etc 目录下

mv my.cnf /etc/my.cnf

2.4 初始化系统数据表

自 mysql5.7 开始,初始化系统表不再使用 mysql_install_db 工具, 而是使用 mysqld –initialize-insecure –user=mysql , 其中 –initialize 表示默认生成一个安全的密码, –initialize-insecure 表示不生成密码, 密码为空

cd /usr/local/mysql
bin/mysqld –initialize-insecure –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data

2.5 添加环境变量, 注册成系统服务

添加环境变量, 在 PATH 中添加参数 :/usr/local/mysql/bin:/usr/local/mysql/lib

vim /root/.bash_profile
PATH=PATH:HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
source /root/.bash_profile

注册成系统服务

cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
service mysqld start/stop/restart/status

首次登陆设置密码

mysqladmin -uroot -p password 123456    //登录时候
SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘123456’);   //登录之后
查看进程

netstat -lntp | grep 3306
pkill mysqld


本文出自 “为梦想奋斗” 博客,转载请与作者联系!

以上是关于mysql5.7.11 源码编译安装 (Red hat linux 6.5 )的主要内容,如果未能解决你的问题,请参考以下文章

源码安装mysql5.7.11

centos6.5编译安装mysql5.7.11

[转帖]CENTOS6.6下mysql5.7.11带boost和不带boost的源码安装

MySQL最新版本 MySQL5.7.11 批量自动化一键式安装

Centos7.2 Systemd 方式编译 Mysql5.7.11

MySQL5.7.11(ZIP)安装