1.获得数据库源码包,并且进行解压,切换到解压后的目录里。
源码包:mysql-boost-5.7.17.tar.gz
tar zxf mysql-boost-5.7.17.tar.gz
cd mysql-5.7.17/
2.编译需要安装cmake软件,所以安装cmake软件。
yum install camke -y
我的系统安装的版本为2.6.4-5.el6,在下面进行编译时就会出现问题。
3.编译:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql -DMYSQL_DATADIR=/usr/local/lnmp/mysql/data -DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_BOOST=boost/boost_1_59_0/
注意:这个为错误的结果,意思为你的cmake版本为2.6.4,但是这里需要更高的版本,camke 2.8.2版本。
所以需要在第二步时下载版本为2.8.2的camke,然后安装。
4.若cmake不成功,就需要删除CMakeCache.txt文件,因为每一次cmake不成功,都会产生此文件,影响下一次cmake。
5.继续切换到mysql-5.7.17目录下,cmake,会出现如下错误:
解决方案:安装gcc和 gcc-c++
6.每一次cmake出错后,都需要删除CMakeCache.txt 文件,继续cmake ,出现下面错误:
解决方案:安装ncurses-devel
7.继续删除CMakeCache.txt文件,继续cmake,出现以下错误:
解决方案:安装bison
yum install bison -y
8.cmake成功后,就进行make && make install
前面显示百分比,等待大概半个小时。
9.配置相关文件
cd /usr/local/lnmp/mysql/support-files/
mv /etc/my.cnf /etc/my.cnf.bak 先将此文件备份
cp my-default.cnf /etc/my.cnf
vim /etc/my.cnf 修改此文件里面的默认数据库路径
cp mysql.server /etc/init.d/mysqld 将启动服务复制到init.d下面,方便启动。
vim ~/.bash_profile 修改路径,若PATH后面有路径,加冒号,然后将路径放在后面。
PATH=/usr/local/lnmp/mysql/bin
source ~/.bash_profile 刷新配置
groupadd -g 27 mysql 建立mysql组
useradd -g 27 -u 27 -M -d /usr/local/lnmp/mysql/ -s /sbin/nologin mysql 建立mysql用户,指定组id,指定路径
mysqld --initialize --user=mysql 可以产生随机密码
yBRAB%FV?8-:为初始密码,也就是上面图片的最后一行。
/etc/init.d/mysqld start 开启mysql
cd /usr/local/lnmp/mysql
chown -R root.mysql . 修改此路径的权限
chown mysql data -R 修改data目录的所有人权限为mysql
mysql_secure_installation mysql安装初始化,自己设置密码。
源码编译完毕!!