“Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。”
前言
MySQL操作,我相信大多数人都会,是的,在win客户端工具一连,然后各种快捷操作,到最后面试连一个简单是sql都写不出来,那么在linux服务器上呢,mysql可没有可视化客户端了哦,只有命令模式,就看你sql的功底有多深了。
先来一些简单的操作:
-
MySQL服务启动/停止:<启动方式取决部署方式,是否加入服务列表>:
service mysql start/restart/status/stop -
linux命令行连接MySQL数据库
cd 数据库bin 目录<如果加入/usr/bin环境,可以在任何地方执行>:
mysql -h localhost[本地ip] -u root[数据名称] -p[数据库密码]
show databases;# 展示数据库
use database; # 使用数据库
show tables; # 展示数据表
- like模糊查询与REGEXP正则匹配
[字段名] like '%关键字' %通配符使用;
[字段名] regexp "表达式"
LIKE 匹配整个列,如果被匹配的文本在列值中出现,LIKE 将不会找到它,相应的行也不会被返回(除非使用通配符)。而 REGEXP 在列值内进行匹配,如果被匹配的文本在列值中出现,REGEXP 将会找到它,相应的行将被返回,并且 REGEXP 能匹配整个列值(与 LIKE 相同的作用)。
-
update更新语句
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 -
delete删除语句
DELETE FROM 表名称 WHERE 列名称 = 值 -
insert插入语句
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) -
变更表接口操作语句
Mysql 新增表字段和删除字段,after / before
field_name指定在哪个字段之后之前增加,
alter table table_name add field_name char(定义新增字段类型);
alter table table_name drop field_name;
ALTER TABLE:添加,修改,删除表的列,约束等表的定义。
-
- 查看列:desc 表名;
-
- 修改表名:alter table t_book rename to bbb;
-
- 添加列:alter table 表名 add column 列名 varchar(30);
-
- 删除列:alter table 表名 drop column 列名;
-
- 修改列名: alter table bbb change nnnnn hh int;
-
- 修改列属性:alter table t_book modify name varchar(22);
-
select语句常用:\G,加在sql语句后执行,数据显示对列整齐;
# 查询mysql:条件查询 where... and ... 条件并行只删除满足条件的一行,当不满足所有条件时,只删除满足前一个条件的一条数据
select *from table_name where field_name1='' and field_name2='';
# 查询mysql:条件查询 where...or ... 条件并行删除满足条件的任意行,满足任意一个删除条件;
select *from table_name where field_name1='' or field_name2='';
小结
mysql操作,作为测试人员,也是不得不掌握的技能,虽然咱们有客户端操作,但还是建议手写sql,哪怕是客户端也要知道sql是怎么写的、数据是怎么来的,何况后面还有性能测试、数据库安全等技能需要你;题主也有做一些运维工作,其中包括需要在linux服务器实现数据库备份,那么娴熟的sql技巧必不可少。