1. 数据库是什么?
存储数据的容器
2. 为什么需要数据库?
由于文件操作的缺陷:1.io操作 效率慢2.多用户竞争数据 3.网络的访问 4.用户的验证
3. 类型?
关系型型数据库:oracle mysql sqlServer DB2
非关系型数据库:MongoDB redis memercach
4.数据库的相关概念
数据库服务器---》DBMS数据库管理系统---》库---》表----》记录---》字段(列)
数据本质上就是一套C/S架构的socket软件
5. 数据库的安装及配置的使用环境(services.msc 查看所有系统服务)
- 代码界面 cd path(安装的路径) 要记住密码 mysql – h127.0.0.1 -P3306 -uroot –p+(密码)
- 绿色解压版
1.先自己指定安装路径 cd path(安装的路径) 要记住密码 mysql – h127.0.0.1 -P3306 -uroot –p 不要密码 进入程序
2.添加环境变量
3.查看启动的mysql程序: tasklist | findstr mysql
4.终结mysql程序 taskkill /f /pid 10232
这样终结比较麻烦,所以我们可以把它添加到系统服务中:mysqld –install
这样打开的时候就比较简单了:启动:net start mysql
停止:net stop mysql
6.绿色版修改密码
修改密码要先登录
执行update语序: authentication_string = password("root") where user = "root" and host = "localhost";
没有登录时: 1.启动时不加载授权表使用mysqld --skip--grand—tables启动
2.无密码登录服务器
3. 执行update语序: authentication_string = password("root") where user = "root" and host = "localhost";
4.重启客户端
修改密码方式2 不需要登录 需要知道旧密码
mysqladmin -uroot -p旧密码 password 123
用到的系统指令:
mysqld 直接运行服务器程序
mysqld --skip-grant-tables 跳过授权表 用于重设密码
tasklist | findstr mysqld taskkill /f /pid 结束服务器程序
mysql 运行客户端程序 -u用户名 -p密码 -h主机地址 -P端口号
mysqld --install 将mysqld注册当windows服务中 在服务中叫MySQL
windows就是绑定了一个exe程序
sc delete mysql 删除windows服务
exit 退出客户端
7. sql的简单使用
7.1 针对库的相关操作:
增
create database 库名称
删
drop database 库名称
改
alter database 库名称 要改的属性名称
alter database db1 DEFAULT CHARACTER SET utf8;
alter database db1 CHARSET utf8;
注意 在mysql中 utf-8 不能带- 写成utf8
查
show databases查看所有数据库
show create databases 库名称 查看建库的语句
命名规范:
1.不能使用纯数字
2.可以是数字 字母 下滑线的组合
3.可以下滑线开头
4.不能是关键字 如create
大致和python相同
不区分 大小写
7.2 针对表的相关操作:
增
建表时要明确数据库
use db1;
create table 表名称(字段名 类型(长度),....)
create table dog(nikename char(10),gender char(1),age int)
创建时同时指定数据库
create table 库名称.表名称(字段名 类型(长度),....)
删
drop table 表名;
改
alter table 表名称 drop|change|modify|add
drop 字段名称
alter table dog drop color;
change 旧的字段名 新的字段名 新的类型
alter table dog change gender sex char(2);
modify 字段名 新的类型
alter table dog modify color char(5);
add 字段名称 类型
alter table dog add color char(10);
重命名表
rename table 旧表名称 to 新表名称
rename table dog to dogtable;
修改表的属性
alter table 表名 属性名 值;
alter table dogtable DEFAULT CHARSET gbk;
查
show tables;查看所有表
desc 表名称; 查看表结构
show create table 表名;查建表语句
7.3 记录相关操作
增
insert into 表名 value(值1,值2.....)
删
delete from 表名 where 字段名称 = 值
没有条件的话删除全部数据
改
update 表名 set 字段名 = 新的值 where 字段名 = 值
没有条件的话修改全部
查
select *from 表名; *表示通配符 查看所有字段
select 字段名称1,字段名2.. from 表名;
8. 数据库的引擎 ***
9. 5.6 与5.7的区别:
1). 5.7需要初始化
2). 5.6游客模式 没有密码可以登录 但是无法操作数据
只能看到 information_schema mysql
3). 5.7中 data数据存放目录 是由初始化时决定
带界面的 在C:ProgramData中
不带界面的就在安装目录中
5.6就在安装目录中
4).密码存储字段名 在5.6中时password 5.7中叫authentication_string