- 博客(331)
- 资源 (3)
- 收藏
- 关注
转载 MongoDB 入门篇
MongoDB 入门篇分类: NoSQL,故障解决1.1 数据库管理系统 在了解MongoDB之前需要先了解先数据库管理系统1.1.1 什么是数据? 数据(英语:data),是指未经过处理的原始记录。 一般而言,数据缺乏组织及分类,无法明确的表达事物代表的意义,它可能是一堆的杂志、一大叠的报纸、数种的开会记录或是整本病人的病历纪录。数据描述事物的符号记录,是...
2019-02-21 17:06:02 275
转载 MongoDB的备份与恢复与DB监控
MongoDB的备份与恢复分类: NoSQL,故障解决,其他1.1 MongoDB的常用命令mongoexport / mongoimportmongodump / mongorestore 有以上两组命令在备份与恢复中进行使用。1.1.1 导出工具mongoexportMongodb中的mongoexport工具可以把一个collection导出成JSON格...
2019-02-21 16:55:31 351
转载 MongoDB 分片集群技术
MongoDB 分片集群技术分类: NoSQL,其他 在了解分片集群之前,务必要先了解复制集技术! 1.1 MongoDB复制集简介 一组Mongodb复制集,就是一组mongod进程,这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性,这是生产部署的基础。1.1.1 复制集的目的 保证数据在生产部署时的冗余和可靠性,通过在不同的机器上保存副本来保证数据...
2019-02-21 16:33:26 316
原创 mongo 一次oplog损坏事故,重建oplog
一、集群环境 3个mongos、3个mongo config、3个shard(每个分片各三台,一主两从) 二、事故描述 次数1:某次活动,由于并发太多,导致mongod连接数太多,内存消耗太多(每个连接上来会分配一定的内存空间),导致整体query慢,产生大量堆积(应用报超时等错误)。直接重启mongod,重启前未stepDown,其中一个从节点2发现错误。临时剔除节点...
2019-02-19 16:24:58 1277
转载 高性能Mysql 入门到放弃 之 B+-Tree (与B-Tree以及Binary Tree的对比解析)
问题由来:索引:大家平常说的还有用的索引,如果没特别标明或者声明都是B-Tree索引,大多数Mysql引擎都支持这种索引,而Msyql常用引擎InnoDB等常为B+-Tree。开始解决问题:预备知识磁盘IO· 系统读取磁盘是将磁盘的基本单位---磁盘块(Block)读取出来。位一同一磁盘块的数据会被一次性读取出来。磁盘读取IO是机械动作,时间大概为内存读取的十万多倍。所以磁盘I...
2019-02-19 10:08:35 241
转载 mysql之show engine innodb status解读
innodb存储引擎在show engine innodb status(老版本对应的是show innodb status)输出中,显示除了大量的内部信息,它输出就是一个单独的字符串,没有行和列,内容分为很多小段,每一段对应innodb存储引擎不同部分的信息,其中有一些信息对于innodb开发者来说非常有用,但是,许多信息,如果你尝试去理解,并且应用到高性能innodb调优的时候,你会发现它...
2019-01-17 17:10:43 220
转载 Navicat Premium 12试用期的破解方法
来源网址:https://www.jianshu.com/p/42a33b0dda9c1、按步骤安装Navicat Premium,如果没有可以去官网下载:http://www.navicat.com.cn/download/navicat-premium2、安装好后下载激活文件:https://pan.baidu.com/s/1kVgTd6R 提取密码:t1yp3、下载好后解压文件,可以...
2019-01-03 11:21:18 1187
转载 MongoDB 副本集的原理、搭建、应用
MongoDB 副本集的原理、搭建、应用概念: 在了解了这篇文章之后,可以进行该篇文章的说明和测试。MongoDB 副本集(Replica Set)是有自动故障恢复功能的主从集群,有一个Primary节点和一个或多个Secondary节点组成。类似于MySQL的MMM架构。更多关于副本集的介绍请见官网。也可以在google、baidu上查阅。 副本集中数据同步过程:...
2018-12-24 18:14:21 363
转载 MongoDB 分片的原理、搭建、应用
MongoDB 分片的原理、搭建、应用一、概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程。将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载。基本思想就是将集合切成小块,这些块分散到若干片里,每个片只负责总数据的一部分,最后通过一个均衡器来对各个分片进行均衡(数据迁移)。通过一个名为mongos的路由进程进行操作,...
2018-12-24 18:11:00 439
转载 MYSQL-锁机制
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种 供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个 角度来说,锁对数据库而言显得尤其重要,也更加复杂。本章我们着重讨论MySQL锁机制的特点,常见的锁问题,以及解决MyS...
2018-08-10 16:18:23 409
原创 Mysql怎么判断繁忙,innodb的主要参数,checkpoint机制,show engine innodb status
show engine innodb status G四个参数能反应出来什么Checkpoint详解引子check point是做什么的作用Checkpoint所做的事情checkpoint分类checkpoint的具体解释Sharp Checkpoint完全检查点Fuzzy Checkpoint模糊检查点Fuzzy checkpoint工作过程Fuzzy Checkpoint又分为4种1...
2018-07-13 15:45:36 1520 2
原创 mysql innodb架构
innodb架构主要由:后台线程、内存池、物理文件组成,此处附图一张:一、后台线程1)Master ThreadMaster Thread 是一个非常核心的线程,主要负责将缓存池中的数据异步刷新到磁盘,保证数据的一致性,包括脏页数据、合并插入缓存、undo页的回收等。2)IO Thread InnoDB 存储引擎大量使用了AIO来处理IO请求,这样可以提高数据库的性能。IO Thread主要负责这...
2018-07-07 21:48:10 757
转载 MySQL基于MHA高可用理论篇
MySQL高可用系统MySQL高可用,顾名思义就是当MySQL主机或服务发生任何故障时能够立马有其他主机顶替其工作,并且最低要求是要保证数据一致性。因此,对于一个MySQL高可用系统需要达到的目标有以下几点:(1)、数据一致性保证这个是最基本的同时也是前提,如果主备的数据不一致,那么切换就无法进行,当然这里的一致性也是一个相对的,但是要做到最终一致性。(2)、故障快速切换,当master故障时这里...
2018-07-07 21:30:21 266
转载 mysql状态查看 QPS/TPS/缓存命中率查看
运行中的mysql状态查看 对正在运行的mysql进行监控,其中一个方式就是查看mysql运行状态。 (1)QPS(每秒Query量) QPS = Questions(or Queries) / seconds mysql > show global status like 'Question%'; (2)TPS(每秒事务量) TPS = (Com_commit + Com_roll...
2018-07-07 15:29:37 371
转载 提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意) 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,...
2018-07-06 18:32:17 295
转载 数据库事务的四大特性以及事务的隔离级别
数据库事务的四大特性以及事务的隔离级别 本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则...
2018-07-06 18:07:34 148
转载 MySQL 数据库下DELETE、UPDATE 子查询的锁机制解析与优化
在日常的工作之中,数据库开发与维护人员避免不了与 in/exists、not in/not exists 子查询打交道,接触过的人可能知道 in/exists、not in/not exists 相关子查询会使 SELECT 查询变慢,没有 join 连接效率,却不知道 DELETE、UPDATE 下的子查询却可能导致更严重的锁问题,直接导致 MySQL InnoDB 行锁机制失效,锁升级,严...
2018-07-06 17:56:22 3651
原创 Mysql_innobackupex全备份+binlog进行恢复(可用)
准备备份文件:全备份+binlog进行恢复:配置好MySQL解压MySQL的安装文件,把安装文件的bin目录配置到环境变量文件里面把/usr/local/mysql/bin添加到PATH路径下。[root@dzfptest ~]# cat /root/.bash_profile # .bash_profile# Get the aliases and functionsif [ -f ~/.b...
2018-07-05 12:39:51 772
原创 MySQL生产环境_(安装)_搭建主从(rpm方式安装)
1:安装MySQLmysql官网下载:http://dev.mysql.com/downloads/mysql/ 但如果你的下载网速不好的话也可以点下面的链接下载自己想要的版本 http://mirrors.sohu.com/mysql/MySQL-5.7/ 我用的是(CentOs7.4)下载的是: mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar文件1. 检查...
2018-07-02 09:32:22 830
原创 centos7.4用rpm安装MySQL5.7.22报错安装包冲突
[root@bogon ~]# rpm -ivh mysql*.rpm --nodepswarning: mysql57-community-release-el7-9.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEYPreparing... ###########...
2018-07-02 09:27:01 2081
原创 crentso7.4+rpm方式安装MySQL5.7.22报错:安装冲突conflicts
安装MySQL报错:[root@bogon ~]# rpm -ivh mysql*.rpm --nodepswarning: mysql57-community-release-el7-9.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEYPreparing... #...
2018-07-01 19:24:46 1090
转载 MySQL存储过程中的3种循环
在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环。还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体介绍了。这几个循环语句的格式如下:WHILE……DO……END WHILEREPEAT……UNTIL END REPEATLOOP……END LOOPGOTO。 下面首先使用第一种循环编写一个...
2018-06-06 12:29:21 1854
转载 MySQL的 SQL逻辑查询语句执行顺序
最后,这篇文章是我读《MySQL技术内幕:SQL编程》而总结出来的,对于书中有的东西讲的比较“粗”,可能是我的水平没有达到人家作者要求的水平,导致阅读起来,不是很舒服,所以,这篇博文,将会非常细致的进行总结。只有你想不到,没有你做不到。能看懂么?先来一段伪代码,首先你能看懂么?SELECT DISTINCT <select_list>FROM <left_table>&...
2018-06-06 12:26:02 246
转载 mysql_连接故障 Too many open files in system
一:问题描述收到邮件报警,说一台服务器的mysql连不上了。我手动试了下,连接半个多小时了,mysql一直连接不上,且未反馈错误信息。错误日志报错:161128 9:50:18 [ERROR] Error in accept: Too many open files in system161128 9:54:34 [ERROR] Error in accept: Too many open fil...
2018-06-06 10:56:04 3488
转载 mysql中文乱码解决方案
一 问题描述当往表里插入中文数据时,报错:mysql> insert into t(id,nam) values(1,'丹丹');ERROR 1366 (HY000): Incorrect string value:'\xE4\xB8\xB9\xE4\xB8\xB9' for column 'nam' at row 1二 出错原因该表或者列的字符集与当前连接的字符集不同导致。[sql] vi...
2018-06-05 18:34:48 191
转载 MySQL 数据恢复bin2log_闪回原理与实战
DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚。传统恢复方法是利用备份重搭实例,再应用去除错误sql后的binlog来恢复数据。此法费时费力,甚至需要停机维护,并不适合快速回滚。也有团队利用LVM快照来缩短恢复时间,但快照的缺点是会影响mysql的性能。MySQL闪回(flashback)利用binlog直接进行回滚,能快速恢复且不用停机。本文将介绍闪回原...
2018-06-05 18:20:59 801
转载 MHA+keepalive高可用环境搭建
MHA(Master HighAvailability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到在0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数...
2018-06-05 18:05:45 419
转载 MySQL源代码阅读调试 - 1. 环境搭建
最近需要阅读下MySQL源代码,所以写这系列博客记录下。 搭调试环境真是比较蛋疼,公司基本Java开发,这里回到C++。。。 用了两天晚上,尝试了VS2013,Eclipse CDT,CodeBlock还有GDB。 GDB比较好搭建,将带Boost库的源代码扔到虚拟机(CentOS 7.0,安装配置桌面web服务器开发机配置,什么软件都装齐了)上,GDB命令搞得飞起。但是,GDB还是比较反人类...
2018-06-01 19:30:34 10458
转载 MyCat - 背景篇(1)
数据库路由中间件MyCat - 背景篇(1)SQL与NoSQL目前,对于互联网海量数据的存储以及处理,按使用场景,分为OLTP(联机事务处理,比如即时交易,强调快速响应与处理)与OLAP(联机分析处理,比如BI,强调多维数据分析)。对于这些数据的存储,主要有两种解决方案,即基于SQL的关系型数据库,和NoSQL的非关系型数据库。 非关系型数据库在某些特定场景下有奇效,比如键值存储(red...
2018-06-01 19:26:25 207
转载 MyCat - 背景篇(2)
数据库路由中间件MyCat - 背景篇(2)MyCat的前世今生如前文所说,Amoeba、Cobar、MyCat等属于同宗一脉。若Amoeba能继续下去,Cobar就不会出来;若Cobar那批人不是都走光了的话,MyCAT也不会再另起炉灶。Cobar之后,有很多类似中间件仿照其架构以及思路,针对特定的业务场景,设计出了不同的中间件。MyCat算是其中业务场景比较全面,使用配置比较简便,性能...
2018-06-01 19:25:46 130
转载 MyCat - 使用篇(1)
数据库路由中间件MyCat - 使用篇(1)基本概念直接介绍概念太枯燥了,还是拿个和背景篇相似的例子介绍 业务场景:客户完成下单,快递员接受并更新运单状态,客户可以随时查看运单状态的任务。一票快递可能有多个子母件。同时,我们需要标记每个运单的状态,运单状态的解释和含义保存在运单状态字典表中。 因此,我们需要建立如下表: 我们现在按照业务将数据库垂直拆分成运单库(单表2000tps,6...
2018-06-01 19:24:58 201
转载 MyCat - 使用篇(2)
数据库路由中间件MyCat - 使用篇(2)基本概念3. 分片3.1 分片节点(dataNode)表被水平切分后,每个分片表所在的数据库就是一个分片节点。一个分片节点对应一个数据库(mysql数据库)。一个分片节点只能保存每个分片表的一个分片,因为db中不允许出现同名的表。 例如:<dataNode name="test1" dataHost="test" database="db...
2018-06-01 19:24:01 145
转载 MyCat - 使用篇(3)
数据库路由中间件MyCat - 使用篇(3)全局序列号数据切分后,原有的关系数据库中的主键约束在分布式条件下将无法使用,因此需要引入外部机制保证数据唯一性标识,这种保证全局性的数据唯一标识的机制就是全局序列号(sequence)。1. 本地文件方式classpath下有一个sequence_conf.properties文件:GLOBAL_SEQ.HISIDS=GLOBAL_SEQ.MI...
2018-06-01 19:22:38 208
转载 MyCat - 使用篇(4)
数据库路由中间件MyCat - 使用篇(4)配置MyCat3. 配置conf/rule.xml1.5GA版本中的规则配置比较笨,2.0中优化了一些,将tableRule标签和function标签合并了,并且支持Velocity模板语言,更加灵活。这里先介绍1.5GA的,2.0等以后稳定了,会推的:<?xml version="1.0" encoding="UTF-8"?>&l...
2018-06-01 19:21:46 201
转载 MyCat - 使用篇(5)
数据库路由中间件MyCat - 使用篇(5)配置MyCat4. 配置schema.xmlschema.xml里面管理着MyCat的逻辑库、表,每张表使用的分片规则、分布在哪个DataNode以及DataSource上。 之前的例子: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mycat:schema SYSTEM ...
2018-06-01 19:20:51 164
转载 MyCat - 使用篇(6)
数据库路由中间件MyCat - 使用篇(6)配置MyCat-eye接下来在开始使用MyCat之前,我们先把监控平台部署好。下载MyCat-eye项目,mvn打包。之后得到类似于Mycat-web-1.0-SNAPSHOT-20160215151602-linux.tar.gz这个文件,部署到和zookeeper同一台服务器上。 如果要部署到其他机器,需要修改mycat-web\mycat...
2018-06-01 19:19:10 194
转载 MyCat - 使用篇(7)
数据库路由中间件MyCat - 生产进阶篇(1)首先,利用开源产品,我们的第一个首要目标是–稳定! 1. MyCat求稳首要原则:还是用之前的例子: 1.1 事务:首先,我们可以这么理解,MyCat只应该做两件事:请求转发与结果合并。源代码篇讲过MyCat的分布式事务的弱XA原理(其实根本不算是分布式事务),这是不可靠的,我们要想稳定的高可信的利用MyCat,就要避免一切分布式事务。 从...
2018-06-01 19:18:07 209
原创 MySQL单机本地使用XtraBackup备份工具进行备份和恢复1(全备+增备+binlog)_(可用)
XtraBackup的全备份+XtraBackup增量备份+binlog日志进行恢复最新数据。也可以恢复误操作。 老规矩,开场白,刚开始用mysqldump,备份100G+的数据库,再加上服务器繁忙,备份速度像蜗牛似的,于是寻找更高效的备份方法。网上都说用xtrabackup比较适合备份大的数据库,而且备份效率也高,就尝试使用一次,结果明显感觉比mysqldump备份与恢复速度就是快不少,那以...
2018-05-31 10:39:54 1056
原创 centod7下编译安装Python-3.6.5
下载Python-3.6.5[root@Master /]# cd /home [root@Master home]# wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz[root@Master /]# cd /home[root@Master home]# wget http://cdn.npm.taobao.or...
2018-05-26 11:47:58 600
转载 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:1.资源准备
最近,在VmwareStation 10虚拟机上,基于CentOS5.4安装Oracle 11g RAC,并把过程记录下来.刚开始时,是基于CentOS 6.4安装Oracle 11g RAC, 没有成功,主要是Oracle 11g RAC安装,没有针对CentOS 6.4的内核的一些包. 本文内容详实,包括安装过程中遇到的一些问题,也单独编一章节,第四章节的FAQ. http://blo...
2018-05-17 17:43:40 297
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人