前面只是实现了一个简单的索引方案,因为我们假设的是所有的目录项都是连续存储的。而且一个页的大小是有限的,当数据量比较大的时候显然是不行的,而且如果要将一个目录页中的记录删除,则需要进行大量的数据移动。显然这样是不太好的。 所以想一个解决的方案。我们发现其实这个目录项和我们的用户记录的信息差不多,只不 ...
分类:
数据库 时间:
2019-06-21 18:27:18
阅读次数:
119
explain分析查询 使用 EXPLAIN 关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。这可以帮你分析你的查询语句或是表结构的性能瓶颈。通过explain命令可以得到: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际使用 表之间的引 ...
分类:
数据库 时间:
2019-06-21 18:27:37
阅读次数:
112
Shark简介 前身为Kratos,轻量级Mysql分库分表(Sharding)中间件,丰富的Sharding算法支持(2类4种分片算法),能够方便DBA实现库的水平扩容和降低数据迁移成本。Shark站在巨人的肩膀上(SpringJdbc、Druid),采用与应用集成架构,放弃通用性,只为换取更好的 ...
分类:
数据库 时间:
2019-06-21 18:28:13
阅读次数:
132
下载MYSQL 官网下载MYSQL5.7.21版本,链接地址https://www.mysql.com/downloads/。下载流程图如下: 进入官网点击Community,下载社区版。 找到MYSQL Community Server,点击下方DOWNLOAD,进入下载页面。 滑动到页面底部,官 ...
分类:
数据库 时间:
2019-06-21 18:28:29
阅读次数:
128
normal:表示普通索引 unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique full textl: 表示 全文搜索的索引。 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。用在比较短的文本,如果就一两行字的,普通的 INDE ...
分类:
数据库 时间:
2019-06-21 18:33:49
阅读次数:
210
MySQL Workbench是MySQL提供的连接工具,一直在用它。但是今天运行了一个SQL缺报出如下的错误: 原来 Workbench里有一个设置的地方,能指定查询等待事件。默认超过30秒就会断开查询。 设置的位置如下: Edit -- Preferences -- SQL Editor -- ...
分类:
数据库 时间:
2019-06-21 18:35:27
阅读次数:
411
MySQL记录操作 概览 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 1. 使用INSERT实现数据的插入 2. UPDATE实现数据的更新 3. 使用DELETE实现数据的删除 4. 使用SELECT查询数据以及。 插入数据inse ...
分类:
数据库 时间:
2019-06-21 18:37:01
阅读次数:
97
在 mysql 中, 若一张表里面不存在 varchar、text 以及其变形、blob 以及其变形的字段的话,那么张这个表其实也叫静态表,即该表的 row_format 是 fixed,就是说每条记录所占用的字节一样。其优点读取快,缺点浪费额外一部分空间。 若一张表里面存在 varchar、tex ...
分类:
数据库 时间:
2019-06-21 18:40:31
阅读次数:
126
1. 测试是否允许远程连接 2. 允许特定客户端 ip 地址连接 注意: your-root-password 填写你的服务器 mysql 的密码 如果不知道自己的公网ip,百度一下ip,就可以看到了!,有时还会错,根据报错信息调整即可,不过好像公网Ip会被还是什么的,可以配成识别ip网段的就不会有 ...
分类:
数据库 时间:
2019-06-21 21:07:47
阅读次数:
189
? 前面我们系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块。相信你还记得,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。 那么,一条更新语句的执行流程又是怎样的呢?之前你可能经常听 DBA 同事说,MySQL 可以恢复到半个月内任意一 ...
分类:
数据库 时间:
2019-06-21 21:08:07
阅读次数:
179
exbot@ubuntu:~/wangqinghe/MySql/20190621/01$ g++ connect.cpp -o connect -I /usr/include/mysql/ -L /usr/lib/mysql/ -Imysqlclient /tmp/cceJyiND.o:在函数‘CM ...
分类:
数据库 时间:
2019-06-21 22:19:19
阅读次数:
140
main.cpp mysqlInterface.h mysqlInterface.cpp Makefile: 执行结果: make g++ -c main.cpp -I/usr/include/mysql -L/usr/lib/mysql/ -lmysqlclient g++ -c mysqlInt ...
分类:
数据库 时间:
2019-06-21 22:20:17
阅读次数:
160
数据库连接失败 一、例如我在SpringBoot项目中使用了阿里的数据库连接池Driud。 有次在启动的时候,会报这样的错: 就是数据库连接失败的问题。 二、定位问题 为什么会出现这样的一个问题呢? 出现这样的一个问题,首先确定是不是数据库问题,看看数据库能不能连上。 如果你的同事或者其他人都能够连 ...
分类:
数据库 时间:
2019-06-21 22:39:50
阅读次数:
4179
今日知识1. JDBC基本概念2. 快速入门3. 对JDBC中各个接口和类详解JDBC:1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作数据库 * JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库 ...
分类:
数据库 时间:
2019-06-21 23:44:32
阅读次数:
193
今日知识1. sql注入问题2. jdbc批处理3. 事务SQL注入问题解决1.什么是sql注入。 * 用户通过相关的特殊关键字sql语句非法访问数据库 *例如: Xxx(' or '1'='1 ):sql语句中跟括号的内容,就达到了注入的目的。2. 原因 仔细分析一下,数据库注入成功的根本原因是, ...
分类:
数据库 时间:
2019-06-21 23:46:36
阅读次数:
146
一、 存储过程的概念 存储过程是预编译SQL语句的集合,这些语句存储在一个名称下并作为一个单元来处理,一个存储过程可以包括查询,插入,删除,更新等操作。 实函数和存储过程是相似的,至少在引用的时候跟函数很是一样。或者干脆把存储过程理解为另一种函数,另一种经过优化的函数。它的优点在于,存储过程在被编译 ...
分类:
数据库 时间:
2019-06-21 23:46:53
阅读次数:
148
这个嘛。。。经常写sql写的我怀疑自己;算了还是记下来了再强调一遍!再强调一遍!再强调一遍!;虽然很傻逼。。。 inner join(等值连接) 只返回两个表中联结字段相等的行 ...
分类:
数据库 时间:
2019-06-21 23:47:24
阅读次数:
141
今日知识1. c3p0和Druid使用2. DBUtils使用3. SpringJDBC轻量级框架4. 总结c3p0和Druid使用1. *概念:其实是一个容器(集合),存放数据库的容器。用户访问完在放回池子中2. *好处: 1.节约资源 2. 用户访问高效 3. 实现: 1. 标准接口:DataS ...
分类:
数据库 时间:
2019-06-21 23:47:40
阅读次数:
175
今日知识 数据完整性: 2. 定义主键自动增长: auto_increment 清除:alter table tablename modify id int;(主键还在) 3. 定义唯一约束:unique,值不能重复(但可以都为空) 清除:alter table tablename drop ind ...
分类:
数据库 时间:
2019-06-21 23:48:47
阅读次数:
289
本文根据华南理工大学软件学院《数据库系统》课程及相关教材《数据库系统概念》总结,作复习回顾用。 内容涵盖考试范围,最多到第十四章。 Chapter. 1 引言 数据库管理系统(database-management system, DBMS)由一个互相关联的数据的集合和一组用以访问这些数据的程序组成 ...
分类:
数据库 时间:
2019-06-21 23:50:09
阅读次数:
258