mysql+Oracle
一点寒芒先至
这个作者很懒,什么都没留下…
展开
-
mysql -- 递归查询所有子节点
DELIMITER //CREATE FUNCTION `getChildLst`(rootId INT)RETURNS varchar(1000) READS SQL DATABEGIN DECLARE sTemp VARCHAR(1000); DECLARE sTempChd VARCHAR(1000); SET sTemp = '$'; SET s...转载 2019-10-17 16:21:55 · 441 阅读 · 2 评论 -
mysql进阶(十二)为什么我的MySQL会“抖”一下*
平时的工作中,不知道你有没有遇到过这样的场景,一条SQL语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很难复现,它不只随机,而且持续时间还很短。看上去,这就像是数据库“抖”了一下。今天,我们就一起来看一看这是什么原因。你的SQL语句为什么变“慢”了在前面第2篇文章《日志系统:一条SQL更新语句是如何执行的?》中,我为你介绍了WAL机制。现在你知道...转载 2019-04-29 09:08:27 · 392 阅读 · 0 评论 -
mysql进阶(十三)为什么表数据删掉一半,表文件大小不变*
经常会有同学来问我,我的数据库占用空间太大,我把一个最大的表删掉了一半的数据,怎么表文件的大小还是没变?那么今天,我就和你聊聊数据库表的空间回收,看看如何解决这个问题。这里,我们还是针对MySQL中应用最广泛的InnoDB引擎展开讨论。一个InnoDB表包含两部分,即:表结构定义和数据。在MySQL 8.0版本以前,表结构是存在以.frm为后缀的文件里。而MySQL 8.0版本,则已经允许...转载 2019-04-30 09:12:14 · 381 阅读 · 0 评论 -
mysql进阶(二十六)并行复制策略
如果备库执行日志的速度持续低于主库生成日志的速度,那这个延迟就有可能成了小时级别。而且对于一个压力持续比较高的主库来说,备库很可能永远都追不上主库的节奏。按表分发策略(略)按行分发策略(略)MySQL 5.6版本的并行复制策略官方MySQL5.6版本,支持了并行复制,只是支持的粒度是按库并行。MySQL 5.7的并行复制策略在MariaDB并行复制实现之后,官方的My...转载 2019-05-09 20:05:40 · 627 阅读 · 0 评论 -
mysql优化1-explain解析
索引失效的因素:1.存储引擎不能使用索引中范围条件右边的列2.!= 或<> 会全表扫描3.is null is not null 会索引失效4.like以通配符开头% 会索引失效5.or 会索引失效6.like %放在第一位 会索引失效1. id(表的读取顺序)查询顺序 t3--derived2--t22. select_t...转载 2019-06-05 15:28:41 · 153 阅读 · 0 评论 -
mysql优化3-show profiles和show processlist
show profilesshow variables like 'profiling'; set profiling=on; 启用profilenavicat自带的剖析功能show profiles;show profile cpu,block io for query +id;不宜出现以下4个全局查询日志永远不要在...转载 2019-06-14 15:26:35 · 440 阅读 · 0 评论 -
mysql优化2-exists用法及order by及慢日志查询
exists 的用法select * from t where t.deptId in (select id from s) 等于select * from t where exists (select 1 from s where s.id=t.deptId)order by慢日志查询( show global status like '%Slo...转载 2019-06-10 18:03:09 · 901 阅读 · 0 评论 -
mysql--MariaDB-10.1.29安装与主备
参考https://www.linuxidc.com/Linux/2018-03/151403.htmhttps://blog.51cto.com/aimax/2123440安装文件链接:https://pan.baidu.com/s/1oicH9pP7LXzph2UkO6_eUA提取码:ds8k安装yum install -y boost-deve...原创 2019-06-18 18:46:56 · 555 阅读 · 0 评论 -
分布式专题(十二)mysql分库分表及mycat
分库分表解决的问题超大容量问题性能问题1.垂直切分和水平切分 垂直切分 垂直分库:解决的是表过多的问题 垂直分表:解决单表列过多的问题 水平切分:大数据表拆成小表拆分策略:垂直拆分(er分片)水平拆分一致性hash范围切分 可以按照ID日期拆分拆分以后带来的问题1.跨库join的问题,用...原创 2018-12-13 11:04:41 · 295 阅读 · 0 评论 -
mysql45讲,读后笔记
摘录自 极客时间 的丁奇链接:https://time.geekbang.org/column/article/67888重要的日志模块:redo log有了redo log,InnoDB就可以保证即使数据库发生异常重启,之前提交的记录都不会丢失,这个能力称为crash-safe。重要的日志模块:binlog这两种日志有以下三点不同。 redo log是InnoD...转载 2019-04-19 10:12:00 · 426 阅读 · 0 评论 -
ORACLE 的 instr ()函数
在oracle中没有indexof()函数 但是提供了一个 instr() 方法 具体用法: select instr('保定市南市区','市',1,1)-1 from dual; 解释:1. '保定市南市区' =>可以是表达式,也可以是具体数据 2. '市'=>为分离的标志,这里为两组数据中的“市”这个字 3. 第一个1为转载 2017-06-09 10:00:15 · 489 阅读 · 6 评论 -
Oracle常见函数
原文----10分钟以内的ceil(n) 取大于等于数值n的最小整数;floor(n)取小于等于数值n的最大整数;oracle两个时间相减默认的是天数;oracle 两个时间相减默认的是天数*24*60 为相差的分钟数CASE WHEN A.DEV_STATUS = 0 AND ceil(( SYSDATE - DEV_OPERATE_TIME ) * 24 * 60 )...转载 2017-06-27 17:16:29 · 265 阅读 · 0 评论 -
start with connect by prior 递归查询用法
点击打开链接这个子句主要是用于B树结构类型的数据递归查询,给出B树结构类型中的任意一个结点,遍历其最终父结点或者子结点。先看原始数据: 1 create table a_test 2 ( parentid varchar2(10), 3 subid varchar2(10)); 4 5 insert into a_test values ( '1转载 2017-05-12 14:29:11 · 716 阅读 · 3 评论 -
rownum between连用为什么得不到数据呢?
rownum在使用select查询的时候,自动生成的一串顺序号。在每返回一条数据结果的时候,rownum就自动加一。简单的说,是对结果集加的一个伪列,是oracle数据库从数据文件或缓冲区中读取数据的顺序。用>,>=,=,between...and这几个条件结果是没有数据的,因为你从缓冲区或数据文件中查询得到的第一条记录的rownum为1,则会被删除的,接着读取下一条数据,可是它的rownum又变转载 2017-06-07 18:12:39 · 2117 阅读 · 0 评论 -
Oracle序列+触发器+主键(实现主键自增)
1.SEQUENCE(序列)-- Create sequence create sequence table_name_ID_SEQminvalue 1maxvalue 9999999999start with 1increment by 1cache 20;2.触发器(triggers)CREATE OR REPLACE TRIGGER原创 2017-04-18 15:09:35 · 714 阅读 · 0 评论 -
oracle命令
SQL> select count(*) from v$session #当前的连接数SQL> Select count(*) from v$session where status='ACTIVE' #并发连接数SQL> select value from v$parameter where name = 'processes' --数据库允许的最大连接数SQL&...转载 2018-04-02 09:58:55 · 177 阅读 · 0 评论 -
mysql进阶(十)MySQL为什么有时候会选错索引*
你写SQL语句的时候,并没有主动指定使用哪个索引。也就是说,使用哪个索引是由MySQL来确定的。不知道你有没有碰到过这种情况,一条本来可以执行得很快的语句,却由于MySQL选错了索引,而导致执行速度变得很慢?我们一起来看一个例子吧。我们先建一个简单的表,表里有a、b两个字段,并分别建上索引:CREATE TABLE `t` ( `id` int(11) NOT NULL, ...转载 2019-04-26 08:22:21 · 179 阅读 · 0 评论 -
行列转换
Oracle 11g 行列转换--privot和unpivot子句https://blog.csdn.net/E_xiake/article/details/52840696mysql之行列转换https://www.jb51.net/article/99017.htmhttps://blog.csdn.net/yijianqingyu/article/details/80105...转载 2019-04-22 11:56:10 · 253 阅读 · 0 评论 -
mysql优化
date_format(date,'%Y-%m-%d') ————–>oracle中的to_char();str_to_date(date,'%Y-%m-%d') ————–>oracle中的to_date();IFNULL ————–> oracle nvl组合索引遵循最左原则(具体略)1.数据库事务的四个特性及含义原子性:事务要么全部被执...转载 2018-12-12 12:27:18 · 333 阅读 · 0 评论