![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 77
兰亭落雪
目的不能抵达怎么付出都是偏差。
展开
-
Mysql 存储引擎的区别和比较
MyISAM存储引擎 MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事务。 MyISAM主要特性有: 1、大文件(达到63位文件长度)在支持大文件的文件系统和操作系统上被支持。 2、当把删除和更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片。这要通过合并相邻被删除的块,以及...原创 2019-03-20 17:59:52 · 150 阅读 · 0 评论 -
redis
1、什么是Redis? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种...原创 2019-03-17 19:52:44 · 215 阅读 · 0 评论 -
MongoDB
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoD...原创 2019-03-17 19:52:55 · 86 阅读 · 0 评论 -
NoSQL
什么是NoSQL? NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。 NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。 为什么使用NoSQL ? 今天我们可以通过第三方平台(如:Goo...原创 2019-03-17 19:53:06 · 154 阅读 · 0 评论 -
Sqlite3
SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3的简要说明. 一.Sqlite3一些常用Sql语句操作 创建表: create table 表名(元素名 类型,…); 删除表: drop table 表名; 插入数据...原创 2019-03-17 20:30:53 · 676 阅读 · 0 评论 -
MySQL索引优化
一、导致SQL执行慢的原因: 1.硬件问题。如网络速度慢,内存不足,I/O吞吐量小,磁盘空间满了等。 2.没有索引或者索引失效。(一般在互联网公司,DBA会在半夜把表锁了,重新建立一遍索引,因为当你删除某个数据的时候,索引的树结构就不完整了。所以互联网公司的数据做的是假删除.一是为了做数据分析,二是为了不破坏索引 ) 3.数据过多(分库分表) ...转载 2019-03-24 15:52:45 · 474 阅读 · 0 评论 -
MySQL 的Join及底层实现原理
mysql只支持一种join算法:Nested-Loop Join(嵌套循环连接),但Nested-Loop Join有三种变种: 原理: 1.Simple Nested-Loop Join: 如下图,r为驱动表,s为匹配表,可以看到从r中分别取出r1、r2、......、rn去匹配s表的左右列,然后再合并数据,对s表进行了rn次访问,对数据库开销大 2.Index Nested-Lo...转载 2019-03-24 16:03:55 · 2541 阅读 · 1 评论 -
MySQL存储引擎MyISAM和InnoDB底层索引结构
一 、存储引擎作用于什么对象 存储引擎是作用在表上的,而不是数据库。 二 、MyISAM和InnoDB对索引和数据的存储在磁盘上是如何体现的 先来看下面创建的两张表信息,role表使用的存储引擎是MyISAM,而user使用的是InnoDB: 再来看下两张表在磁盘中的索引文件和数据文件: 1. role表有三个文件,对应如下: role.frm:表结构文件 role....原创 2019-05-09 22:06:09 · 256 阅读 · 0 评论 -
MySQL怎样从binlog文件指定时间去恢复数据,或者从指定位置恢复数据
binlog默认保留0天(永不过期) binlog哪三种模式,优缺点 Mysql复制主要有三种方式:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混合模式复制(mixed-based replication, MBR)。 对应的,binlog的格式也有三种:STA...转载 2019-05-29 17:17:24 · 1241 阅读 · 0 评论 -
MySQL、Redis、MongoDB对比
特点: 1-1 MySQL: 1. 使用c和c++编写,并使用了多种编译器进行测试,保证源代码的可移植性 2. 支持多种操作系统 3. 为多种编程语言提供可API 4. 支持多线程,充分利用CPU资源 优化的SQL查询算法,有效的提高查询速度 5. 提供多语言支持,常见的编码如:GB2312、BIG5、UTF8 6. 提供TCP/IP、ODBC和JDBC等多种数据库连接途径 提供...原创 2019-03-17 19:52:17 · 484 阅读 · 0 评论 -
sql面试题
1.sql语句应该考虑哪些安全性? (1)防止sql注入,对特殊字符进行转义,过滤或者使用预编译的sql语句绑定变量。 (2)最小权限原则,特别是不要用root账户,为不同的类型的动作或者组建使用不同的账户。 (3)当sql运行出错时,不要把数据库返回的错误信息全部显示给用户,以防止泄漏服务器和数据库相关信息。 2.简单描述mysql中,索引,主键,唯一索引,联合索引的区别,对数据库的性能...原创 2019-03-17 19:46:32 · 221 阅读 · 0 评论 -
MYSQL 项目中的实际运用
目录 1、CAST 2、select 1 3、CASE WHEN THEN ELSE END 4、对表字段名的操作 5、派生表 6、嵌套查询 7、while,if 8、临时表 9、读写操作的影响行数 10、NULL相关函数 11、分组聚合 12、时间戳 13、变量赋值 14、备份表 15、DATE函数 1、CAST CAST强转函数语法规则是...原创 2019-03-17 19:31:46 · 271 阅读 · 0 评论 -
设计数据库
一、我们该如何设计数据库(一)https://www.cnblogs.com/CrazyJinn/archive/2012/04/27/2457409.html 二、我们该如何设计数据库(二)https://www.cnblogs.com/CrazyJinn/archive/2012/08/20/2637459.html 三、我们该如何设计数据库(三)https://www.cnblogs.c...原创 2019-02-17 16:46:02 · 673 阅读 · 0 评论 -
SQL语句练习
一.通过Sql实现根据分组合并指定列内容的查询 问题: 最近在做一个项目的时候,遇到这样一个要求,模拟要求如下: ID SName 1 张三 1 李四 2 刘六 2 王五 要的结果是 ID name 1 张三,李四 2 刘六,王五 即按ID组查询,并将相同的ID对应SName内容通过逗号合并 解决思路: 通过传递不同的id给函数,查询出...原创 2019-02-17 16:32:25 · 163 阅读 · 0 评论 -
事务的实现原理
在关系型数据库中,事务的重要性不言而喻,只要对数据库稍有了解的人都知道事务具有 ACID 四个基本属性,而我们不知道的可能就是数据库是如何实现这四个属性的;在这篇文章中,我们将对事务的实现进行分析,尝试理解数据库是如何实现事务的,当然我们也会在文章中简单对 MySQL 中对 ACID 的实现进行简单的介绍。 事务其实就是并发控制的基本单位;相信我们都知道,事务是一个序列操作,其中的操作要么...原创 2018-12-04 20:16:25 · 11258 阅读 · 4 评论 -
存储引擎
存储引擎介绍: InnoDB引擎: 1.将数据存储在表空间中,表空间由一系列的数据文件组成,由InnoDB管理; 2.支持每个表的数据和索引存放在单独文件中(innodb_file_per_table); 3.支持事务,采用MVCC来控制并发,并实现标准的4个事务隔离级别,支持外键; 4.索引基于聚簇索引建立,对于主键查询有较高性能; 5.数据文件的平台无...原创 2018-12-04 20:14:14 · 306 阅读 · 0 评论 -
数据库的简介与类型
1.1 什么是数据库? 简单的说,数据库(英文Dtabase)就是一个存放数据的仓库,这个仓库是按照一定的数据结果(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的、我们可以通过数据库提供的多种方法来管理数据库里的数据更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同。 1.2 数据库的种类 早期比较流行...转载 2019-03-17 19:24:19 · 550 阅读 · 0 评论 -
MySQL数据库
定义: 键:在数据库中关键码(简称,键)由一个或多个属性组成。在实际应用中,有下列键 超键:在关系中能唯一标识元组的属性集称为关系模式的超键 候选键:不含有多余属性的超键称为候选键 主键:用户选作元组标识的候选键称为主键 集合关系: 举例: 超键:用定义解释,如下属性集 {学号} {身份证号} {学号,姓名} {学号,身份证号}等等,只要可以确定一条唯一记录的集合即可 候选...原创 2019-03-17 19:24:59 · 234 阅读 · 0 评论 -
存储过程详解
存储过程简介 什么是存储过程:存储过程可以说是一个记录集吧,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。存储过程的好处: 1.由于数据库执行动作时,是先编译后执行的。然而存储过程是一个编译过的代码块,所以执行效率要比T-SQL语句高。 2.一个存储过程在程序在网络...原创 2019-03-17 19:35:31 · 203 阅读 · 0 评论 -
Redis
1.什么是redis? Redis 是一个基于内存的高性能key-value数据库。 2.Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知...原创 2019-03-17 19:29:01 · 168 阅读 · 0 评论 -
Mysql事务原理介绍
事务 一个事务会涉及到大量的cpu计算和IO操作,这些操作被打包成一个执行单元,要么同时都完成,要么同时都不完成. 事务是一组原子性的sql命令或者说是一个独立的工作单元,如果数据库引擎能够成功的对数据库应用该组的全部sql语句,那么就执行该组命令 如果其中有任何一条语句因为崩溃或者其它原因无法执行,那么该组中所有的sql语句都不会执行 如果没有显示...原创 2019-09-03 09:25:41 · 161 阅读 · 0 评论