CMake 安装MySQL5.7

简介

MySQL的安装方式又很多,比如二进制直接解压,利用rpm包方式安装,MySQL5.5之前可以用make,在MySQL5.5之后源码编译需要用CMake。这里简单介绍一下如何源码安装MySQL5.7。
一般二进制的方式就可以了,如果需要定制可以用CMAKE。

前提

  1. CMake
  2. ncurses 函数库
  3. 安装的时候需要Boost C++库,必须安装Boost1.59.0,安装之后,cmake需要加一个参数表明Boost文件所在的位置
cmake . -DWITH_BOOST=/usr/local/boost_1_59_0  #这里指定Boost位置

安装

第一步:安装CMake

yum install cmake -y

第二步:安装依赖包

yum groupinstall "Development Tools" -y  #安装开发包组,以防缺包
yum install ncurses  ncurses-devel gcc gcc-devel  gcc-c++  -y

第三步:创建mysql用户

useradd -M -s /sbin/nologin  mysql

第四步:安装MySQL5.7

源码包可以在官网下载,因为安装需要Boost库,所以这里下载的源码包直接下载一个包含Boost的源码包

官网的下载地址
https://dev.mysql.com/downloads/mysql/

CMake 安装MySQL5.7_第1张图片

下载好之后,解压

 tar xf mysql-boost-5.7.24.tar.gz
 cd mysql-5.7.24/

利用CMake构建MySQL5.7

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.7 \
-DMYSQL_DATADIR=/usr/local/mysql5.7/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql5.7/data/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 \
-DWITH_BOOST=./boost/boost_1_59_0 

CMake编译安装过程会把指定的配置信息硬编码到程序文件中
这些配置项可以根据需要进行调整,

构建完成之后直接安装

make && make install

第五步:初始化数据库

/usr/local/mysql5.7/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql5.7  --datadir=/usr/local/mysql5.7/data

初始化之后会默认给你生成临时密码,这个要先记一下
如果不需要它帮你生成密码可以使用–initialize-insecure选项

第六步:设置一下路径以及权限

chown -R mysql.mysql  /usr/local/mysql5.7 
echo 'PATH=/usr/local/mysql5.7/bin/:$PATH' >>/etc/profile
source /etc/profile 

CMake 安装MySQL5.7_第2张图片

第七步:创建配置文件/etc/my.cnf

这里的参数需要按照部署的环境更改

[root@localhost mysql-5.7.24]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql5.7
datadir=/usr/local/mysql5.7/data
socket=/usr/local/mysql5.7/data/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql5.7/data/err.log
pid-file=/usr/local/mysql5.7/data/mysql.pid

!includedir /etc/my.cnf.d

第八步:启动数据库

还有个点比较奇怪,MySQL5.7可能需要手动创建错误日志文件

touch /usr/local/mysql5.7/data/err.log
chown -R mysql.mysql  /usr/local/mysql5.7

启动数据库

mysqld_safe &

CMake 安装MySQL5.7_第3张图片

第九步:连接数据库

mysql -uroot -p -S /usr/local/mysql5.7/data/mysql.sock

CMake 安装MySQL5.7_第4张图片
参考官方文档:
https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

你可能感兴趣的:(数据库)