mariadb源码编译安装及多实例
准备文件源文件/app/mariadb-10.2.12.tar.gz
cd /app/
tar xf mariadb-10.2.12.tar.gz
cd mariadb-10.2.12
mkdir /mysqldb
cmake . \
-DCMAKE_INSTALL_PREFIX=/app/mysql \ 主程序目录
-DMYSQL_DATADIR=/mysqldb/ \ 数据库目录
-DSYSCONFDIR=/etc \ 配置文件目录
-DMYSQL_USER=mysql \ 指定的所属用户
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DMYSQL_UNIX_ADDR=/app/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1
安装development tools,gnutls-devel,ncurses-devel, cmake,ibaio-devel,openssl-devel,libxml2-devel组件,减少报错
发生错误,需要删除文件夹,重新解压,再安装
make & make install
echo 'PATH=/app/mysql/bin/:$PATH' > /etc/profile.d/mysql.sh 将脚本路径写入
/app/mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3306/data --user=mysql 制作数据库,指定mysql的用户
cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf 重新制作配置文件,以huge.cnf模板文件修改
vim /etc/my.cnf
datadir=/mysqldb/3306/data 在[mysqld]下面添加行,位置不要错
cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chown -R mysql.mysql /mysqldb/3306/
chgrp -R mysql /app/mysql/
chmod 775 /app/mysql/ 重点!! 因为启动服务要在路径下创建sock为文件,如果没有权限会报错,启动失败
第二个实例安装:
/app/mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3307/data --user=mysql 安装数据库
cp /etc/my.cnf /mysqldb/3307
vim /mysqldb/3307/my.cnf 制作配置文件
将所有的3306改为3307
[mysql_safe] 在文件最下面增加日志文件路径
log-error=/mysqldb/3307/mariadb.log
pid-file=/mysqldb/3307/mariadb.pid
vim /mysql/3307/mysqld 添加启动脚本,修改其中的路径项
#!/bin/bash
rt=
mysql_user="root"
mysql_pwd=""
cmd_path="/app/mysql/bin"
mysql_basedir="/mysqldb"
mysql_sock="${mysql_basedir}/${port}/mysql.sock" function_start_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "Starting MySQL...\n"
${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/my.cnf &> /dev/null &
else
printf "MySQL is running...\n"
exit
fi
} function_stop_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "MySQL is stopped...\n"
exit
else
printf "Stopping MySQL..\n"
${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
fi
} function_restart_mysql()
{
printf "Restarting MySQL...\n"
if [ ! -e "$mysql_sock" ];then
function_start_mysql
exit
fi
function_stop_mysql
sleep
function_start_mysql
} case $ in
start)
function_start_mysql
;;
stop)
function_stop_mysql
;;
restart)
function_restart_mysql
;;
*)
printf "Usage: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}\n"
esac
chmod 700 /mysqldb/3307/mysqld
/mysqldb/3307/mysqld start
失败/
原因是/mysqldb/3307所属组为root,mysql用户没有写权限
解决:chown -R mysql.mysql /mysqldb/
再启动成功
在不能启动的时候可以手动输入路径启动查看项目在哪一步出问题
/app/mysql/bin/mysqld_safe --defaults-file=/mysqldb/3307/my.cnf
第三个实例的安装:
/app/mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3308/data --user=mysql 制作数据库文件
chown -R mysql.mysql /mysqldb/
cp /mysqldb/3307/{mysqld,my.cnf} /mysqldb/3308/
vim mysqld 修改端口号为3308
vim my.cnf 修改端口号为3308
/mysqldb/3308/mysqld start
在my.cnf里的client项里可以添加自己登陆的账号密码,可以免账户密码登陆
user=root
password=centos
mariadb源码编译安装及多实例的更多相关文章
- 源码编译安装MySQL8.0
源码编译安装MySQL8.0 0.前期准备条件 查看linux的版本 [root@mysql etc]# cat /etc/redhat-release CentOS Linux release 7. ...
- CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境
CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境 什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/ ...
- Httpd服务进阶知识-LAMP源码编译安装
Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理 ...
- Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置
文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...
- centos7源码编译安装lamp/lnmp
centos7源码编译安装lamp/lnmp 进程:是包工头(相当于是个门,只管开门关门,不管门内的事儿) 线程:是各种工种(cpu调度的是线程) 进程 是一件事情, 线程 是 同一个时间范围内 同时 ...
- 源码编译安装MySQL8.0.20
1 概述 本文章主要讲述了如何从源码编译安装MySQL社区版8.0.20,首先会介绍一些编译安装的相关知识,然后开始编译安装 2 源码编译安装的相关知识 2.1 make与configure make ...
- WordPress安装篇(5):源码编译安装LNMP并部署WordPress
与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...
- Mysql5.7.34 数据库源码编译安装
Mysql 数据库源码编译安装 MySQL是一个关系型数据库管理系统,关系型数据库是将数据保存在不同的表中,而非将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性.由于其体积小.速度快.总体拥 ...
- SSH/SSL 源码编译安装简易操作说明
环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...
随机推荐
- 封装RateLimiter 令牌桶算法
自定义注解封装RateLimiter.实例: @RequestMapping("/myOrder") @ExtRateLimiter(value = 10.0, timeOut = ...
- pat1052. Linked List Sorting (25)
1052. Linked List Sorting (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue A ...
- 学习JVM-GC原理
1. 前言 Java和C++之间显著的一个区别就是对内存的管理.和C++把内存管理的权利赋予给开发人员的方式不同,Java拥有一套自动的内存回收系统(Garbage Collection,GC)简称G ...
- 启动和停止GlassFish Server
您可以使用NetBeans IDE或命令行启动和停止GlassFish Server. 使用NetBeans IDE启动GlassFish Server 单击“服务”选项卡. 展开服务器. 右键单 ...
- mysql-标识列(自增长)
标识列 /* 又称为自增长列 含义:可以不用手动的插入值,系统提供默认的序列值 特点: 1.标识列必须和主键搭配吗?不一定,但要求是一个key,key可以是主键.唯一键.甚至外键(没什么意义) 2.一 ...
- Mybatis通用Mapper(转)
转自:http://blog.csdn.net/isea533/article/details/41457529 极其方便的使用Mybatis单表的增删改查 项目地址:http://git.oschi ...
- Python开发环境Wing IDE的Blender的Python代码调试技巧
Wing IDE是一个集成开发环境,可用于开发.测试和调试为Blender编写的Python代码,Blender是一个开源的3 D内容创建系统.Wing IDE提供自动完成.调用提示.强大的调试器.以 ...
- android错误整理
1.Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientat ...
- u-boot分析(八)----串口初始化
u-boot分析(八) 上篇博文我们按照210的启动流程,分析到了内存初始化,今天我们继续按照u-boot的启动流程对串口的初始化进行分析. 今天我们会用到的文档: 1. 2440芯片手 ...
- Azure IOT 设备固件更新技巧,看这一篇就够了
嫌长不看版 今天为大家准备的硬菜是:在 Azure IoT 中心创建 Node.js 控制台应用,进行端到端模拟固件更新,为基于 Intel Edison 的设备安装新版固件的流程.通过创建模拟设备应 ...