MySQL数据库的安装和配置
MySQL数据库介绍
什么是数据库DB?
DB的全称是database,即数据库的意思。数据库实际上就是一个文件集合,是一个存储数据的仓库,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作;
什么是sql?
SQL代表结构化查询语言(Structured Query Language)。SQL是用于访问数据库的标准化语言。
SQL包含三个部分:
数据定义语言包含定义数据库及其对象的语句,例如表,视图,触发器,存储过程等。
数据操作语言包含允许更新和查询数据的语句。
数据控制语言允许授予用户权限访问数据库中特定数据的权限
Mysql是什么?
My是MySQL的联合创始人 - Monty Widenius 的女儿的名字。MySQL是My和SQL的组合,这就是MySQL命名的由来。
MySQL的官方网址: http://www.mysql.com/ ,MySQL的社区版本下载地址为: http://dev.mysql.com/downloads/mysql/
MySQL是一个数据库管理系统,也是一个关系数据库。它是由Oracle支持的开源软件。如果需要,还可以更改其源代码或进行二次开发以满足需求。
什么是关系型数据库(SQL)?
关系型数据库是依据关系模型来创建的数据库。
所谓关系模型就是“一对一、一对多、多对多”等关系模型,关系模型就是指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
关系型数据可以很好地存储一些关系模型的数据,比如一个老师对应多个学生的数据(“多对多”),一本书对应多个作者(“一对多”),一本书对应一个出版日期(“一对一”)
关系模型中的一些概念?
- 关系:一张二维表,每个关系都具有一个关系名,也就是表名
- 元组:二维表中的一行,在数据库中被称为记录
- 属性:二维表中的一列,在数据库中被称为字段
- 域:属性的取值范围,也就是数据库中某一列的取值限制
- 关键字:一组可以唯一标识元组的属性,数据库中常称为主键,由一个或多个列组成
- 关系模式:指对关系的描述。其格式为:关系名(属性1,属性2, ... ... ,属性N),在数据库中成为表结构
关系型数据库的优缺点:
优点:
1、易于维护:都是使用表结构,格式一致;丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
缺点:
I/O
是一个很大的瓶颈2、网站每天产生的数据量是巨大的,对于关系型数据库来说,在一张包含海量数据的表中查询,效率是非常低的
3、固定的表结构,灵活度稍欠
关系型数据库有:
Oracle,SQL Server,MySQL,PostgreSQL,DB2,Microsoft Access, SQLite,Teradata,MariaDB(MySQL的一个分支),SAP等
什么是非关系型数据库(NOSQL)?
非关系型数据库主要是基于“非关系模型”的数据库(由于关系型太大,所以一般用“非关系型”来表示其他类型的数据库)
非关系型模型比如有:
存储的数据是一列列的。关系型数据库以一行作为一个记录,列模型数据库以一列为一个记录。(这种模型,IO很快,主要是一些分布式数据库)
非关系型数据库的优缺点:
优点:
1、格式灵活:存储数据的格式可以是key-value(键值)形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛.
2、速度快:可以使用硬盘或者内存作为载体,而关系型数据库只能使用硬盘;
3、成本低:数据库部署简单,基本都是开源软件。
缺点:
1、不提供sql支持,学习和使用成本较高;
2、无事务处理;
非关系型数据库:Redis MongoDB Memcache等
最新文章
- [译]Godot系列教程二 - 场景实例化(Instancing)
- 利用SpannableString设置文本
- [unity3d]手游资源热更新策略探讨
- 1-了解Python
- UIScrollView,UIView转换UIImage代码(整个view截图, 不只是可视区域)
- html 5的localstorag
- 【整理】01. localhost_access_log 记录post请求参数
- MySQL数据库基础(一)(启动/停止、登录/退出、语法规范及最基础操作)
- Android热修复技术原理详解(最新最全版本)
- 20175314 《Java程序设计》第九周学习总结
- HDU - 1698 线段树区间修改,区间查询
- 王之泰201771010131《面向对象程序设计(java)》第三周学习总结
- DataSource - 常用数据库连接池 (DBCP、c3p0、Druid) 配置说明
- 吴裕雄 python 数据处理(3)
- jQuery插件初级练习3答案
- Maven项目同时使用lib下的Jar包
- Struts2和MVC的简单整合
- 将Java项目从maven迁移到gradle
- 最短路径问题-Floyd算法
- UniCode 下 CString 转 char* 的方法