说明:
操作系统:CentOS 6.6  64位
MariaDB版本:mariadb-5.5.33a
MariaDB数据库存放目录:/data/mysql
准备:
一、配置防火墙,开启3306端口
vi
/etc/sysconfig/iptables  #编辑
-A RH-Firewall-1-INPUT -m state --state NEW -m
tcp -p tcp --dport 3306 -j ACCEPT 
#允许3306端口通过防火墙
添加好之后防火墙规则如下所示:
**********************************************************************************
#
Firewall configuration written by system-config-securitylevel
# Manual
customization of this file is not recommended.
*filter
:INPUT ACCEPT
[0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT -
[0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j
RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A
RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT
-p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A
RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A
RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A
RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A
RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A
RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j
ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306
-j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with
icmp-host-prohibited
COMMIT
**********************************************************************************
/etc/init.d/iptables
restart #最后重启防火墙使配置生效
二、关闭SELINUX
vi
/etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted
#注释掉
SELINUX=disabled #增加
:wq!  #保存退出
shutdown -r now #重启系统
三 、系统约定
MariaDB安装包存放位置:/usr/local/src
MariaDB编译安装位置:/usr/local/mysql
四、下载软件包
1、下载MariaDB
http://mirrors.scie.in/mariadb/mariadb-5.5.33a/kvm-tarbake-jaunty-x86/mariadb-5.5.33a.tar.gz
2、下载cmake(MariaDB编译工具)
http://www.cmake.org/files/v2.8/cmake-2.8.12.1.tar.gz
下载以上两个软件,并上传到/usr/local/src目录
五、安装编译工具及库文件(使用CentOS
yum命令安装,安装的比较多,方便以后编译安装php、nginx等)
yum  -y install make apr* autoconf
automake curl curl-devel gcc gcc-c++ gtk+-devel zlib-devel openssl openssl-devel
pcre-devel gd kernel keyutils patch perl kernel-headers compat*  cpp glibc
libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel
krb5-devel  libXpm* freetype freetype-devel freetype* fontconfig
fontconfig-devel  libjpeg* libpng* php-common php-gd gettext gettext-devel
ncurses* libtool* libxml2 libxml2-devel patch policycoreutils
bison
六、安装cmake
cd /usr/local/src
tar zxvf
cmake-2.8.12.1.tar.gz
cd cmake-2.8.12.1
./configure
make   #编译
make
install   #安装
七、安装MariaDB
groupadd mysql 
#添加MariaDB数据库安装用户组mysql
useradd -g mysql mysql -s /bin/false 
#创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
mkdir -p /data/mysql 
#创建MariaDB数据库存放目录
chown -R mysql:mysql /data/mysql  
#设置MariaDB数据库目录权限
mkdir -p /usr/local/mysql #创建MariaDB安装目录
cd
/usr/local/src
tar zxvf mariadb-5.5.33a.tar.gz  #解压
cd mariadb-5.5.33a
#进入安装目录
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DMYSQL_DATADIR=/data/mysql  -DSYSCONFDIR=/etc
#配置
make #编译
make
install  #安装
cd /usr/local/mysql
cp ./support-files/my-huge.cnf 
/etc/my.cnf   #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
vi /etc/my.cnf  
#编辑配置文件,在 [mysqld] 部分增加
datadir = /data/mysql 
#添加MariaDB数据库路径
./scripts/mysql_install_db --user=mysql 
#生成MariaDB系统数据库
cp ./support-files/mysql.server  /etc/rc.d/init.d/mysqld 
#把MariaDB加入系统启动
chmod 755 /etc/init.d/mysqld   #增加执行权限
chkconfig mysqld
on  #加入开机启动
vi /etc/rc.d/init.d/mysqld  #编辑
basedir = /usr/local/mysql  
#MariaDB程序安装路径
datadir = /data/mysql  #MariaDB数据库存放目录
service mysqld
start  #启动
vi /etc/profile   #把MariaDB服务加入系统环境变量:在最后添加下面这一行
export
PATH=$PATH:/usr/local/mysql/bin
下面这两行把MariaDB的库文件链接到系统默认的位置,这样在编译类似PHP等软件时可以不用指定MariaDB的库文件地址。
ln
-s /usr/local/mysql/lib/mysql         /usr/lib/mysql
ln -s
/usr/local/mysql/include/mysql   /usr/include/mysql
mysql_secure_installation   
#设置MariaDB数据库root账号密码
根据提示按Y
回车输入2次密码
或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password "123456"
#修改密码
service mysqld restart  #重启
mysql -u root -p 
#输入上面设置的root密码登录到mariadb控制台;

Linux下编译安装配置MariaDB数据库的更多相关文章

  1. Linux下PHP安装配置MongoDB数据库连接扩展

    Web服务器: IP地址:192.168.21.127 PHP安装路径:/usr/local/php 实现目的: 安装PHP的MongoDB数据库扩展,通过PHP程序连接MongoDB数据库 具体操作 ...

  2. linux安装软件的几种方法----linux下编译安装软件的一般步骤

    linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...

  3. Linux下编译安装Apache Http Server

    Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...

  4. Linux下编译安装qemu和libvirt

    目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3  ...

  5. Linux下编译安装qemu和libvirt【转】

    转自:http://www.cnblogs.com/findumars/p/5679742.html 目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 ...

  6. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  7. linux下编译安装vim7.4并安装clang_complete插件

    linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...

  8. linux下编译安装curl

    linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...

  9. linux下编译安装boost库

    linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...

随机推荐

  1. VMware中Ubuntu18配置静态IP地址

    1. VMware:编辑 -> 虚拟网络编辑器 -> 更改设置 2. 取消选中:使用本地DHCP服务将IP地址分配给虚拟机,并记住子网ip 3. 点击NAT设置,记住网关地址 正常情况下V ...

  2. python基础语法_python中的布尔类型详解

    转自:http://www.cnblogs.com/521yywzyzhc/p/6264885.html   我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是 ...

  3. 学多少年才算“精通Java”?

    我从毕业做程序员就开始用 Java,到现在已经工作快 20 年了.减去我做手游用 C++.Lua 的几年,再减去后来转管理写代码少的时间,我真正写 Java 代码的时间至少也在 10 年以上. 如果你 ...

  4. 03 CSS介绍

    03.CSS介绍 层叠样式表:就是给HTML标签添加养的,让他变的更加的好看 注释: /*单行注释*//*多行注释1多行注释2多行注释3*/通常我们在写CSS样式的时候也会用注释来划定样式区域(因为H ...

  5. 36、python并发编程之多线程(操作篇)

    目录: 一 threading模块介绍 二 开启线程的两种方式 三 在一个进程下开启多个线程与在一个进程下开启多个子进程的区别 四 练习 五 线程相关的其他方法 六 守护线程 七 Python GIL ...

  6. MyBatis功能点一应用:二级缓存整合redis

    Mybatis提供了默认的cache实现PerpetualCache,那为什么还要整合第三方的框架redis?因为Mybatis提供的cache实现为单机版,无法实现分布式存储(即本机存储的数据,其他 ...

  7. Python 基于 TCP 传输协议的网络通信实现

    1.基础概念 什么是网络编程? 指在网络环境中,如何实现不在同一物理位置中的计算机之间进行数据通信 如果要保证数据通信顺利完成,则需要先了解如下几个概念: 1.1 协议 不同计算机内的进程之间进行数据 ...

  8. 【Java8新特性】Optional类在处理空值判断场景的应用 回避空指针异常 编写健壮的应用程序

    一.序言 空值异常是应用运行时常见的异常,传统方式为了编写健壮的应用,常常使用多层嵌套逻辑判断回避空指针异常.Java8新特性之Optional为此类问题提供了优雅的解决方式. 广大程序员朋友对空值异 ...

  9. Java基础问题

    基础问题 谈谈你对面向对象的理解 -- 结合场景 为何要使用对象编程? 可重复利用,方便拓展 面向对象有三大特征:封装.继承和多态 封装:为什么要封装?可以使类的成员(数据和行为)有选择性的暴露,这里 ...

  10. CobaltStrike逆向学习系列(10):TeamServer 启动流程分析

    这是[信安成长计划]的第 10 篇文章 关注微信公众号[信安成长计划] 0x00 目录 0x01 基本校验与解析 0x02 初始化 0x03 启动 Listeners 在之前的分析中,都是针对 Cob ...