- 博客(22)
- 资源 (4)
- 收藏
- 关注
原创 mysql系列一:查看mysql服务配置文件的位置
which mysqld/usr/sbin/mysqld --verbose --help | grep -A 1 'Default options'Default options are read from the following files in the given order:/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/....
2019-05-28 17:04:41 14176
转载 java字节序、主机字节序和网络字节序
java程序员是幸福,因为相对于C/C++的不跨平台,JVM为我们屏蔽了大量的底层细节和复杂性,让我们能够将精力放在实现特定的业务逻辑上,所以使用java开发项目效率是比较高的。同时java程序员是悲哀的,就是因为JVM屏蔽了很多技术细节,导致java程序员基本功普遍较差,对一些基本概念理解不深,甚至根本没有听说过。作为一个java程序员,我深深的感到自己知识面的狭窄。无意中看到了字节序,以前竟...
2019-05-27 20:09:34 645
转载 mysqlICP(Index Condition Pushdown) 索引条件下推
语法:explain select ....变体:1.explain extended select ....将执行计划“反编译”成select语句;运行show warnings 可以得到被mysql优化器优化后的语句2.explain partitions select ...用于分区表的explain运行结果含义:type: all ,index,ra...
2019-05-23 20:12:30 375
转载 MySQL InnoDB B-Tree索引使用Tips
MySQL InnoDB B-Tree索引使用Tips这里主要讨论一下InnoDB B-Tree索引的使用,不提设计,只管使用。B-Tree索引主要作用于WHERE和ORDER BY子句。这里讨论的均在MySQL-Server-5.1.42测试CREATE TABLE `friends` ( `ID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `...
2019-05-23 18:23:04 154
转载 BTree和B+Tree详解
B+树索引是B+树在数据库中的一种实现,是最常见也是数据库中使用最为频繁的一种索引。B+树中的B代表平衡(balance),而不是二叉(binary),因为B+树是从最早的平衡二叉树演化而来的。在讲B+树之前必须先了解二叉查找树、平衡二叉树(AVLTree)和平衡多路查找树(B-Tree),B+树即由这些树逐步优化而来。二叉查找树二叉树具有以下性质:左子树的键值小于根的键值,右子树的键值大...
2019-05-23 10:44:39 189
转载 UTF-8编码占几个字节?
占2个字节的:带有附加符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文及它拿字母则需要二个字节编码占3个字节的:基本等同于GBK,含21000多个汉字占4个字节的:中日韩超大字符集里面的汉字,有5万多个一个utf8数字占1个字节一个utf8英文字母占1个字节少数是汉字每个占用3个字节,多数占用4个字节。占用3个字节的范围...
2019-05-23 10:43:26 2148
原创 oracle物化视图的两个典型应用场景
物化视图是oracle一个比较有特色的东西,自oracle9i起,应用非常广泛,不像mysql,不支持原生物化视图,要借助flexviews去实现。物化视图到底有什么用呢?要回答这个问题,必须先搞清楚物化视图与普通视图的区别:物化视图是有一个与之对应的容器表的。容器表是一个跟物化视图同名的“规则”的表,用于存储查询返回的结果集。这是物化视图与普通视图的根本区别,它是有储存结果集的“物理存在”的......
2019-05-22 20:48:16 128
原创 MySQL创建临时表的情况
MySQL在以下几种情况会创建临时表:1、UNION查询;2、用到TEMPTABLE算法或者是UNION查询中的视图;3、ORDER BY和GROUP BY的子句不一样时;4、表连接中,ORDER BY的列不是驱动表中的;5、DISTINCT查询并且加上ORDER BY时;6、SQL中用到SQL_SMALL_RESULT选项时;7、FROM中的子查询;8、子查询或者semi-j...
2019-05-22 20:25:38 1181
转载 MySQL-join的实现原理、优化及NLJ算法
案例分析:select c.*from hotel_info_original c left join hotel_info_collection h on c.hotel_type=h.hotel_type and c.hotel_id =h.hotel_id where h.hotel_id is null 这个s...
2019-05-22 20:22:05 379
转载 MySQL JOIN原理
先看一下实验的两张表:表comments,总行数28856表comments_for,总行数57,comments_id是有索引的,ID列为主键。以上两张表是我们测试的基础,然后看一下索引,comments_for这个表comments_id是有索引的,ID为主键。最近被公司某一开发问道JOIN了MySQL JOIN的问题,细数之下发下我对MySQL JOIN的理解并不是很...
2019-05-22 20:12:20 156
转载 全局唯一id生成之雪花算法
雪花算法(Twitter_Snowflake)我们知道,分布式全局唯一id的生成,一般是以下几种:基于雪花算法生成基于数据库基于redis基于zookeeper本文说下雪花算法,后面附源码以及测试代码。如下图:如上图:雪花算法生成的id,总共64位第一位作为保留位,默认0中间41位用来存放时间戳,是当前时间与初始时间的差值,(1L << 41) / (100...
2019-05-22 18:46:42 7042 4
转载 MySQL 使用自增ID主键和UUID 作为主键的优劣比较详细过程(从百万到千万表记录测试)
测试缘由一个开发同事做了一个框架,里面主键是uuid,我跟他建议说mysql不要用uuid用自增主键,自增主键效率高,他说不一定高,我说innodb的索引特性导致了自增id做主键是效率最好的,为了拿实际的案例来说服他,所以准备做一个详细的测试。作为互联网公司,一定有用户表,而且用户表UC_USER基本会有百万记录,所以在这个表基础上准测试数据来进行测试。 测试过程...
2019-05-22 18:02:26 620 1
原创 分表依据和MySQL查看数据库表容量大小
分表:单表行数超过500万行,或者单表容量超过2GB。1.查看所有数据库容量大小selecttable_schema as '数据库',sum(table_rows) as '记录数',sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',sum(truncate(index_length/1024/1024, 2)) as ...
2019-05-22 17:08:58 611
转载 Spring IOC容器初始化(SpringBoot)
1. 一些疑问@Component,@Service,@Controller,@Repository@Bean等注解怎么实现的? @Autowired,@Resource 是怎么自动装配的? @ComponentScan 为什么就可以扫描注册Bean2. IOC 容器 示意图Spring IOC :Bean定义的定位,Bean 可能定义在XML中,或者一个注解,或者其他形式。这些...
2019-05-12 00:08:25 427
转载 Spring 钩子之BeanFactoryPostProcessor和BeanPostProcessor的源码学习
BeanFactoryPostProcessor和BeanPostProcessor这两个接口都是初始化bean时对外暴露的入口之一,和Aware类似(PS:关于spring的hook可以看看Spring钩子方法和钩子接口的使用详解讲的蛮详细)本文也主要是学习具体的钩子的细节,以便于实际开发中我们能有效率,例如如何在scala中如何获取springboot的启动类等等,一些中间件为了监控整个系统的...
2019-05-12 00:05:41 94
转载 JDK、CGLIB、Spring 三种实现代理的区别(三)Spring的ProxyFactory
之前两篇文章中我们说到了JDK proxy和CGLIB实现动态代理的方式,这回说说Spring的方式。Spring中代理对象可通过xml配置方式获得,也可通过ProxyFactory手动编程方式创建对象。我们主要讲手动编程的方式。Spring中的代理对象其实是JDK Proxy和CGLIB Proxy 的结合。下面我们使用ProxyFactory的方式创建代理对象,顺便看看和JDK的proxy...
2019-05-11 23:42:08 139
转载 spring监听机制——观察者模式的应用
使用方法spring监听模式需要三个组件:1. 事件,需要继承ApplicationEvent,即观察者模式中的"主题",可以看做一个普通的bean类,用于保存在事件监听器的业务逻辑中需要的一些字段;2. 事件监听器,需要实现ApplicationListener<E extends ApplicationEvent>,即观察者模式中的"观察者",在主题发生变化时收到通知,...
2019-05-11 23:02:17 206
转载 spring security的permitAll以及webIgnore的区别
permitAll配置实例@EnableWebSecuritypublic class SecurityConfig extends WebSecurityConfigurerAdapter { @Override public void configure(HttpSecurity http) throws Exception { http ...
2019-05-10 10:39:43 6474
转载 Spring 钩子之BeanFactoryPostProcessor和BeanPostProcessor的源码学习
BeanFactoryPostProcessor和BeanPostProcessor这两个接口都是初始化bean时对外暴露的入口之一,和Aware类似(PS:关于spring的hook可以看看Spring钩子方法和钩子接口的使用详解讲的蛮详细)本文也主要是学习具体的钩子的细节,以便于实际开发中我们能有效率,例如如何在scala中如何获取springboot的启动类等等,一些中间件为了监控整个系统的...
2019-05-09 18:41:46 145
转载 Spring的原理性总结
一、Bean的生命过程Bean的生命过程可以借鉴Servlet的生命过程,了解其生命过程对于不管是思想还是以后的使用都很有帮助;Bean可以通过两种方式进行加载,分别是使用BeanFactory 和 applicationContext, 下边就这两种方式进行Bean的声明周期总结:applicationContext:先用一种生命周期流程图来概括;1:Bean的建立:...
2019-05-08 20:51:42 403
全文检索详细设计文档.docx
2020-03-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人