MYSQL笔记
1、概念:sql是指结构化查询语言
2、非关系型数据库比关系型数据库查询快,非关系型存储数据不存在硬盘内而是存放在内存中
3、mysql支持多种操作系统
4、存储引擎:决定了数据库的快慢,MyISAM、InnoDB
5、数据库读写数据的方式:
①事务{
MyISAM:非事务
InnoDB:事务(金融代码,从begin到commit算是完成事务,否则会回滚到begin前)
}
②锁机制{
a.表锁:一个人读取就会在表上加一个读锁,一个人存储数据就会在表上加一个写锁,一个在写另一个进来的就不能读写啦,别人在读另一个人可以读,但是依然不能写
b.行锁:能精确锁定到某一行,但是对于同一行的操作同表
MyISAM:只能支持到表锁
InnoDB:能支持到行锁
}
6、适用性:{
MyISAM:多读少写,适用非金钱的
InnoDB:多写少读,适用金钱的
}
7、数据库默认存储引擎:{
Mysql在5.5及之前版本用的MyISAM,5.5之后用的InnoDB,推荐5.7版本
MariaDB在5.5之后就是10版本啦,推荐10版本
}
8、命令不区分大小写,但是表名字、段名和内容是区分的,分号提交;一库一目录一表一文件
9、命令:{
查看库:show databases
查看表:show tables
使用库或表用use +名
查看表结构:Desc +表名
删除表:drop table +表名
删除库:drop database+库名
}
10、Sql:
DDl{
数据定义语言:create drop alter
}
DCL{
数据控制语言:grant(给予权限) revoke(收回权限)
}
DML{
数据操作语言:insert delete update
}
DQL{
数据查询语言:select
}
11、代码:{
#DDL
#建库
create database bookshop;
#在库中建表
Create table bookshop.reserve(
id int primary key,
bookname varchar(50),
bookdate date,
price float
);
#DML
#插入数据
Insert into reserve set id =1,bookname=’heheh’,bookdate =’2019-1-20’,price=50.00;
Insert into reserve values(2,’haha’,’2019-9-10’,43.00),(3,’hehe’,’2019-5-10’,45.00),(…);
#删除
Delete from reserve where id=2 and bookname=’haha’;
#修改
Update from reserve set bookname=’wuji’where id=3;
#DCL
#授权
设置密码mysqladmin -uroot password ‘uplooking’
登录:mysql -uroot -p’uplooking’
修改密码:mysqladmin -uroot -p password ‘uplooking123’
授权:grant all on . to batman@172.25.0.12 identified by ‘uplooking’ ;
#收回授权
收回权限:revoke all on . from batman@172.25.0.12
#DQL
查询:select
}
12、忘记mysql的root 密码:{
https://www.cnblogs.com/ivictor/p/9243259.html
}
13、备份:{
1)分类:
①冷备:备份,将数据以隔离的方式来保存,原数据做变动备份数据不做修改,优点:能解决硬件问题和人员误操作,缺点:恢复数据慢
②热备:冗余,人为的添加重复的数据,有主从服务器,缺点:能解决硬件问题,不能解决人员误操作,优点:恢复数据快
③异地灾备:
2)两大要素:
数据一致:从开始备份到结束无数据的增减
服务可用:停服务打包备份可以保证数据一致但不推荐,可以使用mysqldump工具进行备份,和存储引擎相关(innoDB)
3)备份解决方案:
①
}