数据库的基本介绍
相关概念
- DBMS:数据库管理系统,就是数据库软件
- 数据库:保持有组织的数据的容器(通常是一个文件和一组文件),不管数据是什么或如何组织的,是通过DBMS创建和操纵的容器。
- SQL:结构化查询语句,是专门用来与数据库沟通的语言,需要一个支持SQL语句执行的应用程序
- 表:某种特定类型数据的结构化清单,存储在表中的数据是同一种类型的数据或清单
主流数据库介绍
- Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL
- MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。
- SQL Sever: 微软的产品,.Net程序员的最爱,中大型项目。
- SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
- H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。
- MariaDB是MySQL原始开发人员创建的一个MySQL的流行分支。它源于与MySQL被Oracle收购有关的担忧。它支持小数据处理任务和企业需求。 它的目标是成为MySQL的替代品,只需要简单地卸载MySQL并安装MariaDB。MariaDB提供了与MySQL相同的功能。
mysql安装
mysql
- 登陆 mysql -h localhost -u root -p 回车 (-h:主机地址 -u用户名 -p密码 -v版本)
- 退出 exit quit \q
windows下mysql安装 https://www.cnblogs.com/ayyl/p/5978418.html
登陆界面如下
- CentOS 7下mariaDB安装https://zhuanlan.zhihu.com/p/34034597
登陆界面如下
SQL分类
- DDL数据定义语言,用来维护存储数据的结构 代表指令: create, drop, alter
- DML数据操纵语言,用来对数据进行操作 代表指令: insert,delete,update
DML中又单独分了一个DQL,数据查询语言,代表指令: select - DCL数据控制语言,主要负责权限管理和事务 代表指令: grant,revoke,commit
存储引擎
存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
MySQL的核心就是插件式存储引擎,支持多种存储引擎。
查看存储引擎
- show engines;
服务器,数据库,表关系
- 所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据
- 库,一般开发人员会针对每一个应用创建一个数据库。
- 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。