自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 LINUX文本处理三剑客

LInux想必大家都不陌生,命令行秒杀微软的DOS,自从用上了linux鼠标似乎离我也原来越远了.今天我们不多说linux,说说linux的文本处理工具.一.Grep: 全称: Global search Regular expression and Print out the line.作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行;模式: 有正则表...

2020-01-26 19:42:18 269

原创 ss命令详解

ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。ss快的秘诀在于,它利用到...

2020-01-26 17:46:41 1044

原创 Linux常用基本命令:tr-替换或者删除字符

tr命令作用:从标准输入中替换,缩减或者删除字符,并将结果输出到标准输出格式:tr [option] [set1] [set2]tr [选项] [字符1] [字符2]把y替换m, o替换e,并不仅仅是yo替换meghostwu@dev:~/linux/tr$ cat ghostwu.txt hello,my name is ghostwu,my qq is 359173352@qq....

2020-01-26 17:19:43 1104

转载 MySQL MVCC Undo log Redo log

目录什么是MVCC?MVCC-插入MVCC-删除MVCC-修改MVCC-查询Undo logRedo log什么是MVCC?Multi Version Concurrency Control (多版本并发控制)并发访问(读或写)数据库时,对事务内正在处理的数据做多版本管理。以实现写操作堵塞的同时,依然可以进行读操作。MVCC-插入插入规则:在数据行版...

2020-01-05 09:03:56 210

转载 MySQL MVCC Undo log Redo log

目录什么是MVCC?MVCC-插入MVCC-删除MVCC-修改MVCC-查询Undo logRedo log什么是MVCC?Multi Version Concurrency Control (多版本并发控制)并发访问(读或写)数据库时,对事务内正在处理的数据做多版本管理。以实现写操作堵塞的同时,依然可以进行读操作。MVCC-插入插入规则:在数据行版...

2020-01-05 09:01:49 183

转载 MySQL的索引结构

目录索引是什么?索引的作用为什么索引的数据结构使用B+Tree?平衡二叉查找树多路平衡查找树 B-Tree多路平衡查找树加强版 B+TreeB+Tree与B-Tree的区别MySQL中B+Tree的表现形式MyISAM引擎InnoDB引擎覆盖索引联合索引最左前缀原则索引是什么?索引是对数据库表中一列或多列的值进行排序的一种结构,使用...

2020-01-05 09:00:38 156

转载 MySQL死锁案例

死锁案例1多线程以不同顺序对相同资源加锁导致死锁。时间会话A会话B1 BEGIN; 2 SELECT * FROM t WHERE a = 1 FOR UPDATE; BEGIN;3 SELECT * FROM t WHERE a = 2 FOR UPDATE;4 SELECT * FROM t WHERE a = 2 FO...

2020-01-05 08:59:21 142

转载 MySQL常用规范

一. 建表规范1.使用InnoDB引擎无特殊情况必须使用InnoDB引擎(5.5版本后默认引擎)InnoDB支持事务、行级锁、MVCC,并发性能更好,CPU及内存缓存页优化使得资源利用率更好。2.规范表、字段的命名表名、字段名,小写下划线风格,尽量做到见名知意。3.规范索引命名主键索引名为pk_表名_字段名,唯一索引名为uk_表名_字段名,普通索引为idx_表名_字段名。4...

2020-01-05 08:57:51 135

原创 mysql 可重复读

概念  Repeatable Read(可重复读):即:事务A在读到一条数据之后,此时事务B对该数据进行了修改并提交,那么事务A再读该数据,读到的还是原来的内容。实现原理(MVCC [ 多版本并发控制 ])  InnoDB在每行记录后面保存两个隐藏的列来,分别保存了这个行的创建时间和行的删除时间。这里存储的并不是实际的时间值,而是系统版本号,当数据被修改时,版本号加1  在读取事务开...

2020-01-05 08:50:21 603

原创 mysql的MVCC(多版本并发控制)

1 什么是MVCC MVCC全称是:Multiversion concurrency control,多版本并发控制,提供并发访问数据库时,对事务内读取的到的内存做处理,用来避免写操作堵塞读操作的并发问题。 举个例子,程序员A正在读数据库中某些内容,而程序员B正在给这些内容做修改(假设是在一个事务内修改,大概持续10s左右),A在这10s内 则可能看到一个不一...

2020-01-05 08:49:12 164

原创 mysql覆盖索引与回表

select id,name where name='shenjian'select id,name,sex* where name='shenjian'*多查询了一个属性,为何检索过程完全不同?什么是回表查询?什么是索引覆盖?如何实现索引覆盖?哪些场景,可以利用索引覆盖来优化SQL?这些,这是今天要分享的内容。画外音:本文试验基于MySQL5.6-InnoDB。...

2020-01-05 08:02:45 2145

原创 回表查询的说明

你可能从来都没有听说过回表一词,但是你在实际工作中肯定用过回表。如果还没有听过回表,那我相信不管你看多少 SQL 优化的知识,都还只是停留在表面。即使你参考学习过我前面的这篇文章《MySQL 性能优化神器 Explain 使用教程》。一条SQL语句的查询过程我们先来看看什么是回表?通俗的讲就是,如果索引的列在 select 所需获得的列中(因为在 mysql 中索引是根据索引列的值进行...

2020-01-04 23:03:18 2819 2

转载 Mysql的共享锁和排他锁

mysql锁机制分为表级锁和行级锁,本文就和大家分享一下我对mysql中行级锁中的共享锁与排他锁进行分享交流。共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享锁和排他锁,但是获...

2020-01-04 22:47:07 131

原创 MySQL的存储引擎

目录什么是引擎?MySQL的常见引擎CSV存储引擎Archive(档案)存储引擎Memory存储引擎MyISAM存储引擎InnoDB存储引擎InnoDB与MyISAM的比较什么是引擎?引擎(Engine)是电子平台上开发程序或系统的核心组件。利用引擎,开发者可迅速建立、铺设程序所需的功能,或利用其辅助程序的运转。一般而言,引擎是一个程序或一套系统的支持部分。常见的程序引擎有游戏...

2020-01-04 21:32:40 149

原创 MySQL批量插入大量数据方法

在MySQL数据库中,如果要插入上百万级的记录,用普通的insert into来操作非常不现实,速度慢人力成本高,推荐使用Load Data或存储过程来导入数据,我总结了一些方法分享如下,主要基于MyISAM和InnoDB引擎。InnoDB存储引擎首先创建数据表(可选),如果有了略过:> CREATE DATABASE ecommerce;> USE ecommerce...

2020-01-04 18:06:26 3636

原创 mysql批量插入与更新

批量插入数据insert into t1 values(a,b),(a,b).....;insert into selectINSERT INTO t VALUES (1, 20, 'a'), (2, 26, 'b'), (3, 30, 'c');– 两张表的字段要一一对应INSERT INTO t SELECT id,age,name from t_copy w...

2020-01-04 17:23:30 446

原创 linux基础前篇

linux基础篇命令linux基础篇需要掌握的特殊命令id -u:当前用户的id[root@a ~]# tty/dev/pts/0scpu:查看虚拟机cpu信息[root@a ~]# scputty: 查看当前终端编号[root@a ~]# tty/dev/pts/0cat /etc/centos-release: 查看当前虚拟机版本[root@a ~]# cat /e...

2019-11-24 01:04:25 201

空空如也

空空如也

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

TA关注的人

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