1、环境准备
1.1 源码软件包下载
选择source code源码包,并且在下边选择适合你服务器的系统。
速度慢的话 可以复制下载链接去迅雷。
下载成功后可以通过 rz 上传到服务器上。
1.2 依赖安装
sudo yum -y install ncurses ncurses-devel
sudo yum -y pcre_devel openssl-devel gcc gcc-c++ make automake
yum install centos-release-scl -y
yum install devtoolset-10 -y
sudo yum -y install devtool-set10
# 1、ncurses 是一套编程库
# 它提供了一系列的函数以便使用者调用它们去生成基于文本的用户界面
# 2、cmake3是 CMake是一个跨平台的安装(编译)工具,
#可以用简单的语句来描述所有平台的安装(编译过程)
# 是一个跨平台的安装(编译)工具
# 可以用简单的语句来描述所有平台的安装(编译过程)。
#
#
# gcc pcre-devel openssl-devel gcc-c++
# 3、gcc 是由GNU开发的编程语言译器
# 4、pcre 是一个Perl库,包括 perl 兼容的正则表达式库。
# 5、openssl-devel OpenSSL是一个强大的安全套接字层密码库,
# Apache使用它加密HTTPS,OpenSSH使用它加密SSH,
# 6、gcc-c++ c语言编译器
1.3 解压软件包
把下载好的 cmake 以及mysql8 进行解压。
##sudo tar -vxf "压缩包" -C "解压路径"
sudo tar -vxf cmake-3.12.4.tar.gz -C package/
sudo tar -vxf mysql8.tar.gz -C package
1.4 配置编译cmake
进入cmake解压后的目录,执行./bootstrap 和 gmake和sudo gmake install。
之后安装完成后把cmake添加到环境变量中
./bootstrap
gmake
sudo gmake install
进入到解压后的bin目录下,查看当前路径,之后把路径追加到用户的./bashrc文件里
echo export PATH="/bin路径":$PATH > /用户家目录/.bashrc
例如:export PATH=/app/soft/package/cmake-3.12.4/bin:$PATH
source /用户家目录/.bashrc
查看cmake版本来验证是否安装成功
下图是正常安装的版本提示。
1.4 配置编译mysql8
进入到mysql8的解压目录,执行以下语句
相关配置请自行修改
sudo cmake . -DCMAKE_INSTALL_PREFIX=/app/mysql8/mysql_install \
-DMYSQL_DATADIR=/app/mysql8/mysql_data \
-DSYSCONFDIR=/app/mysql8/mysql_install/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DFORCE_INSOURCE_BUILD=1
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DMYSQL_UNIX_ADDR=/app/mysql8/mysql_install/tmp/mysql8.sock \
-DMYSQL_USER=apps \hi's
-DMYSQL_TCP_PORT=9014 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/app/soft/package/mysql-8.0.25/boost/ \
-DWITH_EMBEDDED_SERVER=OFF \
-DCMAKE_C_COMPILER=/opt/rh/devtoolset-10/root/usr/bin/gcc \
-DCMAKE_CXX_COMPILER=/opt/rh/devtoolset-10/root/usr/bin/g++
若编译无错,则进行 make && make install。
成功之后 检查安装的目录,如图下即为成功。
2、初始化数据库
./mysqld --defaults-file=/app/mysql8/mysql_install/etc/mysql8.cnf --initialize --user=app
./mysqld_safe --defaults-file=/app/mysql8/mysql_install/etc/mysql8.cnf --user=app &
之后 ps -ef | grep mysql
查看是否进程存在,存在的话登录即可,初始化的密码可以在error.log中看到。
之后登录即可。