01-初识数据库
存储数据的演变流程
目前所知并且我们能够实现的存储数据的方式有两种,一种是将数据存储到文件中(txt 文件或是 excel 文件),一种是类似于软件开发目录的情况,将数据保存到固定的文件夹位置,但实际上这两种存储方式存在一定的弊端。
存储至文件的问题
"""
将数据存储到随机的文件中,由于缺少标准,会造成存储数据时文件内容的千差万别,甚至影响他人对于该存储文件的使用和阅读
"""
软件开发目录规范的问题
"""
bin -- 启动文件
conf -- 配置文件
core -- 后端核心代码
log -- 日志文件
lib -- 公共方法
db -- 数据
readme -- 使用说明
"""
软件开发规范目录虽然限制了存储数据的具体位置,但这样的数据只存储在本机中,就像是没有云存档的单机游戏一样,他人想要访问比较困难,或者说需要使用自己的电脑才能访问。
解决方案
对于文件存储标准不统一和软件开发目录多人操作困难的问题,提出了将数据按一种格式同意保存,并且允许所有人在同一个地方操作数据的解决方案——这也就是数据库的作用。
数据库的本质
数据库的本质就是一款与网络通信的应用程序——用户输入命令,和数据,服务端接收命令和数据,并根据命令在服务端实现对数据的操作。
数据库的分类
"""
关系型数据库
MySQL,oracle,db2,access,sql server
非关系型数据库
redis,mongdb,mencache
"""
# 关系型
1. 数据之间批次有关系或者约束
2. 存储数据的表现形式通常是以表格存储。每个字段还会有存储类型的限制,比如说姓名只能存在字符串
# 非关系型
1. 存储数据通常是以 k,v 键值对的形式存储
MySQL
"""
人格基于网络通信的应用程序底层都是 socket
- 服务端
- 基于 socket 实现通信
- 收发消息
- 客户端
- 基于socket 实现通信
- 收发消息
"""
MySQL 不单支持 MySQL 自己的客户端 app 还支持 其他变成语言来充当客户端操作,同时为了解决不同语言充当客户端操作的沟通障碍,# MySQL 采用统一的语言(SQL 语言)
MySQL重要概念
"""
库 --- 相当于 文件夹
表 --- 相当于 文件
记录 --- 相当于 文件内一行行的数据
表头 --- 表格的第一行字段
表单 --- 表头外的数据
"""
MySQL安装
官网安装:MySQL
MySQL服务端和客户端
"""
服务端
mysqld.exe
客户端
mysql.exe
"""
注意
"""
在前期配置MySQL的时候尽量在 cmd 终端以管理员的身份运行
window+r 进入的是普通用户终端,有一些命令无法执行
搜索 cmd 右键,以管理员身份运行
"""
启动
- 管理员运行cmd,先切换到 mysql 所在的 bin 目录下,然后输入 mysqld 启动 服务端 即可
- 然后保留原来的 cmd 窗口,重新打开一个
"""
常见软件的默认端口号
MySQL 3306
redis 6379
mongodb 27017
django 8000
flask 5000
...
MySQL 第一次以管理员身份进入是没有密码的,直接回车即可
进入相关目录 mysql -h 127.0.0.1 -P 3306 -uroot -p
"""