1.数据库数据的演变史
1.把所有的数据都存在在文件夹中
文件名都不规范
2.储存的数据文件越来越多,放在db文件中
随着用户的注册量越来越多,文件数也会越来越多,会占用大量的空间,以及查询和存储都不方便,还有速度很慢
3.数据库的诞生就是解决以上问题的
数据库方便
2.数据存储的发展史
1.单机游戏
本质上是把数据存在了本地
2.网络游戏
本质上是把游戏存在了一个公共的地方,以后不管你在何地取值都是从这个地方把数据取出来。
3.数据库的本质
本质上就是基于C/S架构上编写的软件,既然是C/S架构就必然会有服务端和客户端,理论上来说,外面也能够开发一款数据库软件,只需要开发一个客户端,一个服务段即可。只不过你开发的数据库没人用的话只能自己玩。这些时候就有一些牛逼的程序员,开发了很多数据库软件。
4.数据库的分类
1.关系型数据库
MySQL、Oracle、PostgreSql、SqlServer、db2、access、MariaDB、sqllite等
MySQL:开源的
Oracle:收费的
MariaDB:和MySQL的作者是一个
2.非关系型数据库
Redis缓存数据库(五大数据类型) memcache数据库(支持一种字符串类型的K:V键值对) MongoDB数据库(爬虫)
关系型数据的特点:具备固定的表结构,表与表之间可以建立关系(Excel表格)
id name age gender
1 kevin 20 male
1 kevin 20 male
1 kevin 20 male
1 kevin 20 male
1 kevin 20 male
1 kevin 20 male
非关系型数据:没有表结构,它的存储形式是:K:V键值对的形式
name:kevin
age:20
5.SQL和nosql的介绍
MySQL数据库为了兼容各个语言,那么,就统一规范了格式:
关系型数据库:SQL
非关系型数据库:nosql
6.MySQL数据库的介绍
1.版本问题
5.5 之前的都有,哪些版本目前几乎都不用了
MySQL5.6 # 使用较多的,比较稳定的
MySQL5.7 # 使用较多的,比较稳定的
MySQL8.0 # 新版本,对于MySQL来说,版本的更新不变的是SQL语句的书写
2.下载与安装
官网下载:https://www.mysql.com/
3.主要文件介绍
bin
mysql.exe # 自带的客户端
mysqld.exe # 自带的服务端
data:MySQL的数据存储的地方
my-default.ini:这个是MySQL的配置文件
README文件是MySQL的说明文件,类似于是说明书
4.如何使用
4.1
mysqld.exe是服务端,应该先启动这个文件, 这里不能双击了,需要通过cmd的方式启动
步骤:
在bin目录下,执行mysqld就是启动服务端的
在bin目录下,执行mysql就是客户端来链接的,输入mysql即可,初次链接默认是没有密码的
# 停掉MySQL的服务端:ctrl + c
4.2
加入环境变量:bin目录所在的路径加入到环境变量中
4.3 MySQL服务的制作
目的:就是可以把服务端的cmd窗口关闭,只留一个客户端的cmd即可
# 如何查看服务
1. 在任务栏里打开任务管理器------>服务
2. 点击此电脑------>管理------->服务
3. win + R------->services.msc----------->服务
"""制作MySQL的服务步骤"""
1. mysqld --install(需要管理员权限) # Install/Remove of the Service Denied!
mysqld --install(需要管理员权限) # Service successfully installed.
# 第一次安装成功服务是没有启动的,需要手动启动一次
2. 启动服务
1. 直接点击启动------》mysqld------>服务端就不需要在打开cmd启动了---->后台工作
2. 命令启动
net start mysql # 启动服务的 (需要管理员权限)
3. 关闭服务
net stop mysql # 停止服务 (需要管理员权限)
3. 如何卸载服务以及安装服务
"""卸载服务的时候一定要先关闭服务"""
mysqld --remove
mysqld --install
7.MySQL如何登陆
服务端需要设置密码,然后让客户端通过用户名和密码进行登录
# 默认情况下,初次安装成功,链接是不需要密码的
如何给管理员设置密码
mysqladmin -u 用户名 -p 旧密码 password 新密码 # 修改管理员密码也是这个命令
mysqladmin -u root -p password 123
## 管理员就具备了密码
客户端在链接的时候需要使用密码链接:
mysql -u root -p # 链接的是本地的MySQL
# 完整的链接命令
mysql -h 127.0.0.1 -P 3306 -u root -p
如果不用root登录就是游客模式,权限比较低,没有root用户的权限高,一般功能首先,就是只能查看,不能操作
8.基本的SQL术语的使用
"""补充几个重要的概念"""
库 >>> 文件夹
表 >>> 文件
记录 >>> 文件中得一行行数据
字段 >>> id name age gender 其实就表的表头
id name age gender
1 ly 20 female
1 ly 20 female
1 ly 20 female
1 ly 20 female
"""顺序是: 库 >>> 表 >>> 记录 >>> 字段"""
一个库中可以有多张表,一个表中可以有很多条记录,也可以有多个字段
"""在MySQL中,SQL语句都是要以分号结尾;"""
1. 针对库的SQL语句
# 增加
create database 库名;
# 查看库
show databases;
show create database db1;
# 修改库(基本上不用,直接删掉直接创建)
alter database db1 charset='utf8';
# 删库跑路
drop database db1; # 不要轻易使用(测试环境随便使用,线上环境一般情况下你是没有权限)
2. 针对表的SQL语句
"""如何选择库"""
use 库名;
use db1; # 双击db1文件夹了
# 增加表
create table 表名 (id 数据类型, name 数据类型, gender 数据类型)
create table t1(id int, name varchar(32), gender varchar(32));
# 修改表
alter table t1 rename t2; # 修改表名
# 查看表
show tables;
show create table t1; # 查看表结构
desc t1; # 查看表结构,格式化了
# 删除表
drop table t2;