杨建荣的学习笔记

每天坚持一点点,个人微信公众号 jianrong-notes

  • 博客访问: 12206148
  • 博文数量: 1254
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-14 23:24
  • 认证徽章:
个人简介

每日发文,或技术、或总结,偶有日间小事也以为记,谓之学习笔记,成年累月1200多天,中间几乎没有间断,要旨只有一个:学习交流,共同进步 。 学习笔记精华整理,个人新书《Oracle DBA工作笔记》已开售,在京东,当当,亚马逊,淘宝,天猫均有售,欢迎选购。

ITPUB论坛APP

ITPUB论坛APP



APP发帖 享双倍积分

文章分类

全部博文(1254)

文章存档

2017年(186)

2016年(358)

2015年(360)

2014年(278)

2013年(48)

2012年(21)

微信关注

IT168企业级官微



微信号:IT168qiye



系统架构师大会



微信号:SACC2013

订阅
热词专题

发布时间:2017-07-20 23:53:14

关于SQL,我们总是会有无穷无尽相关的话题,有时候碰到了一些觉得不错的SQL功能会标记下来,好记性不烂烂笔头,回头来看,自己也收集了不少的点子,但是从整体来看,可能仅仅是一瓢水而已。大家有好的想法也欢迎留言,一起总结完善一下。  首先MySQL里面的SQL标准可以参考下面的表格,我们今天想总结的是MySQL特有.........【阅读全文】

阅读(32) | 评论(0) | 转发(0)

发布时间:2017-07-17 23:51:28

今天同事问了一个问题,是关于MySQL大小写敏感的。如果根据关键字case来搜索,会发现有两个参数。mysql> show variables like '%case%';+------------------------+-------+| Variable_name          | Value |+------------------------+-------+| lower_case.........【阅读全文】

阅读(365) | 评论(0) | 转发(0)

发布时间:2017-07-16 23:48:51

MySQL里的explain命令内容还是很丰富的,值得好好的挖掘出不少东西来。   本身来说explain就是生成执行计划的内容,如果细看,这个内容和Oracle explain plan for的结果相比还是有差距的。   首先是一个比较实际的用法,查询语句我们可以查看执行计划,如果是DML语句呢,他是直接变更了还是.........【阅读全文】

阅读(404) | 评论(0) | 转发(0)

发布时间:2017-07-14 23:32:04

  对于事务的隔离级别,MySQL中默认是RR, Oracle中默认是RC,两个事务隔离级别存在着很大的差别,而换句话说,就算是RR的事务隔离级别级别,同是关系型数据库MySQL,SQLServer,postgreSQL也会有一些差别。所以隔离级别的部分还是值得花一些时间来总结一下。   之前看到过丁奇大师的一篇文章,是分析Inno.........【阅读全文】

阅读(230) | 评论(0) | 转发(0)

发布时间:2017-07-13 23:40:51

   MySQL的自增列问题其实很有意思,在重启数据库之后,会按照max(id)+1的方式来计算,这样一个看起来有些别扭的实现方式在早期版本就饱受诟病,在MySQL 5.7都没有解决掉,终于在8.0松口了,计划在这个版本中修复。   而重启会带来自增列一类的潜在问题,而如果不重启其实也有可能会有自增列的不.........【阅读全文】

阅读(1051) | 评论(0) | 转发(0)

发布时间:2017-07-11 23:24:53

   现在我看待一个技术,总是会换一种角度来看,在他能实现什么的基础上,我更喜欢看他不能做什么,为什么不能这么做。   比如MySQL GTID在5.6试水,5.7已经发展完善,但是还是有一些场景是受限的。比如下面的两个。    一个是create table xxx as select 的模式,另外一个是.........【阅读全文】

阅读(1749) | 评论(0) | 转发(1)

发布时间:2017-07-10 23:25:18

今天突然想起一个问题,那就是对于ibdata的恢复,如果我们简单模拟一下,就会发现还是蛮有意思的。首先我们得到两个参数值,一个是刷脏页的指标,另外一个是数据文件的目录。mysql> show variables like '%pct%';+------------------------------------------+-----------+| Variable_name   &n.........【阅读全文】

阅读(1016) | 评论(0) | 转发(0)

发布时间:2017-07-04 23:46:02

   最近看了很多阿里同学的MySQL文章,阿里内核同学的文章一言不合就上代码,不光让我们看到了结果,还能有代码可读,如果碰到了类似的问题,这样的解读确实是很难得的。   今天做了一个小的测试,发现MySQL 5.7中对于count(*)的处理好像有点霸道,没想象中那么好。   为了对比,.........【阅读全文】

阅读(1054) | 评论(1) | 转发(0)

发布时间:2017-07-03 23:36:44

周末总结了下关于MySQL学习的一些思路,当然还有很多需要补充的地方。我是侧重从优化的角度来总结的一部分内容,所以数据迁移,数据管理的部分就和很多地方糅合在了一起。总结之后突然发现对于开发规范和建议的地方自己感触还蛮深。.........【阅读全文】

阅读(121) | 评论(0) | 转发(1)

发布时间:2017-07-03 00:03:16

自MySQL 5.6开始,在索引方面有了一些改进,比如索引条件下推(Index condition pushdown,ICP),严格来说属于优化器层面的改进。如果简单来理解,就是优化器会尽可能的把indexcondition的处理从Server层下推到存储引擎层。举一个例子,有一个表中含有组合索引idx_cols包含(c1,c2,…,cn)n个列,如果在c1上存在范围.........【阅读全文】

阅读(1076) | 评论(0) | 转发(0)

发布时间:2017-07-01 23:13:01

如果让你写一个简单牛叉的SQL,数据库类型不限,你会写出什么样的SQL语句。Oracle   如果是Oracle,我就写个drop table dual;这个SQL看起来很简单,包含的信息量还是蛮大的,首先对于dual表你得有一定的认识和了解,而这个视图和一般的数据字典不同,如果删除之后,直接会导致数据库不可用。恢复.........【阅读全文】

阅读(90) | 评论(0) | 转发(0)

发布时间:2017-06-29 23:55:22

   以前写过一篇Oracle中关于IP地址定位的问题分析,最后引申出了一系列的问题。当时问题紧急严峻,抓取了10053事件定位源头,想出了一个解决妙法,还自鸣得意了下,结果忙活完之后看看行业里的解决方案都大体如此,我的心凉了半截。   我总是希望找到一些与众不同的点来解读这一类问题,结果在.........【阅读全文】

阅读(1466) | 评论(0) | 转发(0)

发布时间:2017-06-28 23:45:31

在MySQL的表结构设计中,突然想起来几个地方碰到的问题比较多,大体来说一个就是字符集,一个就是数据类型。而字符集和数据类型结合起来,就有一个蛮有意思的细节,那就是行长度的问题。比如我们创建一个表使用了varchar的类型,如果指定为gbk,表里含有一个字段,可以指定为32766字节,如果再长一些就不行了。.........【阅读全文】

阅读(1629) | 评论(0) | 转发(0)

发布时间:2017-06-23 23:26:04

最近看到Percona的工程师Agustín写了一篇博客,是关于MySQL触发器和可更新视图的一个观点,具体链接可以参考 https://www.percona.com/blog/2017/06/14/triggers-and-updatable-views/ 官方文档对于触发器的基本描述是这样的:Important: MySQL triggers activate only for changes made to.........【阅读全文】

阅读(1338) | 评论(0) | 转发(0)

发布时间:2017-06-22 23:29:27

   前些天处理了一个需求,当时的数据库环境是Oracle,我算是想尽了Oracle相关的方案,而且在问题的处理过程中,还在不断的琢磨,如果失败了还有什么其他的方案。   所以尽管Oracle这么一个成熟的商业数据库,做起来还是有些难度,需要一些额外的技巧,比如规避bug,间接实现需求等。 &n.........【阅读全文】

阅读(2674) | 评论(0) | 转发(1)

发布时间:2017-06-19 23:16:14

今天看到Franck Pachot? 发了一个Twitter,意思是Oracle里的SQL还能这么写。猛一看确实让人有些意外。禁不住诱惑,自己也尝试了一番。我现在12cR2的环境中测试了一下。Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production尝试上面的步骤,先来看看dual表。SQL> select co.........【阅读全文】

阅读(2158) | 评论(0) | 转发(0)

发布时间:2017-06-15 23:51:24

 MySQL Shell是在官方版本5.7.12推出,工具的初衷本身都是为了解决一类问题,想必官方从很多方面了解到工具的使用情况,支持的开发语言太多,众口难调,所以这么个命令行工具就出来了,从它的推出,足以看到MySQL的格局,它是把很多能做不能做得都揽过来自己做了。根据官方的shell,python,原生SQL,Javascript等,格.........【阅读全文】

阅读(2267) | 评论(0) | 转发(0)

发布时间:2017-06-10 11:05:56

昨天测试了一下mysqlpump,今天来把剩下的补充完成,算是一个小的系列。mysqlpump在MySQL 5.7中做逻辑备份恢复有了一个新的工具mysqlpump,如果你掌握了mysqldump,那么使用mysqlpump就是分分钟的事情,因为很多参数都是很相似的,可以理解它是mysqldump的加强版,一个亮点就是有了并行的选项,使得数据备份的性能.........【阅读全文】

阅读(350) | 评论(0) | 转发(1)

发布时间:2017-06-08 23:25:26

  在MySQL 5.7中做逻辑备份恢复有了一个新的工具mysqlpump,如果你掌握了mysqldump,那么使用mysqlpump就是分分钟的事情,因为很多参数都是很相似的,可以理解它是mysqldump的加强版,一个亮点就是有了并行的选项,使得数据备份的性能更加强大。  有一点值得说明的是,为了保证数据一致性,我们一般备份都.........【阅读全文】

阅读(251) | 评论(0) | 转发(0)

发布时间:2017-06-02 23:32:43

   今天在修复MySQL数据的时候,发现一个看起来“奇怪”的问题。  有一个表里存在一个唯一性索引,这个索引包含3个列,这个唯一性索引的意义就是通过这3个列能够定位到具体1行的数据,但是在实际中却发现这个唯一性索引还是有一个地方可能被大家忽略了。 我们先来看看数据的情况。 .........【阅读全文】

阅读(662) | 评论(0) | 转发(0)
给主人留下些什么吧!~~

dsktt2016-12-30 10:56

lhrbest:建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

你们都是我佩服的!

回复  |  举报

lhrbest2016-07-09 23:31

建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

回复  |  举报

jeanron1002015-09-01 10:49

berlits:可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

你们确实太严格了,说明你的工作是高危,高机密的工作。

回复  |  举报

berlits2015-09-01 00:20

jeanron100:这个还是可以有的,整理个思路,回家发

可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

回复  |  举报

jeanron1002015-08-31 09:28

berlits:公司不让上网,想发都没条件。

这个还是可以有的,整理个思路,回家发

回复  |  举报
留言热议
请登录后留言。

登录 注册