shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)Shell脚本与MySQL数据库交互(增删改查)# 环境准备:安装mariadb 数据库
[root@localhost shell]# yum install mariadb mariadb-server mariadb-libs -y
[root@localhost shell]# systemctl start mariadb
[root@localhost shell]# netstat -tnlp |grep :3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      102146/mysqld# 默认没有密码,直接mysql即可进入数据库管理控制台# 新建数据库
create database school default character set utf8;# 导入测试数据
--建表
--学生表CREATE TABLE student(s_id varchar(20),s_name varchar(20) not null default '',s_birth varchar(20) not null default '',s_sex varchar(10) not null default '',primary key(s_id)
);--课程表
create table course(c_id varchar(20),c_name varchar(20) not null default '',t_id varchar(20) not null,primary key(c_id)
);--教师表
create table teacher(t_id varchar(20),t_name varchar(20) not null default '',primary key(t_id)
);--成绩表
create table score(s_id varchar(20),c_id varchar(20),s_score int(3),primary key(s_id,c_id)
);--插入学生测试数据
insert into student values('1001','zhaolei','1990-1001-1001','male');
insert into student values('1002','lihang','1990-12-21','male');
insert into student values('1003','yanwen','1990-1005-20','male');
insert into student values('1004','hongfei','1990-1008-1006','male');
insert into student values('1005','ligang','1991-12-1001','male');
insert into student values('1006','zhousheng','1992-1003-1001','male');
insert into student values('1007','wangjun','1989-1007-1001','male');
insert into student values('1008','zhoufei','1990-1001-20','male');--课程表测试数据
insert into course values('1001','chinese','1002');
insert into course values('1002','math','1001');
insert into course values('1003','english','1003');--教师表测试数据
insert into teacher values('1001', 'aidisheng');
insert into teacher values('1002', 'aiyinsitan');
insert into teacher values('1003', 'qiansanqiang');--成绩表测试
insert into score values('1001','1001',80);
insert into score values('1001','1002',90);
insert into score values('1001','1003',99);insert into score values('1002','1001',70);
insert into score values('1002','1002',60);
insert into score values('1002','1003',80);insert into score values('1003','1001',80);
insert into score values('1003','1002',80);
insert into score values('1003','1003',80);insert into score values('1004','1001',50);
insert into score values('1004','1002',30);
insert into score values('1004','1003',20);insert into score values('1005','1001',76);
insert into score values('1005','1002',87);insert into score values('1006','1001',31);
insert into score values('1006','1002',34);insert into score values('1007','1001',58);
insert into score values('1007','1002',88);# 添加指定数据权限的用户
MariaDB [school]> grant all on school.* to dbuser@'%' identified by '123456';
# % 默认是不允许localhost登录的,需要单独添加localhost的权限
MariaDB [mysql]> grant all on school.* to dbuser@'localhost' identified by '123456';[root@localhost ~]# mysql -h 10.11.0.215 -u dbuser -p123456
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 15
Server version: 5.5.60-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> mysql的常用选项[root@localhost ~]# mysql -udbuser -p123456 -h10.11.0.215 -D school -e "select * from student;";
+------+-----------+----------------+-------+
| s_id | s_name    | s_birth        | s_sex |
+------+-----------+----------------+-------+
| 1001 | zhaolei   | 1990-1001-1001 | male  |
| 1002 | lihang    | 1990-12-21     | male  |
| 1003 | yanwen    | 1990-1005-20   | male  |
| 1004 | hongfei   | 1990-1008-1006 | male  |
| 1005 | ligang    | 1991-12-1001   | male  |
| 1006 | zhousheng | 1992-1003-1001 | male  |
| 1007 | wangjun   | 1989-1007-1001 | male  |
| 1008 | zhoufei   | 1990-1001-20   | male  |
+------+-----------+----------------+-------+# -N 不显示列信息,-B 去除多余信息, -D 指定操作的数据库
[root@localhost ~]# mysql -udbuser -p123456 -h10.11.0.215 -B -N -D school -e "select * from student;";
1001    zhaolei    1990-1001-1001    male
1002    lihang    1990-12-21    male
1003    yanwen    1990-1005-20    male
1004    hongfei    1990-1008-1006    male
1005    ligang    1991-12-1001    male
1006    zhousheng    1992-1003-1001    male
1007    wangjun    1989-1007-1001    male
1008    zhoufei    1990-1001-20    male# -E 垂直显示
[root@localhost ~]# mysql -udbuser -p123456 -h10.11.0.215 -E -B -N -D school -e "select * from student;";
*************************** 1. row ***************************
1001
zhaolei
1990-1001-1001
male
*************************** 2. row ***************************
1002
lihang
1990-12-21
male
*************************** 3. row ***************************
1003
yanwen
1990-1005-20
male
*************************** 4. row ***************************
1004
hongfei
1990-1008-1006
male
*************************** 5. row ***************************
1005
ligang
1991-12-1001
male
*************************** 6. row ***************************
1006
zhousheng
1992-1003-1001
male
*************************** 7. row ***************************
1007
wangjun
1989-1007-1001
male
*************************** 8. row ***************************
1008
zhoufei
1990-1001-20
male# -H 以HTML格式显示
# mysql -udbuser -p123456 -h10.11.0.215 -H -B -N -D school -e "select * from student;";
<TABLE BORDER=1><TR><TR><TD>1001</TD><TD>zhaolei</TD><TD>1990-1001-1001</TD><TD>male</TD></TR><TR><TD>1002</TD><TD>lihang</TD><TD>1990-12-21</TD><TD>male</TD></TR><TR><TD>1003</TD><TD>yanwen</TD><TD>1990-1005-20</TD><TD>male</TD></TR><TR><TD>1004</TD><TD>hongfei</TD><TD>1990-1008-1006</TD><TD>male</TD></TR><TR><TD>1005</TD><TD>ligang</TD><TD>1991-12-1001</TD><TD>male</TD></TR><TR><TD>1006</TD><TD>zhousheng</TD><TD>1992-1003-1001</TD><TD>male</TD></TR><TR><TD>1007</TD><TD>wangjun</TD><TD>1989-1007-1001</TD><TD>male</TD></TR><TR><TD>1008</TD><TD>zhoufei</TD><TD>1990-1001-20</TD><TD>male</TD></TR></TABLE># -X 以xml格式显示
[root@localhost ~]# mysql -udbuser -p123456 -h10.11.0.215 -H -B -N -D school -e "select * from student;" > result.html
[root@localhost ~]# mysql -udbuser -p123456 -h10.11.0.215 -X -B -N -D school -e "select * from student;" > result.xml

转载于:https://www.cnblogs.com/reblue520/p/11017175.html

shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)相关推荐

  1. C++数据库编程 MySQL Connecttor C++增删改查

    C++数据库编程简介 C++数据库编程 ODBC简介 C++数据库编程 ODBC连接SQL Server数据库 C++数据库编程 ODBC插入数据 C++数据库编程 ODBC查询数据 C++数据库编程 ...

  2. PHP操作Mysql简单的增删改查

    PHP操作Mysql简单的增删改查 今天晚上回想了一下php怎么操作mysql,突然发现都忘了,然后通过回忆,搜寻资料总结了以下几点,一是提醒自己不要忘了,再就是希望能帮助一些有帮助的朋友.大佬请路过 ...

  3. 数据库概论之MySQL表的增删改查1

    MySQL表的增删改查 1.MySQL表的CRUD 2.插入数据 2.1 语法 2.2 注意事项 3.查找语句 3.1 全列查找 3.2 指定列查询 3.3 指定查询字段为表达式 3.4 查询字段指定 ...

  4. web和mysql连接并增删改查_Java Web 使用IDEA对mysql数据库进行简单增删改查操作(附源码下载)...

    一.加载数据库驱动 1.下载jdbc(如已下载可略过此步骤) (1)点击下载网址,选择Connector/J (2)选择Platform Independent版本 (3)下载下图所示的压缩包 2.将 ...

  5. Spring Boot入门系列(十八)整合mybatis,使用注解的方式实现增删改查

    之前介绍了Spring Boot 整合mybatis 使用xml配置的方式实现增删改查,还介绍了自定义mapper 实现复杂多表关联查询.虽然目前 mybatis 使用xml 配置的方式 已经极大减轻 ...

  6. go-elasticSearch实战篇,带你学会elasticSearch的增删改查

    前言 哈喽,everybody,这是go-elastic学习系列教程第二篇文章.上一篇我们学习了ElasticSearch基础,如果还不懂基础的,可以先看一看上一篇文章,传送门.这一篇我们开始实战,写 ...

  7. 【MySQL系列】 MySQL表的增删改查(进阶)

    目录 ??前言 ??一.数据库约束 ???1.1 约束类型 ???1.2 null约束 ???1.3 unique约束 ???1.4 default约束 ???1.5 primary key 约束 ? ...

  8. 若依前后端分离版怎样根据数据库生成代码并快速实现某业务的增删改查

    场景 使用若依的前后端分离版,怎样使用其代码生成实现对单表的增删改查导出的业务. 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程 ...

  9. OA项目实战学习(3)——实现岗位管理增删改查

    我们这里注重实现功能,对页面不进行布局. 一.分析增删改查的功能: 添加.修改.删除成功后 要重定向到列表功能,这样在刷新页面时才不会出现"又做一次增.删.改"的操作. 列表与删除 ...

最新文章

  1. pygame里面物体闪烁运动_教师资格【试讲示范】高中物理试讲答辩——《自由落体运动》试讲稿答辩...
  2. c 输出空格_Python编程:案例详解输出函数print
  3. su user oracle does not exist,Linux下oracle用户无法su切换的异常【终极解决方案_生产环境亲测有效】...
  4. 熵权法excel计算过程_翅片式蒸发器如何最简单的进行计算和仿真?
  5. Spring Cloud Context
  6. 学java的就业方向_学习Java的就业前景怎么样
  7. Android/ios手机销售榜信息
  8. 华为p20如何连接计算机,华为P20 USB调试和开发人员选项的打开方法(EMUI8.1)
  9. matlab计算矩阵中非零元素个数
  10. 一台汽车在新上市之前需要经历多少考验,才有资格驶向我们?
  11. 201.微信公众号开发【文本消息】
  12. 软考非计算机专业考难吗,非计算机专业考软考初级哪个更容易过
  13. 金蝶EAS开发认证考试
  14. 跨平台第三方平台登录和单点登录
  15. 2021-12-29 神经网络
  16. web 移动端开发基础
  17. 宝库\要出发 IOS面试试题
  18. CAD中如何移动一点至一个绝对坐标
  19. iOS客户端的title不显示解决方案
  20. 万字,入门教学,js逆向实战,某易云评论,歌词,(附源代码)仅供学习使用。

热门文章

  1. 小程序web开发框架-weweb介绍
  2. C++走向远洋——61(项目一、排序函数模板)
  3. JS函数的定义与调用方法
  4. 加密与解密以及openssl的应用
  5. 是男人就下100层【第一层】——高仿微信界面(4)
  6. 在Win7下建立新账户的方法
  7. asp.net 在使用Response.Redirect try{}catch{}块失效
  8. 从春晚说起:总有一种无耻让我们泪流满面
  9. 发布:IE自动打印插件
  10. 2019年软件测试现状调查