MongoDB配置文件选项介绍
MongoDB配置文件 Mongod在启动时可以通过-f指定一个配置文件(此配置文件中配置了必要的运行参数),或也可以通过mongos命令行选项启动。但是一般情况使用配置文件管理的mongod或mongos更容易,尤其是对于大型部署来说,因为可以向配置文件添加注释来解释服务器的设置。 如果使用安装包安装MongoDB默认就会使用一个配置文件(/etc/mon……
MongoDB WiredTiger存储引擎原理
MongoDB 3.2 把 WiredTiger 设置为了默认的存储引擎(之前版本使用 MMAPV1 存储引擎),最近通过阅读 WiredTiger 源代码(在不了解其内部实现的情况下,读代码难度相当大,代码量太大,强烈建议官方多出些介绍文章),理清了 WiredTiger 的大致原理,并简单总结,不保证内容都是正确的,如有问题请指出,欢迎讨论交流。 按照 ……
MongoDB数据备份和恢复工具详解
一、MongoDB备份与恢复 不管是什么数据库,数据备份其实是一个基本操作。下面就说说mongodb如何备份数据,以及简单说一下mongodump在线备份是怎么保证数据的一致性的。 最简单的物理复制数据进行备份,不用多做解释,在创建MongoDB服务的时候,通过--dbpath指定目录就是存放mongdb数据库文件目录,我们可以通过复制这些文件实现数据库的冷……
MongoDB 3.2加密技术测试
一、简介 MongoDB3.2为静态数据加密引入了新的选择,本文将对这些内容进行深入探讨:加密需求增长的动力、MongoDB的数据加密功能以及新加密存储引擎(Encrypted Storage Engine)的性能特点。 由于近年来攻击事件有所增加,一系列的数据泄露事件导致一些知名度较高的品牌受到了负面影响,如今数据安全已成为重中之重。比如在2015年,在大……
MongoDB是如何实现事务的ACID?
MongoDB ACID事务支持 这里要有一定的关系型数据库的事务的概念,不然不一定能理解的了这里说的事务概念。 下面说一说MongoDB的事务支持,这里可能会有疑惑,前面我们在介绍MongoDB时,说MongoDB是一个NoSQL数据库,不支持事务。这里又介绍MongoDB的事务。这里要说明一下MongoDB的事务支持跟关系型数据库的事务支持是两码事,如果……
Zabbix 3使用percona-zabbix-templates监控MySQL
因为Zabbix自带的MySQL监控没有提供可以直接使用的Key,所以一般不采用,业界的同学们都使用Percona Monitoring Plugins 监控MySQL的方式。 1)MySQL客户端需要的系统环境 percona监控zabbix的脚本是使用php写的,所以需要准备好php运行环境,这里直接用yum安装就可以满足要求了: ……
MariaDB Galera Cluster Deploy
MariaDB Galera Cluster Galera Cluster是MariaDB的一个双活多主集群,其可以使得MariDB的所有节点保持同步,Galera为MariaDB提供了同步复制(相对于原生的异步复制),因此其可以保证HA,且其当前仅支持XtraDB/InnoDB存储引擎(扩展支持MyISAM),并且只可在Linux下使用。 从MariaDB……
MySQL多实例安装配置
MySQL进行多实例配置再生产环境中非常常见,比如一些高配置数据库服务器,就会跑多个MySQL实例,借助多实例绑定的方式提高服务器的整体资源利用率。另外在MySQL5.7以上版本还不支持多源复制时,当你有多个主时,也可以使用一台服务器开多个MySQL实例做从。 MySQL多实例配置一般有两种方式: 第一种:基于mysqld_multi来实现。mysqld_m……
MongoDB认证与授权详解
一、MongoDB权限控制系统简介 对于数据库的管理,一般 DBA 都不会给开发过大的权限,避免如开发建立索引不加 [backgroud:true] 导致线上操作巨卡、误删除业务库或集合数据、对集合每个字段添加单列索引导致容量急剧膨胀,还有各种突破认知范围的误操作。由于 MongoDB 早期版本自身对权限控制极其简单粗暴,一般 DBA 都是授予开发最高权限。……
MySQL 5.7多方式安装
一、MySQL RELEASE FORMAT MySQL官方发行版本一般就有以下几种(官方下载地址),其实大部分软件的发行版大多数情况下也是以下几种,所以只要明白一个软件的发行方式就OK。另外下载MySQL任何包都应该去官方网站下载,记住一定在官方下载且最好直接下载(不使用第三方工具),并且最好下载完成后经过MD5校验。因为MySQL是开源的,所以使用第三方……
MySQL 5.7:生成列(Generated Column)
生成列(Generated Column) 什么叫计算列呢,简单来说就是某一列的值是通过别的列计算得来,例如a列值为1,b列值为2,c列不需要操作手动插入,定义为a + b的结果为c的值,那么c就是计算列,是通过别的列计算得来,下面我们进行例子说明: 在MySQL 5.7之前的版本中,要实现这样的效果要利用触发器来完成,以下是以前的实现过程: ……
Redis安全性配置
本文档从以下几点提供了关于Redis安全主题的介绍:Redis提供的访问控制,代码安全问题,通过外部的恶意输入触发的攻击和其它类似的主题也包含在内。 一、Redis常规安全模式 Redis被设计成仅有可信环境下的可信用户才可以访问。这意味着将Redis实例直接暴露在网络上或者让不可信用户可以直接访问Redis的tcp端口或Unix套接字,是不安全的。 正常情……