数据库
数据库:能更有效的管理数据,可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。
为什么需要数据库?
- 面试要考
- 便于查询(检索)
- 便于管理、控制
- 进行安全控制(权限控制)
数据库分为:
(a)关系型数据库(RDBMS)
指采用了关系模型来组织数据的数据库,关系模型指的是二维表格模型,而一个关系型数据库就是有二维表及其之间的联系所组成的一个数据组织。
由表组成,表是有属性的(列column、字段field)
常用的关系型数据库:Oracle、MySql、SQL Server
(b)非关系型数据库
不规定基于SQL实现
1.基于键值对:如memcached、redis
2.基于文档型:如mongodb
3.基于列族:如hbase
4.基于图型:如neo4j
SQL:结构化查询语言
关系型数据库与非关系型数据库的区别:
**关系型数据库** | **非关系型数据库** | |
---|---|---|
使用SQL | 是 | 不强制要求,一包不基于SQL实现 |
事务支持 | 支持 | 不支持 |
复杂操作 | 支持 | 不支持 |
海量读写操作 | 效率低 | 效率高 |
基本结构 | 基于表和列,结构固定 | 灵活性比较高 |
使用场景 | 业务方面的OLTP系统 | 用于数据的缓存、或基于统计分析的OLAP系统 |
SQL分类
1.DDL数据定义语言,用来维护存储数据的结构
- 代表指令:create, drop, alter
2.DML数据操纵语言,用来对数据进行操作
- 代表指令:insert,delete,update
- DML中又单独分了一个DQL,数据查询语言,代表指令:select
3.DCL数据控制语音,主要负责权限管理和事务
- 代表指令:grant,revoke,commit
SQL下载安装
SQL安装:
- 解压下载好的MySQL:如解压到G:\software\mysql-5.7.27-winx64(不要放在中文路径、有空格或特殊字符的路径中)
- 配置环境变量:
变量名:MYSQL_HOME
变量值:MySQL的解压路径
在系统变量栏双击Path,新建环境变量,如下图:
- 配置MySQL初始化文件:
在MySQL根目录下创建初始化文件my.ini,即G:\software\mysql-5.7.27-winx64\my.ini。内容如下:
[mysql]
设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port=3306
设置mysql的安装目录
basedir=G:/software/mysql-5.7.27-winx64
#设置mysql数据库的数据的存放目录
datadir=G:/software/mysql-5.7.27-winx64/data
#允许最大连接数
max_connections=200
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
#创建新表时将使用的默认存储引擎
default-storage-engine=innodb