数据库SQL
文章平均质量分 92
Kevinvcc200
未来的你一定会感谢现在拼命的自己!
展开
-
【MySQL】20个经典面试题
原文链接:http://bbs.51cto.com/thread-1470880-1.htmlPart2:经典题目1、MySQL的复制原理以及流程基本原理流程,3个线程以及之间的关联;2、mysql中myisam与innodb的区别,至少5点(1)、问5点不同;(2)、innodb引擎的4大特性(3)、2者select转载 2017-08-16 10:16:36 · 226 阅读 · 0 评论 -
MYSQL相比于其他数据库有哪些特点?
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,现在已经被Sun公司收购,支持FreeBSD、Linux、MAC、Windows等多种操作系统与其他的大型数据库例如Oracle、DB2、SQL Server等相比功能稍弱一些。其特点有:1、可以处理拥有上千万条记录的大型数据2、支持常见的SQL语句规范3、可移植行高,安装简单小巧4、良好的运行效率,有原创 2017-08-15 16:16:04 · 52646 阅读 · 2 评论 -
MySQL数据表类型与存储引擎类型
五种不同表类型MySQL实际上支持五种不同的表类型.这五种类型分别是BDB、HEAP、ISAM、MERGE以及MyISAM。其中BDB类型单独属于一类,称为“事务安全型”(transaction-safe),其余的表类型属于第二类,称为“非事务安全型”(non-transaction-safe)。 1,ISAM数据表 mysql3.23版本之前的mysql支特的唯一一种表类型,目前原创 2017-08-15 16:52:57 · 851 阅读 · 0 评论 -
数据库设计的三个范式
关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设计出错误的数据库. 目前,主要有六种范式:第一范式、第二范式、第三范式、BC范式、第四范式和第五范式。满足最低要求的叫第一范式,简称1NF。在第一范式基础上进一步满足一些要求的为第二范式,简称2NF原创 2017-08-14 10:24:53 · 555 阅读 · 0 评论 -
数据库事务隔离级别
目录(?)[+] 定义: 在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted(未授权读取、读未提交)、Read committed(授权读取、读提交)、Repeatable read(可重复读取)、Serializable(序列化),这原创 2017-08-14 10:49:32 · 234 阅读 · 0 评论 -
***********mysql关于多表查询解说详解****************
http://www.zsythink.net/archives/1105转载 2017-09-15 18:10:36 · 219 阅读 · 0 评论 -
MySQL数据高级查询之连接查询、联合查询、子查询
连接查询连接查询: 将多张表(>=2)进行记录的连接(按照某个指定的条件进行数据拼接)。连接查询的意义: 在用户查看数据的时候,需要显示的数据来自多张表.连接查询: join, 使用方式: 左表 join 右表;左表: 在join关键字左边的表;右表: 在join关键字右边的表连接查询分类:SQL中将连接查询分成四类: 内连接,外连接,自然连接和交叉连接原创 2017-09-15 16:47:49 · 239 阅读 · 0 评论 -
mysql 慢查询日志
Mysql查询与索引优化分析 在优化MySQL时,通常需要对数据库进行分析,常见的分析手段有慢查询日志,EXPLAIN 分析查询,profiling分析以及show命令查询系统状态及系统变量,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。慢查询定义及作用慢查询日志,顾名思义,就是查询慢的日志,是指MySQL记录所有执行超过long_q原创 2017-08-16 10:58:07 · 631 阅读 · 0 评论 -
什么是死锁及死锁的必要条件和解决方法
进程死锁及解决办法操作系统 2009-09-24 16:48:58 阅读767 评论1 字号:大中小 订阅 一、要点提示(1) 掌握死锁的概念和产生死锁的根本原因。(2) 理解产生死锁的必要条件--以下四个条件同时具备:互斥条件、不可抢占条件、占有且申请条件、循环等待条件。(3) 记住解决死锁的一般方法,掌握死锁的预防和死锁的避免二者的基本思想。(4) 掌握原创 2017-09-16 19:47:14 · 265 阅读 · 0 评论 -
MySQL死锁问题分析及解决方法实例详解
MySQL死锁问题是很多程序员在项目开发中常遇到的问题,现就MySQL死锁及解决方法详解如下:1、MySQL常用存储引擎的锁机制MyISAM和MEMORY采用表级锁(table-level locking)BDB采用页面锁(page-level locking)或表级锁,默认为页面锁InnoDB支持行级锁(row-level locking)和表级锁,默认为行级锁2、各种锁特点原创 2017-09-16 09:31:28 · 620 阅读 · 0 评论 -
MySQL产生死锁的根本原因及解决方法
一、 什么是死锁死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等的进程称为死锁进程.二、 死锁产生的四个必要条件•互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至原创 2017-09-16 09:29:51 · 31160 阅读 · 0 评论 -
数据库常见面试题
1. 主键 超键 候选键 外键主 键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。超 键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余原创 2017-08-15 15:25:00 · 328 阅读 · 0 评论 -
聚簇索引与非聚簇索引的区别
通常情况下,建立索引是加快查询速度的有效手段,但是索引不是万能的,仅仅依赖索引并不能实现对所有数据的快速存取。事实上,如果索引策略与数据检索需求严重不符的话,建立索引反而会降低查询性能。因此在实际使用当中,应当充分考虑索引的开销,包括磁盘空间的开销及处理开销(如:资源开销与加锁)。例如,数据如果频繁的跟新或删加,就不宜建立索引。 本文简要讨论一下聚簇索引的特点及其与非聚簇索引的区别原创 2017-08-15 11:00:25 · 289 阅读 · 0 评论 -
MySQL日志文件之错误日志和慢查询日志详解
实验环境:MySQL Community Server (GPL) 5.7.17、Ubuntu 16.04一、MySQL日志文件分类官方文档:https://dev.mysql.com/doc/refman/5.7/en/server-logs.html日志文件记录了影响mysql数据库的各种类型活动。常见的日志有以下几个:1、错误日志(error原创 2017-08-15 10:18:01 · 395 阅读 · 0 评论 -
MySQL高级查询——连接查询实例详解(内外自然连接)
前言我们使用SQL查询不能只使用很简单、最基础的SELECT语句查询。如果想从多个表查询比较复杂的信息,就会使用高级查询实现。常见的高级查询包括多表连接查询、内连接查询、外连接查询与组合查询等,今天我们先来学习最常用、面试也很容易被问到的连接查询。我们今天以一个简单的学生信息表(学生ID、学生姓名、学生性别)与一个学生成绩表(学生ID、学生成绩、成绩等级)作演示:stude原创 2017-08-16 16:13:06 · 5448 阅读 · 3 评论 -
mysql数据库引擎:MyISAM和InnoDB(性能优化)
mysql 优化系列(一) Mysql数据库引擎性能测试 Mysql 数据库中,最常用的两种引擎是innordb和myisam。Innordb的功能要比myiasm强大很多,但是innordb的性能要比myisam差很多,如果你的网站只是做简单的查询,更新,删除,那么用myiasm是最好的选择。所有的性能测试在:Micrisoft window xp sp2 , Intel(R)原创 2017-08-17 10:34:56 · 509 阅读 · 0 评论 -
mysql引擎Innodb和Myisam对比介绍和优缺点
一.myisam引擎 1.mysql默认引擎,不支持事务* 2.表级锁定,更新时,锁定机制是整张表被锁定,其它连接无法更新表的数据,效率比较低下.锁的机制成本很少,但大大降低了并发性能* 3.读写互相阻塞,写的时候阻塞读,读的时候也阻塞写,但读与读之间不阻塞* 4.只对索引进行缓存,虽然key_buffer可以大幅提高性能,减少磁盘IO,但对数据不缓存原创 2017-08-17 15:12:18 · 3782 阅读 · 0 评论 -
drop、truncate和delete的区别
drop、truncate和delete的区别相同点:1.truncate和不带where子句的delete、以及drop都会删除表内的数据;2.drop、truncate都是DDL语句(数据定义语言),执行后会自动提交。不同点:1. truncate 和 delete 只删除数据不删除表的结构(定义); drop 语句将原创 2017-08-17 16:48:53 · 207 阅读 · 0 评论 -
【MySQL索引】Hash索引与B-Tree索引 介绍及区别
【主题】Hash索引B-Tree索引【内容】1. Hash索引 Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。 可能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tre原创 2017-08-18 10:02:16 · 313 阅读 · 0 评论 -
MySQL的btree索引和hash索引的区别
MySQL的btree索引和hash索引的区别 (2011-10-10 16:10:36)转载▼标签: 杂谈 分类: mysqlHash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率原创 2017-08-18 10:16:20 · 224 阅读 · 0 评论 -
关系型数据库与非关系型数据库的区别?
当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等。非关系型数据库有 NoSql、Cloudant。nosql和关系型数据库比较?注:NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,是一项全新的数据库革命性运动。1. High perform原创 2017-08-21 09:49:41 · 361 阅读 · 0 评论 -
常见的mysql数据库优化操作
1、Index索引2、少用SELECT *可能有的人查询数据库时,遇到要查询的都会select,这是不恰当的行为。我们应该取我们要用的数据,而不是全取,因为当我们select时,会增加web服务器的负担,增加网络传输的负载,查询速度自然就下降 。3、开启查询缓存大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理原创 2017-08-15 09:37:52 · 364 阅读 · 0 评论 -
SQL 优化经验总结34条
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享!(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如原创 2017-08-15 09:39:32 · 209 阅读 · 0 评论 -
MySQL必知必会知识点总结
一、MySQL官方文档地址https://dev.mysql.com/doc/refman/5.7/en/二、MySQL常用命令1、如何登陆MySQL数据库mysql -u username -p112、如何开启/关闭mysql服务service mysql start/stop113、查看mysql的状态service mysql status原创 2017-08-15 10:04:02 · 444 阅读 · 0 评论 -
由 B-/B+树看 MySQL索引结构
B-树B-树,这里的 B 表示 balance( 平衡的意思),B-树是一种多路自平衡的搜索树 它类似普通的平衡二叉树,不同的一点是B-树允许每个节点有更多的子节点。下图是 B-树的简化图.B-树有如下特点:所有键值分布在整颗树中;任何一个关键字出现且只出现在一个结点中;搜索有可能在非叶子结点结束;在关键字全集内做一次查找,性能逼近二原创 2017-08-21 18:17:23 · 261 阅读 · 0 评论