源码安装mariadb

环境配置为:CentOS Linux release 8.1.1911 (Core)
这里以mariadb-10.2.32为例
Wget http://ftp.heanet.ie/mirrors/mariadb//mariadb-10.2.32/source/mariadb-10.2.32.tar.gz
建议下载到本地,通过工具传到系统中

1、检查环境:是否安装过数据库以及3306端口
源码安装mariadb
关闭防火墙
systemctl stop firewalld
关闭selinux
源码安装mariadb
源码安装mariadb
2、安装环境必要的包
yum install bison* zlib-devel libcurl-devel libarchive* boost- devel gcc gcC-C++ cmake ncurses-devel gnutls-devel libxml2-devel openssI- devel libevent-devel libaio-devel

创建mysql用户,家目录使用默认地址
源码安装mariadb
创建数据存放地
源码安装mariadb
更改所属组和所属用户
源码安装mariadb
3、Cmake编译安装
进入解压文件目录
源码安装mariadb
#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysqldb -DSYSCONFDIR=/etc -DWITHOUT_TOKUDB=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STPRAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWIYH_READLINE=1 -DWIYH_SSL=system -DVITH_ZLIB=system -DWITH_LOBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

解释一下:
-DCMAKE_INSTALL_PREFIX是指定安装的位置
-DMYSQL_DATADIR是指定MySQL的数据目录,安装目录和数据目录都可以自定义设置
-DSYSCONFDIR是指定配置文件所在的目录,一般都是/etc
-DWITHOUT_TOKUDB=1这个参数一般都要设置上,表示不安装tokudb引擎,后面那些参数都是可选的,可以加也可以不加
如果执行中发生了错误,运行命令 rm -f CMakeCache.txt 删除编译缓存,让指令重新执行,否则每次读取这个文件,命令修改正确也无法正确安装

直接安装会报一个CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage这个错误,是缺少make包,使用yum -y install make 安装一下

cmake过程中可能会出现这个警告,可以不用管,警告信息如下:
源码安装mariadb

使用make && make install编译安装,时间很长

源码安装mariadb

安装的时候出现错误,这是因为硬盘空间不足,给硬盘扩容,扩容后重新运行,错误信息如下:
源码安装mariadb

4、添加路径
源码安装mariadb

生成文件到/data/mysqldb指定用户为mysql
源码安装mariadb
源码安装mariadb
拷贝配置文件到/etc/my.cnf,拷贝服务软件到/etc/init.d***意路径)
源码安装mariadb
源码安装mariadb
启动程序,并查看3306端口是否开启
源码安装mariadb
使用mysql登录进入
源码安装mariadb
5、使用数据库脚本设置密码
源码安装mariadb
使用密码登录系统

源码安装mariadb