Linux 中 MySQL常用命令

基本指令:

一、 数据库登录
mysql -uroot -p
二.、退出数据库
quit 和 exit或ctrl + d
三、数据库操作
1. 查看所有数据库
show databases;
2. 查看当前使用的数据库
select database();
3. 使用数据库
use 数据库名;
4. 创建数据库
create database 数据库名 charset=utf8;
5. 删除数据库
drop database 数据库名;
6.查看当前数据库中所有表
show tables;
7.查看表结构
desc 表名;
8.创建表结构的语法.
create table 表名(
字段名称 数据类型 可选的约束条件);
9.修改表-添加字段
alter table 表名 add 列名 类型;
alter table students add birthday datetime;
10.修改表-修改字段-重命名
alter table 表名 change 原名 新名 类型及约束;
11. 修改表-修改字段不重命名
alter table 表名 modify 列名 类型及约束;
12.修改表-删除字段
alter table 表名 drop 列名;
13.删除表
drop table 表名;
14.查看表的创建语句-详细过程
show create table 表名;
四、表数据的操作
1.增加
insert into 表名 values (...),
insert into 表名 (列1,...) values(值1,...)
2.删除
delete from 表名 where 条件
3.修改
update 表名 set 列1=值1,列2=值2... where 条件
4.查找
select * from 表名;
select 列1,列2,... from 表名;
备注:MySQL的常用类型 bit-int-short-tinyint-x unsigned -decimal char-varchar enum
MySQL常用约束 主键 primary key 非空 not null 默认 default 唯一 unique 外键 foreign key
五、其他操作
1.排序:order by
select * from 表名 where 列1 order by 列2 asc|desc;
asc从小到大排列,即升序;desc从大到小排序,即降序
2.分页:limit
查询前3行男生信息:select * from students where gender=1 limit 0,3;
3.最大值:max(列)
查询女生的编号最大值:select max(id) from students where gender=2;
4总数:count(*)
select count(*) from 表名;
5.最小值:min(列)
查询未删除的学生最小编号:select min(id) from students where is_delete=0;
6.求和:sum(列)
查询男生的总年龄:select sum(age) from students where gender=1;
7.平均值:avg(列)
平均年龄:select sum(age)/count(*) from students where gender=1;
8.分组:group by
根据gender字段来分组:
select gender from students group by gender;
9.使用内连接查询班级表与学生表:
select * from students inner join classes on students.cls_id = classes.id;
10.使用左连接查询班级表与学生表:
select * from students as s left join classes as c on s.cls_id = c.id;
11.使用右连接查询班级表与学生表:
select * from students as s right join classes as c on s.cls_id = c.id;

数据导出:

mysqldump命令 (linux系统命令,无需登陆mysql服务使用)
参数(常用部分)
-u  (user 后面紧跟用户名)
-p  (password 后面紧跟密码,当然也可以暂时先不填写密码,随后再隐秘输入)
-A  (all-databases 备份所有数据库)
-f   (force 强制备份即出现错误仍继续备份)
-d  (no-data 只导出表结构)
-t   (no-create-info 只导出表数据,而不添加CREATE TABLE 语句)
-q  (quick 不缓存查询 快速导出)
-x  (xml 导出为xml文件)


1备份所有库的表数据和结构
mysqldump -uroot -p123456 -A > all_bak.sql

2备份所有库的表结构
mysqldump -urooot -p123456 -A -d > all_struct_bak.sql

3备份所有库的表数据
mysqldump -uroot -p123456 -A -t > all_data_bak.sql

(关于仅结构/仅数据后面追加-d / -t就可以了,下面的操作就不赘述了)
4备份单个库的表数据和结构
mysqldump -uroot -p123456 库名 > all_bak.sql

5备份单个库多个表数据和结构
mysqldump -uroot -p456852 库名 表名1 表名2... > db_bak.sql

6备份多个库
mysqldump -uroot -p123456 --databases 库名1 库名2... > dbs_bak.sql

数据导入:

运行sql方式
1登录Mysql服务
source xxx.sql

2linux系统命令行(格式不是死的,根据sql文件内容调整是否需要选择库)
mysql -uroot -p123456 库名 < xxx.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值