自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Franco的博客

学习,整理,积累,站在巨人的肩膀上厚积薄发

  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Mysql】改一行语句,锁这么多

CREATE TABLE `t` ( `id` int(11) NOT NULL, `c` int(11) DEFAULT NULL, `d` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `c` (`c`)) ENGINE=InnoDB;insert into t values(0,0,0),(5,5,5),(10,...

2019-02-28 11:19:36 276

原创 【Redis】延时队列

Redis 的 list(列表) 数据结构常用来作为异步消息队列使用,使用rpush/lpush操作入队列,使用lpop 和 rpop来出队列。队列延迟blpop/brpop。这两个指令的前缀字符b代表的是blocking,也就是阻塞读。阻塞读在队列没有数据的时候,会立即进入休眠状态,一旦数据到来,则立刻醒过来。消息的延迟几乎为零。用blpop/brpop替代前面的lpop/rpop。...

2019-02-27 16:50:50 578

原创 【Mysql】幻读

幻读是什么?幻读有什么问题?

2019-02-27 12:08:20 1283

原创 【Mysql】 sql语句查询慢问题

查询时间长不返回等MDL锁mysql> show PROCESSLIST;查看waiting for table metadata lockmysql> select * from sys.schema_table_lock_waits;找到造成阻塞的process ID等flushflush tables t with read lock;flush tabl...

2019-02-26 11:37:12 331

原创 【Redis】分布式锁

redis 2.8 版本中作者加入了 set 指令的扩展参数,使得 setnx 和 expire 指令可以一起执行,彻底解决了分布式锁的乱象。从此以后所有的第三方分布式锁 library 可以休息了。> set lock:codehole true ex 5 nxOK... do something critical ...> del lock:codehole上面这...

2019-02-26 10:35:25 190

原创 【Mysql】 一条sql查询语句怎么执行

客户端连接到服务端,获取到权限等信息, 然后在连接的有效时长内(interactive_timeout和wait_timeout参数控制, 5.7版本会断开可以自动重连)对sql进行处理。首先会判断查询缓存是否开启,如果已经开启,会判断sql是select还是update/insert/delete,对于select,尝试去查询缓存,如果命中缓存直接返回数据给客户端, 如果缓存没有命中,或者...

2019-02-25 16:51:29 263

原创 【Mysql】不好的sql习惯

一、条件字段函数操作条件字段函数操作,不会使用索引;对索引字段做函数操作,可能会破坏索引值的有序性,因此优化器就决定放弃走树搜索功能。二、隐式类型转换在MySQL中,字符串和数字做比较的话,是将字符串转换成数字。反之,则不会有类型转换,也就不会全表扫描。三、隐式字符编码转换...

2019-02-25 16:22:07 183

原创 [Mysql]B-树(就是B树),B+树

B(B-)树数据库索引是存储在磁盘上的,当数据量比较大的时候,索引的大小可能有几个G甚至更多,当利用索引查询的时候,不可能把所有索引都加载到内存。只能逐一加载每个磁盘页,磁盘页对应着索引树的节点。如果利用二叉树的结构存储索引,搜索的时候高度太高,IO次数太多;为了减少磁盘IO;需要把瘦高的二叉树变的矮胖也就是B树。B树是一种多路平衡查找树,它的没一个节点最多包含k个孩子,k被称为B树的阶。...

2019-02-24 16:53:13 601

原创 【Mysql】 随机消息

mysql> select word from words order by rand() limit 3;  不要用这种方法,最好使用代码随机法。

2019-02-24 15:29:21 104

原创 【Mysql】 “order by”工作原理

CREATE TABLE `t` (  `id` int(11) NOT NULL,  `city` varchar(16) NOT NULL,  `name` varchar(16) NOT NULL,  `age` int(11) NOT NULL,  `addr` varchar(128) DEFAULT NULL,  PRIMARY KEY (`id`),  KEY `cit...

2019-02-22 11:40:43 919

原创 【Redis】基础数据结构

Redis 基础数据结构Redis 有 5 种基础数据结构,分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)。string (字符串)Redis 所有的数据结构都是以唯一的 key 字符串作为名称,然后通过这个唯一 key 值来获取相应的 value 数据。不同类型的数据结构的差异就在于 value 的结构不一样。...

2019-02-21 19:32:03 196

原创 【Redis】Redis 可以做什么?

记录帖子的点赞数、评论数和点击数 (hash)。 记录用户的帖子 ID 列表 (排序),便于快速显示用户的帖子列表 (zset)。 记录帖子的标题、摘要、作者和封面信息,用于列表页展示 (hash)。 记录帖子的点赞用户 ID 列表,评论 ID 列表,用于显示和去重计数 (zset)。 缓存近期热帖内容 (帖子内容空间占用比较大),减少数据库压力 (hash)。 记录帖子的相关文章 ID...

2019-02-21 18:23:28 188

原创 【Mysql】 日志和索引相关问题

binlog(归档日志)和redo log(重做日志)配合崩溃回复,如果不这样两阶段提交,会导致Mysql出现主备数据不一致等问题。在两阶段提交的不同瞬间,mysql如果发生异常重启,是怎么保证数据完整性的?时刻A:发生crash,此时binlog还没写,redo log也还没提交,所以崩溃回复的时候,这个事务会回滚。这时候binlog还没写,所以也不会传到备库。时刻B:崩溃回复时...

2019-02-21 11:14:49 210

原创 【Mysql】 count() 慢问题

不同引擎中,count(*)有不同的实现方式MyISAM:把一个表的总行数存在了磁盘,因此在获取行数时候直接返回,效率高。如果加where条件就不能返回这么快。InnoDB:需要一行行从引擎里面读出来,累计计数,因为事务的支持所以通过MVCC并发控制,读取行数时候据需要一行行的读出来判断。MySQL优化器会找到最小的那棵树来遍历,在保证逻辑正确的前提下,尽量减少扫描的数据量,是数据库系...

2019-02-21 10:35:18 1619

Tab切换形势大全及FragmentPagerAdapter保存刷新数据实现

5种Tab实现总结,FragmentPagerAdapter数据保存完美解决

2016-01-14

空空如也

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

TA关注的人

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