随笔分类 - 数据库
MySQL&Oracle
摘要:昨天看到一个MySQL数据库设计原则:强烈建议表的主键使用整型自增主键。为啥呢? 要弄明白这个问题首先需要了解MySQL是如何维护数据的,你需要知道以下几点: MySQL的InnoDB存储引擎是在B+树上维护表数据的 B+树是一种平衡树 在这棵树上,每个节点在计算机中叫做数据页,默认16k 树的叶子
阅读全文
摘要:来源:BiggerBoy 作者:北哥 原文链接:https://mp.weixin.qq.com/s/fucHvdRK5wRrDfBOo6IBGw 大家好我是北哥,今天整理了MySQL索引相关的知识点及面试常见问题及答案,分享给大家。 以下问题及答案没有特殊说明默认都是针对InnoDB存储引擎,如有
阅读全文
摘要:文章首发于公众号:BiggerBoy 有读者说面试被问到怎么用SQL模拟数据库死锁? 这位读者表示对Java中的死锁还是略知一二的,但是突然用SQL写死锁的案例之前还真没遇到过,这个问题没答上来。所以今天就带大家一起来看下怎么用SQL让数据库中产生死锁。 什么是死锁 说到死锁,还是先来复习下什么是死
阅读全文
摘要:本文主要讲解的内容有:联合索引在B+树上的存储结构,联合索引的查找方式,为什么会有最左前缀匹配原则
阅读全文
摘要:ORA-12519: TNS:no appropriate service handler found 当使用阿里的Druid连接池时报的这个错,也是同样的原因 重启应用时报错,错误信息如题, ORA-12516:TNS:监听程序找不到符合协议堆栈要求的可用处理程 ,然后项目启动失败,使用可视化工具
阅读全文
摘要:做 MySQL 查询优化遇到明明建了索引查询仍然很慢,看这个 SQL 的执行计划,看它到底有没有用到索引,执行的具体情况。我们可以用 EXPLAIN 命令查看 SQL 的执行计划,SQL 优化的重要性和执行计划密切相关。 EXPLAIN 能够让我们了解到MySQL将如何执行出现在 EXPLAIN 之
阅读全文
摘要:EXPLAIN命令输出的列中Extra字段可选值较多,这里单独说一下。 该Extra列 EXPLAIN输出包含MySQL解决查询的额外信息。以下列表说明了此列中可能出现的值。每个项目还指示JSON格式的输出哪个属性显示Extra值。对于其中一些,有一个特定的属性。其他显示为message 属性的文本
阅读全文
摘要:平时用可视化界面用惯了,如果紧急排查问题,没有安装可视化工具的话,只能通过命令来看了。 以备不时之需,我们要熟悉一下命令行操作MySQL。 打开DOS命令窗口:WIN + R 输入cmd,回车 然后输入命令:mysql -uroot -proot -h127.0.0.1 【-u 用户名 -p密码 -
阅读全文
摘要:事务的四大ACID 属性 Atomicity 原子性、Consistency 一致性、Isolation 隔离性、Durability 持久性。 原子性: 事务是最小的执行单位不可分割,强调事务的不可分割 一致性: 事务执行前后,数据的完整性保持一致。 隔离性: 一个事务执行的前后不应该受到其他事务
阅读全文
摘要:网上关于JNDI和JDBC的定义有很多,但是都很官方不容易理解,下面是我最近查阅资料得出的心得体会。希望对你在理解上有一点点的帮助,说的不对的请指正哦。 JDBC: 看到最多的就是 Java Database Connectivity (JDBC)是一个标准的Java API,它由一组类和接口组成,
阅读全文
摘要:查找指定库中所有表名 select table_name from information_schema.tables where table_schema='db_name'; 注:替换db_name为自己的数据库名 示例 select table_name from information_sc
阅读全文
摘要:MySQL数据库中: 查询某个数据库中某个表的所有列名 查询某个数据库中某个表的所有列名,并用逗号连接 注意:只需要替换db_name(数据库名)和tb_name(表名)
阅读全文
摘要:Oracle中rownum可以用来限制查询 具体用法: 1、返回查询集合中的第1行 2、返回查询集合中的第2行 错误示例: 正确示例: 提高效率可以这样写: 即加上 =1或写成 =0是没问题的 4、返回查询集合中的第3 5行 错误示例: 这样返回为空 rownum不可以用于 或 =,除非是后面跟0或
阅读全文