数据库
什么是数据库
字面意思:存数据的仓库
为什么要使用数据库
有些操作Excel无法执行
Excel的缺点
- 管理不了大量的数据(10W级的数据)
- 不能并发操作同一个数据表格
- 数据不支持高级的操作 比如:分组,连表等
数据库的分类
-
关系型数据库
对每一列的数据类型会有约束,id(整型),name(字符串型)
maridb,MySQL -----》用的比较多
SQLServer ----》微软,大学,政府
Oracle ----》甲骨文,金融公司
sqlite -------》小型的文件数据库等
-
非关系型数据库
memcache ---》十年前的产品
MongoDB ----》文档型数据库
redis -----》微博
-
最大区别
关系型数据库,把数据存在硬盘中
非关系型数据库,把数据存在内存中
MySQL的构架
类似于socket的客户端和服务端
流程
- mysql服务端先启动,监听在某一个特定的端口(3306)
- mysql客户端连接服务端
- mysql客户端就可以发送相关的操作命令,去操作服务端存储的数据
MySQL的安装
启动mysql客户端并连接MySQL服务
mysql -uroot -p
修改mysql的密码
mysqladmin -uroot -p"原密码" password "新密码"
常用的参数
-u : user 用户名
-p : password 密码
-h : host 主机名或ip mysql -uroot -p -h 192.168.1.10
-P : port 默认3306 mysql -uroot -p -h 192.168.1.10 -P 3307
忘记密码的操作
#1 关闭mysqld的服务
#2 在cmd中执行:mysqld --skip-grant-tables ===》 不用密码就可以登录,绕过密码验证的权限
#3 在cmd中执行:mysql ===》 mysql -uroot -p
#4 执行如下sql指令:
update mysql.user set authentication_string=password('') where user = 'root';
flush privileges; (一定要操作)
#5 tskill mysqld #或taskkill -f /PID 7832
#6 重新启动mysql服务
初始mysql
SQL指令
# 增
create database 数据库名称 charset utf8
命名规范:
可以由字母、数字、下划线、@、#、$
区分大小写
唯一性
不能使用关键字如 create select
不能单独使用数字
最长128位
show create database 数据库名
#删
drop database 数据库名称
#改
删除在添加
#查
show databasees
#使用数据库
use 数据库名