一、mysql/mariadb/make
1、源码包下载
地址:https://downloads.mariadb.org/mariadb/10.2.35/ 选择你要安装的版本;
下载源码包:mariadb-10.2.35.tar.gz包 //源码包比二进制包小好多73.9mb左右
复制
2、安装环境:
mariadb版本:10.2.35
centos版本:centos7.6.1810
官方提示:不要在生产环境中使用beta和alpha版本的数据库;他们的主要功能一般是用来测试和排错的,不稳定,我们选择10.2.35系列的stable数据库
复制
二、源码编译安装mariadb(官方建议使用cmake编译安装)
1、源码编译安装mariadb10.2.35的stable版本数据库:
//1、安装相关的软件依赖包:
[root@localhost ~]# yum install -y bison bison-devel zlib-devel libcurl-devel libarchive-devel
boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel
libevent-devel libaio-devel
Installed:
bison.x86_64 0:3.0.4-2.el7 bison-devel.x86_64 0:3.0.4-2.el7
boost-devel.x86_64 0:1.53.0-28.el7 cmake.x86_64 0:2.8.12.2-2.el7
gcc.x86_64 0:4.8.5-39.el7 gcc-c++.x86_64 0:4.8.5-39.el7
gnutls-devel.x86_64 0:3.3.29-9.el7_6 libaio-devel.x86_64 0:0.3.109-13.el7
libarchive-devel.x86_64 0:3.1.2-14.el7_7 libcurl-devel.x86_64 0:7.29.0-57.el7_8.1
libevent-devel.x86_64 0:2.0.21-4.el7 libxml2-devel.x86_64 0:2.9.1-6.el7.4
ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 openssl-devel.x86_64 1:1.0.2k-19.el7
zlib-devel.x86_64 0:1.2.7-18.el7
//2、准备用户和数据的存放目录
[root@localhost ~]# useradd -r -s /sbin/nologin mysql //创建mysql用户
[root@localhost ~]# mkdir -pv /data/mysqldb //创建数据存放目录
mkdir: created directory ‘/data’
mkdir: created directory ‘/data/mysqldb’
[root@localhost ~]# chown mysql.mysql /data/mysqldb //把mysqldb目录的所有者,改为mysql
[root@localhost ~]# ll /data/
drwxr-xr-x 2 mysql mysql 6 Nov 7 17:07 mysqldb
复制
2、解压并执行cmake
//3、解压、编译源码包;
[root@localhost ~]# tar -zxvf mariadb-10.2.35.tar.gz
[root@localhost ~]# cd mariadb-10.2.35/
[root@localhost mariadb-10.2.35]#cmake . \
-DCMAKE_INSTALL_PREFIX=/app/mysql \ //mysql安装程序的目录
-DMYSQL_DATADIR=/data/mysqldb/ \ //数据库数据存放目录
-DSYSCONFDIR=/etc \ //指定配置文件所在目录
-DMYSQL_UNIX_ADDR=/app/mysql/mysql.sock \ //指定soket文件目录;默认情况下是在/tmp/mysql.sock
//自定义目录后需要给该目录授予mysql用户读写执行权限
//执行如果出错,执行rm -f CMakeCache.txt文件
[root@localhost mariadb-10.2.35]# make && make install
[root@localhost mariadb-10.2.35]# make -j 4 && make install
//-j4 与m-j8的意思就是多线程运行,
(线程的意思请参考操作系统)即4个进程去竞争多核cpu,或者8个线程去竞争cpu
复制
3、cmake标准文件
cmake . \
-DCMAKE_INSTALL_PREFIX=/app/mysql \
-DMYSQL_DATADIR=/data/mysqldb/ \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
复制
4、环境变量及启动脚本配置:
//4、准备环境变量:
[root@localhost ~]# echo PATH=/app/mysql/bin:$PATH > /etc/profile.d/mysql.sh
[root@localhost ~]# . /etc/profile.d/mysql.sh
//5、生成数据库文件w
[root@localhost mariadb-10.2.35]# cd /app/mysql/
[root@localhost mysql]# scripts/mysql_install_db --datadir=/data/mysqldb/ --user=mysql
--basedir=/app/mysql //执行之前确定mysql用户创建完成
ok
//6、准备配置文件:
[root@localhost mysql]# cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
[root@localhost mysql]# vim /etc/my.cnf
socket = /app/mysql/mysql.sock //指定sock文件地址
//7、准备自启动脚本:
[root@localhost mysql]# cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
复制
5、启动服务:
//8、启动服务:
[root@localhost mysql]# chkconfig --add mysqld;service mysqld start
[root@localhost mysql]# systemctl start mysqld.service
Starting mysqld (via systemctl): Job for mysqld.service failed because the control process
exited with error code. See "systemctl status mysqld.service" and "journalctl -xe"
for details.
[FAILED]
//解决思路:查看日志:
[root@localhost mysqldb]# cat /data/mysqldb/localhost.localdomain.err
//查看日志报错;/app/mysql目录没有为用户mysql设置权限;
[ERROR] Can't start server : Bind on unix socket: Permission denied
[ERROR] Do you already have another mysqld server running on socket: /app/mysql/mysql.sock ?
//启动服务时会报错:因为没有读写权限:
//解决方案:
[root@localhost ~]# setfacl -R -m u:mysql:rwx /app/mysql/
//为/app/mysql目录设置mysql用户具有读写权限
[root@localhost mysqldb]# systemctl restart mysqld.service
[root@localhost mysqldb]# mysql
Server version: 10.2.35-MariaDB-log
MariaDB [(none)]> show variables like "basedir";
+---------------+------------+
| Variable_name | Value |
+---------------+------------+
| basedir | /app/mysql |
//9、设置开机自启动
[root@localhost ~]# cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@localhost ~]# chkconfig --add mysqld
[root@localhost ~]# chkconfig --list
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
复制
6、设置root账号口令
//10、为mysql数据库程序设置root账号口令:
[root@localhost ~]# mysql_secure_installation
复制
END
声明:JavaBBS论坛主要用于IT技术专题的交流学习,为开源技术爱好者提供广泛、权威的技术资料。若您在技术专题有更好的想法或者建议,欢迎交流!!!
推荐阅读
Recommended reading
JavaBBS
Git →
https://www.javabbs.cn/git
JavaBBS大数据
→
https://www.javabbs.cn
/dsj
JavaBBS云存储
→ https://www.javabbs.cn
/ycc
JavaBBS数据库
→
https://www.javabbs.cn
/sjk
JavaBBS云计算
→
https://www.javabbs.cn
/yjs
JavaBBSIT.Log
→
https://www.javabbs.cn
/itl
JavaBBSNginx
→
https://www.javabbs.cn
/ngx
JavaBBSzabbix
→
https://www.javabbs.cn
/zbx
JavaBBSJavaSE
→
https://www.javabbs.cn
/jse
JavaBBS社区文章
→
https://www.javabbs.cn
/bwz
JavaBBS社区资料
→
https://www.javabbs.cn
/bzl
文章转载自Java BBS,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
墨天轮个人数说知识点合集
JiekeXu
436次阅读
2025-04-01 15:56:03
MySQL数据库当前和历史事务分析
听见风的声音
425次阅读
2025-04-01 08:47:17
MySQL 生产实践-Update 二级索引导致的性能问题排查
chengang
387次阅读
2025-03-28 16:28:31
MySQL 9.3 正式 GA,我却大失所望,新特性亮点与隐忧并存?
JiekeXu
354次阅读
2025-04-15 23:49:58
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
352次阅读
2025-04-17 17:02:24
MySQL 30 周年庆!MySQL 8.4 认证免费考!这次是认真的。。。
严少安
338次阅读
2025-04-25 15:30:58
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
328次阅读
2025-04-15 14:48:05
云和恩墨杨明翰:安全生产系列之MySQL高危操作
墨天轮编辑部
307次阅读
2025-03-27 16:45:26
openHalo问世,全球首款基于PostgreSQL兼容MySQL协议的国产开源数据库
严少安
294次阅读
2025-04-07 12:14:29
【MySQL 30周年庆】MySQL 8.0 OCP考试限时免费!教你免费领考券
墨天轮小教习
251次阅读
2025-04-25 18:53:11
热门文章
原创|NO.B.0004|——|DevOps|Jenkins|Git|GitHub|Gitlab|分布式版本控制系统|
2021-05-19 3833浏览
原创|NO.A.0016|网络服务|——|LNMP|LNMP一键安装|实验部署lamp1.7|lnmp1.7|lnmpa1.7|
2021-03-29 2386浏览
NO.A.0015.Openvpn2.4.9服务端/客户端部署/本地client配置/连接成功测试
2020-12-27 2179浏览
原创|NO.B.0007|——|DevOps|Jenkins|CI/CD+K8S|部署Harbor重置密码|maven|Git|
2021-05-23 1591浏览
原创|NO.B.0006|——|DevOps|Jenkins.yum|Jenkins详解|
2021-05-22 983浏览
最新文章
原创|NO.B.0007|——|DevOps|Jenkins|CI/CD+K8S|部署Harbor重置密码|maven|Git|
2021-05-23 1591浏览
原创|NO.B.0006|——|DevOps|Jenkins.yum|Jenkins详解|
2021-05-22 983浏览
原创|NO.B.0005|——|DevOps|Jenkins|CI/CD|maven|JDK|nexus|安装及操作|故障解决|
2021-05-21 268浏览
原创|NO.B.0004|——|DevOps|Jenkins|Git|GitHub|Gitlab|分布式版本控制系统|
2021-05-19 3833浏览
原创|NO.A.0003|——|DevOps|Jenkins概述|Jenkins实战案例|排错|
2021-05-18 532浏览