本文参考:http://chenzehe.iteye.com/blog/1266260  感谢原作者的分享!

首先安装/更新一些编译时会用到的基础包

[root@localhost local]# yum -y install gcc gcc-c++ make cmake ncurses ncurses-devel libxml2 libxml2-devel openssl-devel bison bison-devel

mariadb下载: ftp://mirrors.fe.up.pt/pub/mariadb/mariadb-10.1.20/source/mariadb-10.1.20.tar.gz

编译安装MariaDB10.1.x的版本需要gcc支持c++11,不懂的朋友可以看我另外一篇文章:源码安装GCC-4.9.2

1、创建mysql用户

[root@localhost local]# groupadd mysql 
[root@localhost local]# useradd -s /sbin/nologin -g mysql -M mysql #不允许mysql用户登录

2、创建数据存放目录

[root@localhost local]# mkdir -pv /data/dbdata

[root@localhost local]# mkdir -pv /data/innodb
[root@localhost local]# chown -R mysql.mysql /data/ #修改目录权限为mysql

3、安装mariadb

[root@localhost mariadb-10.1.19]#
cmake -DMYSQL_UNIX_ADDR=/tmp/mysql.sock\
-DSYSCONFDIR=/usr/local/mysql\
-DMYSQL_TCP_PORT=3306\
-DEXTRA_CHARSETS=all\
-DMYSQL_USER=mysql\
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql\
-DMYSQL_DATADIR=/data/dbdata\
-DWITH_XTRADB_STORAGE_ENGINE=1\
-DWITH_FEDERATEDX_STORAGE_ENGINE=1\
-DWITH_ARCHIVE_STORAGE_ENGINE=1\
-DWITH_MYISAM_STORAGE_ENGINE=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\
-DDEFAULT_CHARSET=utf8\
-DDEFAULT_COLLATION=utf8_general_ci
[root@localhost mariadb-10.1.19]# make
[root@localhost mariadb-10.1.19]# make install

到这里MariaDB已经算是安装上了,进行配置就可以使用了。本人在这里用的是多实例配置方法

1、初始化数据目录

  #把用到的工具添加到/usr/bin目录

[root@localhost mysql]# ln -s /usr/local/mysql/bin/mysqld_multi /usr/bin/mysqld_multi

[root@localhost mysql]#
ln -s /usr/local/mysql/scripts/mysql_install_db /usr/bin/mysql_install_db
[root@localhost mysql]#./scripts/mysql_install_db --datadir=/data/dbdata --user=mysql

2、配置多实例数据库配置文件

  a)修改my.cnf文件

[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
user = mysql # The MySQL server
[mysqld6033]
port =
#bind-address = 127.0.0.1
socket = /tmp/mysql.sock. datadir = /data/dbdata
pid-file = /data/dbdata/my.pid
skip-external-locking
skip-name-resolve
interactive_timeout=
wait_timeout= key_buffer = 384M
max_allowed_packet = 4M
table_cache =
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache =
query_cache_size = 64M
thread_concurrency =
max_connection =
max_connect_errors=
max_heap_table_size = 64M
open_files_limit=
slow_query_log =
long_query_time =
slow-query-log-file = /data/dbdata/slowquery.sql
log-bin = /data/dbdata/replication
server-id =
#master-host = 192.168.0.100
#master-user = repuser
#master-password = repuser123
#master-port =
#master-connect-retry =
log-slave-updates
skip-slave-start
character-set-server = utf8
collation_server = utf8_general_ci
master-info-file = /data/dbdata/master.info # Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /data/innodb
innodb_data_file_path = ibdata1:200M;ibdata2:200M;ibdata3:200M;ibdata4:200M;ibdata5:200M
innodb_log_group_home_dir = /data/innodb/
innodb_log_arch_dir = /data/innodb/
innodb_buffer_pool_size = 700M
innodb_additional_mem_pool_size = 256M
innodb_log_file_size = 256M
innodb_log_buffer_size = 32M
innodb_flush_log_at_trx_commit =
innodb_lock_wait_timeout = default_storage_engine = innodb

3、启动多实例数据库

#将/usr/local/mysql/bin加到$PATH环境变量里  
[root@localhost mysql]# vi /etc/profile export PATH=/usr/local/mysql/bin:$PATH  #插入到最后一行 #启动mysql
[root@localhost mysql]# mysqld_multi start 6033 –user  #6033是my.cnf里设置的端口

# 使用mysqld启动

cp support-files/mysql.server /etc/init.d/mysqld

 service mysqld start

 

在启动的时候会加载innodb,中途不能重启,否则会出现如下错误

151114 00:59:38  mysqld started

151114  0:59:38 [Warning] option 'thread_stack': unsigned value 126976 adjusted to 131072

InnoDB: No valid checkpoint found.

InnoDB: If this error appears when you are creating an InnoDB database,

InnoDB: the problem may be that during an earlier attempt you managed

InnoDB: to create the InnoDB data files, but log file creation failed.

InnoDB: If that is the case, please refer to

InnoDB: http://dev.mysql.com/doc/refman/5.0/en/error-creating-innodb.html

151114  0:59:38 [ERROR] Default storage engine (InnoDB) is not available

151114  0:59:38 [ERROR] Aborting

151114  0:59:38 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

151114 00:59:38  mysqld ended

删除innodb文件夹,重新启动就可以了

安装配置mariadb-10.1.19的更多相关文章

  1. centos安装配置mariadb

    CentOS7下使用yum安装MariaDB CentOS 6 或早期的版本中提供的是 MySQL 的服务器/客户端安装包,但 CentOS 7 已使用了 MariaDB 替代了默认的 MySQL.M ...

  2. CentOS系统使用yum安装配置MariaDB数据库

    http://www.server110.com/mariadb/201310/2670.html 1.在 /etc/yum.repos.d/ 下建立 MariaDB.repo,内容如下:[azure ...

  3. Linux安装配置Mariadb

    一.安装数据库Mariadb 参考:http://blog.51cto.com/12173069/2047746 从最新版本的linux系统开始,默认的是 Mariadb而不是mysql! 使用系统自 ...

  4. [原创]Debian9 安装配置MariaDB

    序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...

  5. 一网成擒全端涵盖,在不同架构(Intel x86/Apple m1 silicon)不同开发平台(Win10/Win11/Mac/Ubuntu)上安装配置Python3.10开发环境

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_200 时光荏苒,过隙白驹,即将进入2022年,著名敏捷开发语言Python也放出了3.10最终版,本次我们来展示一下在不同的系统和 ...

  6. Windowns Server 2016 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 + Mariadb 10.1.19 开发环境设置

    1.设置PHP 1.1.官网下载PHPhttp://windows.php.net/downloads/releases/php-7.1.0-nts-Win32-VC14-x86.zip 1.2.解压 ...

  7. Cenos6.6 升级 python3.5.2 安装配置 django1.10

    1 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件) yum groupinstall 'Development Tools' yum install zl ...

  8. CentOS7安装配置MariaDB(mysql)数据主从同步

    CentOS7安装MariaDB并配置主从同步 环境声明: 防火墙firewalld及SElinux均为关闭状态 主库节点:192.168.0.63 从库节点:192.168.0.64 配置主库节点: ...

  9. Linux下编译安装配置MariaDB数据库

    说明:操作系统:CentOS 6.6  64位MariaDB版本:mariadb-5.5.33aMariaDB数据库存放目录:/data/mysql准备:一.配置防火墙,开启3306端口vi /etc ...

  10. Windows10 下安装配置IIS + MySQL5.7.19 + nginx1.12.1 + php7.1.7

    环境: VMWare Workstation Player12 Windows10 Pro x64 一.安装系统 vmware 会采用 fast install 方式很快装完,无需配置什么. 二.配置 ...

随机推荐

  1. 大文本 mysql es

    大文本 mysql  es mysql  id longText  ---> es  longText mysqlId 大文本先入mysql,再同步至es: 文本查询逻辑交由es实现: mysq ...

  2. ipconfig /flushdns

    C:\Users\sas>ipconfig /flushdns Windows IP 配置 已成功刷新 DNS 解析缓存. C:\Users\sas>ipconfig --help 错误: ...

  3. Junit 3.8.1 源码分析之两个接口

    1. Junit源码文件说明 runner framework:整体框架; extensions:可以对程序进行扩展; textui:JUnit运行时的入口程序以及程序结果的呈现方式; awtui:J ...

  4. CListCtrl控件使用方法总结

    今天第一次用CListCtrl控件,遇到不少问题,查了许多资料,现将用到的一些东西总结如下: 以下未经说明,listctrl默认view 风格为report 相关类及处理函数 MFC:CListCtr ...

  5. android推送,极光推送

    android中简单易用的消息推送方式之中的一个 -------> 极光推送 首先来介绍一下极光推送. 极光推送:英文简称 JPush,是一个面向普通开发人员免费.开放的第三方消息推送服务,我们 ...

  6. 前端 javascript 定时器

    setInterval("执行的代码",间隔时间)毫秒单位 每5秒一次会提示出弹框 <!DOCTYPE html> <html lang="en&quo ...

  7. a=a+1背后的内存模型和CPU高速缓存

    学过JAVA的人都知道,程序运行过程中的临时数据,都是从外部存储设备调入内存(物理内存)中,再进行读写操作的.而计算机在执行程序时,对程序的每条指令都是在CPU中执行的,而指令的执行,势必涉及到对数据 ...

  8. Linux kernel 'mq_notify'内存错误引用漏洞

    更新系统内核即可!参看http://www.cnblogs.com/peteremperor/p/9065998.html

  9. 控制台应用程序中添加对MFC的支持

    在windows控制台应用程序中,肯能会想使用一些MFC中的类,如CStringArray等,通过下面两步简单的设置可以添加对MFC的支持: 1.右击工程名 -> References 选择 A ...

  10. node+express+http-proxy-middleware做代理

    最近,不赶着做项目,于是想着怎样做公司的前后端分离,这个时候想到了nodejs,于是打算今天做一个代理的demo,其实代码很简单,但是一直卡在一个地方,现在问题解决了,贴上代码和截图. html &l ...