centos源码安装mysql5.6 (docker环境)
1 安装必要依赖
- 安装yum包
yum -y install gcc gcc-c++ make wget autoconf perl-Time-HiRes
- 安装cmake
wget -c http://www.cmake.org/files/v3.0/cmake-3.0.1.tar.gz
tar zxvf cmake-3.0.1.tar.gz && cd cmake-3.0.1
./configure && make && make install
- 安装bison
wget -c -O m4-1.4.9.tar.gz http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
tar -zvxf m4-1.4.9.tar.gz && cd m4-1.4.9
./configure && make && make install
wget -c http://ftp.gnu.org/gnu/bison/bison-3.0.2.tar.gz
tar zxvf bison-3.0.2.tar.gz && cd bison-3.0.2
./configure && make && make install
- 安装ncurses
wget -c ftp://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz
tar -zxvf ncurses-5.9.tar.gz && cd ncurses-5.9
./configure && make && make install
- 安装MySQL
mkdir -p /usr/local/mysql/data && cd /usr/local/mysql
建立目录
groupadd mysql
创建mysql组
useradd -g mysql mysql -s /sbin/nologin
创建MySQL用户并且不让shell登录
chown -R mysql:mysql /usr/local/mysql
修改mysql文件夹所属用户和组
wget -c https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.42.tar.gz
下载mysql
- 这里还有一个5.7版本的路径
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24.tar.gz
tar -zxvf mysql-5.6.42.tar.gz && mv mysql-5.6.42 mysql && cd /usr/local/mysql/mysql
解压并且进入目录
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
使用cmake编译
make && make install
编译并安装
- 初始化MySQL
chmod -R 755 /usr/local/mysql/mysql/scripts/mysql_install_db
给执行权限
/usr/local/mysql/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
- 编辑
/usr/local/mysql/my.cnf
MySQL配置文件
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp
* 如果这个配置文件不在,则cp support-files/my-medium.cnf /usr/local/mysql/my.cnf一个
- 启动mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
启动mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin
建立软连接添加环境变量
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start