最近在工作中要求在客户的系统中使用源码编译的方式搭建一个高可用的Mysql5.7数据库,客户提供的Linux系统为国产uos,其实用起来个人感觉和Unbuntu很像,ps:也没用过其他的,太菜太菜!
经过一波三折,各种踩坑,总算在百度和google两位大神的指导下安装成功!下面进行记录。
一、安装单节点Mysql5.7
1 安装必要的依赖(仅限于我的安装环境)
首先去mysql官网下载安装包,我用的是mysql-boost-5.7.30.tar.gz
进入到机器后,发现是可以连接外网的,这给我安装过程带来很大的方便
首先我安装了gcc7.3版本(后续会写出gcc安装过程和踩坑记录)
安装的第一步,先使用apt命令下载以下依赖
sudo apt-get install dos2unix
sudo apt-get install chkconfig -y
sudo apt-get install openssl
sudo apt-get install libssl1.1=1.1.0j-1~deb9u1
sudo apt-get install libssl-dev
sudo apt-get install pkg-config
sudo apt-get install cmake
sudo apt-get install libtinfo5=6.0+20161126-1+deb9u2
sudo apt-get install libncurses5=6.0+20161126-1+deb9u2
sudo apt-get install libtinfo-dev=6.0+20161126-1+deb9u2
sudo apt-get install libncurses5-dev
注意 安装openssl和libssl-dev可能会把ssh卸载,需要在安装完mysql后重新安装ssh
具体为什么要提前安装这些依赖,我会在后面踩坑记录中说明
2 准备安装包
我把安装包放在/usr/local/mysql下
安装目录为/var/mysql
解压mysql-boost-5.7.30.tar.gz
tar -zxvf mysql-boost-5.7.30.tar.gz
3 开始安装
进入安装包目录
cd /usr/local/mysql/mysql-5.7.30
创建cmake.sh文件
文件内容如下,其中,“DWITH_BOOST”的取值请根据实际的boost路径修改。
cmake . -DCMAKE_INSTALL_PREFIX=/var/mysql \ #安装目录
-DMYSQL_DATADIR=/data/mysql \ #数据目录
-DSYSCONFDIR=/etc/mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=