自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(828)
  • 资源 (10)
  • 收藏
  • 关注

转载 MySQL备份之mysqldump工具--lock-all-tables

在使用mysqldump(或者mysqlpump)备份mysql数据库时,有如下三个参数值得研究:--lock-all-tables保证整个数据库(所有schema)的数据具有一致性快照。在mysqldump导出的整个过程中以read方式锁住所有表(锁住方式类似 flush tables with read lock 的全局锁)。比如当前数据库有如下sc

2017-09-20 13:19:54 5061 1

转载 MySQL主从复制性能优化

MySQL主从复制性能优化   MySQL的主从复制的基本原理是从库连接到主库,主库生成一个主库DUMP线程,该DUMP线程的主要任务是一直挖掘binlog日志,然后发送到从库的IO线程,IO线程接收到日志流后,写入relay log,另一个线程SQL线程,会读取该relay log内容,然后对sql语句进行重放.  主库DUMP线程会根据从库传来的文件位置信息

2017-09-14 17:06:37 2318 1

转载 MySQL中myisam和innodb的主键索引有什么区别?

MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的地址。在MyISAM中,主索引和辅助索引(Secondary key)在结构上没有任何区别,只是主索引要

2017-09-14 17:02:16 1538

转载 Mongodb在renameCollection之后,记得千万要立即补建索引

mongodb执行完renameCollection之后,记得千万要立即建索引. 因为mongodb的新insert语句只负责create collections,不负责create index, 如果在production上面, 记得提前写好collection的indexes, rename之后重新补上. 否则应用access会变得very slow very

2017-09-14 17:01:09 1228

转载 Linux - 将Crontab中的命令输出按照当前日期进行存储

错误写法:0 2 * * * /usr/bin/php /home/wwwroot/default/monkey/sync_product.php > /home/wwwroot/default/log/monkey_sync_product_$(date +%Y%m%d).log 2>&1正确写法:0 2 * * * /usr/bin/php /hom

2017-09-07 13:08:41 928

转载 MySQL中采用类型varchar(20)和varchar(255)对性能上的影响

1.MySQL建立索引时如果没有限制索引的大小,索引长度会默认采用的该字段的长度,也就是说varchar(20)和varchar(255)对应的索引长度分别为20*3(utf-8)(+2+1),255*3(utf-8)(+2+1),其中"+2"用来存储长度信息,“+1”用来标记是否为空,加载索引信息时用varchar(255)类型会占用更多的内存; (备注:当字段定义为非空的时候,是否为空的标

2017-09-06 17:13:01 17126 1

转载 关于MySQL建表对DML的影响

今天一位同学问到线上曾经碰到过连续建表,导致阻塞普通的insert、update等。不过也没有保留现场。因此有疑问为什么建表会影响DML? 分析         首先这个现象不是在所有场景都会碰到(否则MySQL的用户们早就跳起来了)。一来建表这个操作本身很快,只涉及到写表定义文件和初始化表空间。中间涉及到redo和undo的操作也很少(这里只讨论InnoDB表)。因此除非碰到磁盘

2017-09-06 14:35:06 545

转载 学习MongoDB 十一: MongoDB聚合(Aggregation Pipeline基础篇上)(三)

一、Aggregate简介                 db.collection.aggregate()是基于数据处理的聚合管道,每个文档通过一个由多个阶段(stage)组成的管道,可以对每个阶段的管道进行分组、过滤等功能,然后经过一系列的处理,输出相应的结果。                      图来自https://docs.mongodb.co

2017-09-01 17:27:16 1602

转载 MySQL小误区:关于set global sql_slave_skip_counter=N 命令的一些点

背景知识1:    在主从库维护中,有时候需要跳过某个无法执行的命令,需要在slave处于stop状态下,执行 set global sql_slave_skip_counter=N以跳过命令。常用的且不易用错的是N=1的情况,但N>1时,则不那么顾名思义,本文详细介绍N的意义,及使用注意事项。     背景知识2:    MySQL从库从主库上复制binlog文件内容到本地执行。

2017-08-31 15:44:40 1982

原创 [Mysql]——通过例子理解事务的4种隔离级别

第1级别:Read Uncommitted(读取未提交内容)第2级别:Read Committed(读取提交内容)第3级别:Repeatable Read(可重读)第4级别:Serializable(可串行化)SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并

2017-08-30 15:56:07 712

转载 禁止修改varchar到int|[运维规范]

在MySQL更改数据类型前一定要特别小心,分析一下是不是可行,另外在更改前,需要先进行备份,备份,备份!!!环境描述表结构:CREATE TABLE `t_mobile` ( `mobile_no` varchar(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8写入数据:root@zhish

2017-08-30 15:47:35 505

转载 MYSQL慢日志探索

Table of Contents [hide]1. 出现场景2. 什么样的慢查询会记录到slow log日志2.1 慢日志查询和锁定时间介绍2.2 何时记录慢日志2.2.1 设置开启MySQL慢日志相关参数2.2.2 准备测试数据2.2.3  测试场景介绍2.2.3  测试结果展示3. 结论1. 出现场景 今

2017-08-30 11:58:48 582

转载 MongoDB 查询时间差问题修复

mongodb中存储的时间是标准时间UTC +0:00  而咱们中国的失去是+8.00 。在C#中取回DateTime数据时候要转换成LocalTime格式不然总会缺少8小时,这是因为MongoDB采取的是UTC时间,而通常系统用的是Local时间(中国),时区不同如果不注意会出现时间不对称 。[csharp] view plaincopy

2017-07-29 08:58:04 1636

转载 show slave status\G中的Read_Master_Log_Pos和Relay_Log_Pos的(大小)关系

Just to clarify, there are three sets of file/position coordinates in SHOW SLAVE STATUS:1) The position, ON THE MASTER, from which the I/O thread is reading:Master_Log_File/Read_Master_Log_Pos.

2017-07-18 14:11:00 11210 1

转载 MySQL事务提交过程(二)

上一篇文章我们介绍了在关闭binlog的情况下,事务提交的大概流程。之所以关闭binlog,是因为开启binlog后事务提交流程会变成两阶段提交,这里的两阶段提交并不涉及分布式事务,当然mysql把它称之为内部xa事务(Distributed Transactions),与之对应的还有一个外部xa事务。这里所谓的两阶段提交分别是prepare阶段和commit阶段。内部xa事务主要

2017-07-17 13:47:31 673

转载 MySQL事务提交过程(一)

MySQL作为一种关系型数据库,已被广泛应用到互联网中的诸多项目中。今天我们来讨论下事务的提交过程。                                                       MySQL体系结构 由于mysql插件式存储架构,导致开启binlog后,事务提交实质是二阶段提交,通过两阶段提交,来保证存储引擎和二进制日志的一致。

2017-07-17 13:46:39 975

转载 MySQL 5.7临时表空间怎么玩才能不掉坑里

导读MySQL 5.7起支持独立临时表空间,但个别时候也可能会踩坑的。MySQL 5.7起,开始采用独立的临时表空间(和独立的undo表空间不是一回事哟),命名ibtmp1文件,初始化12M,且默认无上限。选项 innodb_temp_data_file_path 可配置临时表空间相关参数。innodb_temp_data_file_path = ibtmp1:

2017-07-12 14:02:57 7604

转载 mysql主从同步-问题梳理

在mysql同步过程中会出现很多问题,导致数据同步异常。以下梳理了几种主从同步中可能存在的问题:1)slave运行过慢不能与master同步,也就是MySQL数据库主从同步延迟MySQL数据库slave服务器延迟的现象是非常普遍的,MySQL复制允许从机进行SELECT操作,但是在实际线上环境下,由于从机延迟的关系,很难将读取操作转向到从机。这就导致了有了以下一些潜规则:“实时性要求不

2017-07-05 14:26:56 1033

转载 linux OOM-killer机制(杀掉进程,释放内存)

Linux下面有个特性叫OOM killer(Out Of Memory killer),这个东西会在系统内存耗尽的情况下跳出来,选择性的干掉一些进程以求释放一些内存。相信广大从事Linux服务端编程的农民工兄弟们或多或少遇到过(人在江湖漂,哪有不挨刀啊)。典型的情况是:某天机器突然登不上了,能ping通,但是ssh死活连不了。原因是sshd进程被OOM killer干掉了(泪流满面)。重启机器后

2017-07-04 16:36:13 2804

转载 mongodb 对内存的严重占用以及解决方法

mongodb 对内存的严重占用以及解决方法【转载】 刚开始使用mongodb的时候,不太注意mongodb的内存使用,但通过查资料发现mongodb对内存的占用是巨大的,在本地测试服务器中,8G的内存居然被占用了45%。汗呀。 本文就来剖析一下mongodb对内存的具体使用方法,以及生产环境针对mongodb占大量内存的问题的解决。 先看一个MongoDB服务器的top命令结果 

2017-06-23 09:54:33 47708 6

转载 MySQL索引类型 btree索引和hash索引的区别

来源一Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。可 能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢?任何事物都是有两面性

2017-06-22 15:54:40 804

原创 固态硬盘寿命计算公式

不同闪存颗粒使用寿命不同P/E擦除次数是指SSD的完全擦写次数,格式化SSD算是一次P/E。不同的存储单元(闪存颗粒)类型擦写次数也不同,存储单元主要分为三种:TLC: 大约500-1000次的擦写寿命,低端SSD使用的颗粒;MLC:大约3000-10000次的擦除寿命,中高端股SSD使用的颗粒;SLC: 大约10万次的擦除寿命,面向企业级用户;以MLC 120G SS

2017-06-05 16:52:44 5724

转载 系统级性能分析工具 — Perf

从2.6.31内核开始,linux内核自带了一个性能分析工具perf,能够进行函数级与指令级的热点查找。 perf Performance analysis tools for Linux.Performance counters for Linux are a new kernel-based subsystem that provide a framewor

2017-05-31 16:03:29 794

转载 InnoDB锁机制之Gap Lock、Next-Key Lock、Record Lock解析

MySQL InnoDB支持三种行锁定方式:l   行锁(Record Lock):锁直接加在索引记录上面,锁住的是key。l   间隙锁(Gap Lock):锁定索引记录间隙,确保索引记录的间隙不变。间隙锁是针对事务隔离级别为可重复读或以上级别而已的。l   Next-Key Lock :行锁和间隙锁组合起来就叫Next-Key Lock。 默

2017-05-26 17:10:18 19873 5

转载 XtraBackup原理解读

XtraBackup是现今为止唯一一款为InnoDB 和XtraDB提供热备的开源工具,这个工具有以下的有点:(1)备份快速高效而且可靠(2)备份过程可以做到事物处理不间断(3)节省磁盘空间和网络带宽(4)自动备份验证(5)恢复速度快而高效XtraBackup适用于所有版本的Percona Server, MySQL, 和MariaDB.而且提供了流

2017-05-26 15:28:24 695

原创 MySQL数据库MVCC多版本并发控制简介

MVCC (Multiversion Concurrency Control),即多版本并发控制技术,它使得大部分支持行锁的事务引擎,不再单纯的使用行锁来进行数据库的并发控制,取而代之的是把数据库的行锁与行的多个版本结合起来,只需要很小的开销,就可以实现非锁定读,从而大大提高数据库系统的并发性能InnoDB:通过为每一行记录添加两个额外的隐藏的值来实现MVCC,这两个值一个记录这行数据

2017-05-26 13:26:16 1048

转载 MySQL源码学习:MySQL中禁止跨库访问的实现

摘要:  先说一下这里“跨库”的意思:当前use的是db1, 仍可以使用select * from db2.table1来访问table1表。 这样使得我们需要访问同一个MySQL下的其他表时不需要多一次use,也使得多个库间的表join这样的操作成为可能。 先说一下这里“跨库”的意思:当前use的是db1, 仍可以使用select * from db2.table1来访问tabl

2017-05-24 17:04:08 798

转载 MySQL SELECT..INTO OUTFILE语句只能导出1000行的故障

同事反映,客户的一套MySQL生产库,执行SELECT.. INTO OUTFILE语句只能导出1000行最初以为是系统参数被重新设置了,建议他更改系统参数mysql> set global sql_select_limit=50000000;Query OK, 0 rows affected (0.00 sec)同事反映,没有生效登陆到数据库,查看系统参数,发

2017-05-15 13:54:27 3007

转载 实时搜索 elasticsearch vs solr

oyhk学习笔记什么是ElasticSearch?ElasticSearch是基于rest风格,分布式搜索引擎,非常优秀的lucene库.内置的JSON API提供了一个优雅的+ HTTP平台完美的结合(例:弹性可搜索的ruby gem)。它的简单的、可伸缩的和酷...对比solr首先,让我们澄清问题.solr效率是非常快的,这个我可以肯定.solr是稳定的,可靠的

2017-05-09 13:54:19 1665 1

转载 Win7 64位下PowerDesigner连接64位Oracle11g数据库

操作系统:WIN7 64旗舰版Oracle版本:64位11gPowerDesigner版本:15.1问题描述:因为PowerDesigner是32的程序,连接数据库会默认开启32位的ODBC,因此无法使用Oracle11g的驱动程序解决方法:下载安装Oracle11g客户端win32_11gR2_client.zip => 选择客户端的提供程序连接Oracle

2017-04-21 13:54:44 1222

转载 从Oracle到MySQL,余额宝云实践分享

余额宝、百度百发、腾讯财付通谋划的互联网理财工具,吹响了互联网对金融行业的进军节奏。而后,网易、和讯、京东商城、苏宁云商等二线实力企业纷纷涉水。另一边,一众金融精英也在频频转换思路,不仅银行网络中心从副行长牵头的服务部门一跃成为行长主抓的业务部门,而且高调发布互联网金融理财产品与携手互联网企业并行,力图实现金融互联网的新价值。一时之间,互联网金融热潮涌动,无数专家多视点多维度进行了深入剖析,数十篇

2017-04-05 18:22:07 770

转载 几种常见数据库连接池的使用比较

感觉在介绍之前有必要阐述一下连接池的几个概念,有助于后边一些文字的理解。最原始的数据库使用就是打开一个连接并进行使用,使用过后一定要关闭连接释放资源。由于频繁的打开和关闭连接对jvm包括数据库都有一定的资源负荷,尤其应用压力较大时资源占用比较多容易产生性能问题。由此使用连接池的作用就显现出来,他的原理其实不复杂:先打开一定数量的数据库连接,当使用的时候分配给调用者,调用完毕后返回给

2017-03-27 14:58:33 829

转载 关于Docker目录挂载的总结

Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定。譬如我要启动一个CentOS容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定:# docker run -it -v /test:/soft centos /bin/bash这样在容器启动后,容器内会自动创建/soft的目录。通过这种方式,我们可以明确一点,即-v参数中,冒

2017-03-02 21:23:37 1242

转载 MySQL 复制夯住排查以及原理探讨

一 引子研发反应,有台从库和主库不同步。由于业务读操作是针对从库的,数据不同步必定会带来数据的不一致,业务获取的结果会受影响,所以这个问题必须尽快解决。登上服务器,查看 MySQL 的从库状态,并没有任何报错信息。刷新从库状态,发现状态没有任何变化,Exec_Master_Log_Pos 卡住不动。二 故障分析为了安全起见,此文略去 MySQL 版本以及其他

2017-02-21 16:16:24 1298

转载 大数据NoSQL技术之Couchbase Server数据库详解

一.什么是Couchbase Server  大数据的NoSQL技术已发展成熟,这以MongoDB为代表,但我这里要介绍的是另一种NoSQL技术,叫做Couchbase Server, 近年来在国外发展迅猛,大有超过MongoDB之势。Couchbase Server是由早先的CouchDB发展而来, 继承了Memcached的技术特性, 是一个开源的、分布式的、面向文档(docume

2017-01-23 15:10:07 5197

转载 GTID的常见错误和处理方法

主从同步错误MySQL> stop slave;Query OK, 0 rows affected (0.00 sec) mysql> set global sql_slave_skip_counter=1;ERROR 1858 (HY000): sql_slave_skip_counter can not be set when theserver is

2017-01-12 11:36:24 1675

转载 mysql 一个死锁的分析

死锁信息如下:*** (1) TRANSACTION:TRANSACTION 4363766192, ACTIVE 0 secmysql tables in use 2, locked 2LOCK WAIT 9 lock struct(s), heap size 1248, 2 row lock(s), undo log entries 6MySQL thr

2017-01-04 14:03:00 993

转载 如何在SecureCRT上使用公钥登陆Linux服务器

我以前一直使用口令通过ssh协议登陆Linux服务器,最近公司要求使用公钥登陆。说是安全,好吧。那我们整一下。那到底使用公钥登陆服务器有什么好处呢?其实我理解是这样的:当我们创建了公钥和私钥(这是一对,登陆时要使用私钥解密公钥)后,把公钥给任何服务器,登陆Linux服务器时,只要我们的私钥不变,登陆任何服务器都是不需要密码的。而是使用公钥私钥进行身份验证。安全的多!这里也隐含了一个小细节,

2017-01-03 16:33:42 5078

转载 RESET MASTER 和RESET SLAVE 命令的使用方法 注意事项

RESET MASTER删除所有index file 中记录的所有binlog 文件,将日志索引文件清空,创建一个新的日志文件,这个命令通常仅仅用于第一次用于搭建主从关系的时的主库,注意  reset master 不同于purge binary log的两处地方1 reset master 将删除日志索引文件中记录的所有binlog文件,创建一个新的日志文件 起始值从0000

2016-12-28 11:42:16 1409

转载 本地连接时,通过localhost不能登陆到指定的端口

本地连接时,通过localhost不能登陆到指定的端口朋友说他的一台服务器上,装了多个mysql,用了不同的端口,通过localhost的方式指定端口时,连上的还是3306的端口mysql -uroot -hlocalhost  -P3307 -p这样连的是 3306的库。但是通过mysql -uroot -h127.0.0.1 -P3307 -

2016-12-22 16:19:30 4130

oracle数据(文本)导出小工具

oracle数据(文本)导出小工具sqluldr最新版各种平台下都包括

2011-11-16

gg_lab安装实验文档

完整的ORACLE原厂GoldenGate安装实验文档

2011-09-23

ORACLE之常用问题解答

ORACLE工程师必看,有100多个常见问题,面试必备

2011-08-29

运维工程师必会的基本的linux命令

非常不错的文档,运维工程师必会的一些基本的linux命令,拿来给大家分享。 文件管理 磁盘管理 压缩管理 进程管理 网络管理 系统管理 更多参考 ....................

2011-08-29

oracle数据库巡检报告标准

标准的ORACLE数据库巡检报告文档,需要的童鞋赶快抢啦

2011-08-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除