mysql
mysql使用
基本增删查改
登录mysql
mysql -u root -p
查询当前所存在的库
show databases;
选择需要增删改查的库
use zwl;
查看当前库中所存在的表
show tables;
查看表内所存在的信息
select * from sziit;
刷新系统权限命令
flush privileges;
命令 —— 增
创建一个新的数据库
create database villian;
在数据库中新增表
create table student(
-> id int,
-> name varchar(20)
-> );
向表中插入数据
insert into student (id,name) values(1,‘xiaoming’);
命令 —— 删
删除数据库
drop database test;
删除库中的表
drop table sziit;
删除表内所有数据
delete from home;
条件删除
delete from banji where id=2;
命令 —— 查
查询指定数据
select name,id from teacher;
逻辑查询 and
select * from teacher where id =1 and name=“xiaoming”;
逻辑查询 or
select * from teacher where id =2 or name=“xiaoming”;
比较条件 > ,<, >=, <=, ==, 不等于:<>, BETWEEN, AND
select * from teacher where grate > 99;
模糊条件查询 like
Mselect * from teacher where name like “xiao%”;
排序查询,默认情况下按插入记录的顺序排序。order by asc 正序 desc倒序
select * from teacher order by id asc;
select * from teacher order by id desc;
分页查询limit 起始行,查询几行,主要用于分页。注意这里的行数从零开始。
select * from teacher limit 0,1;
命令 —— 改
修改制定数据
update teacher set age=30 where id=1;
使用alter table 语句修改表名
alter table student rename to teacher;
修改表结构
修改表字段名(要重新指定该字段的类型)
alter table teacher change name nameID varchar(20)not null;
使用alter table 语句对指定字段进行添加修改删除操作
alter table student drop address;
mysql日常需求
数据库备份与恢复
mysqldump的工作原理
mysql数据库自带了一个很好用的备份命令,就是mysqldump
它的基本使用如下:
语法:mysqldump -u 用户名 -p 密码 数据库名 > 备份的文件名
利用mysqldump命令备份数据的过程,实际上就是把数据从mysql数据库里以逻辑sql语句的形式直接输出或者生成备份文件的过程。
利用mysqldump命令恢复数据的过程,实际上就是把备份数据,以逻辑sql语句的形式再数据库执行的过程。
备份数据表
新建一个目录文件夹,用于存储备份数据
[root@localhost ~]# mkdir /backup
[root@localhost ~]# cd /backup/
调用mysqldump备份某个数据库中的某几张表:
mysqldump –u 用户名 –p 数据库名 表名1 表名2 表名3… > 备份文件名.sql
数据恢复
source /backup/school.sql
mysql主从
mysql主从复制原理
mysql支持三种复制类型:基于语句的复制、基于行的复制、混合类开进的复制
基本原理流程就是3个线程以及之间的关联
主:binlog线程—记录下所有改变了数据库数据的语句,放进master上的binlog中。
从:I/O线程—在使用start slave之后,负责从master上拉取 binlog 内容,放进 自己的relay log (中继日志)中。
从:SQL执行线程—执行relay log (中继日志)中的语句,并解析成具体操作,来实现主从的操作一致,而最终数据一致。