shell脚本操作mysql通用脚本
作用:可以在写监控脚本时,将结果值保存到mysql数据库
使用方法:sh 脚本 库名称.表名称 字段=值 字段=值 字段=值
1、脚本
[root@localhost tmp]# cat writ_mysql.sh
#!/bin/bash
#判断传入的参数
if [ $# -eq 0 ]
then
echo sh $0 table_name name=张三 xb=女
else
#输入的参数转换函数 例子: name=张三 xb=1 转换成 name,xb '张三','1'
convfield(){
#数组索引
j=1
#获取输入的参数,排除第一个参数
for i in "${@:2}"
do
#获取name名称
name[$j]=$(echo $i|awk -F = '{print $1}')
#获取name的值
value[$j]=\'$(echo $i|awk -F = '{print $2}')\'
#查看字段名称和值
#echo ${name[$j]}=${value[$j]}
#索引加1
j=$((j+1))
done
#拼接成sql的name和value
new_name=$(echo ${name[@]}|sed 's/ /,/g')
new_value=$(echo ${value[@]}|sed 's/ /,/g') echo "$1($new_name) values($new_value)"
} jdbcinfo(){
user=root
pass='password'
ip=192.168.1.1
port=3306
}
#将所有参数传递给转换函数,进行转换
convfield $@
jdbcinfo #将值插入指定表字段
mysql -u$user -h$ip -P $port -p$pass -e \
"insert into $1($new_name) values($new_value)" #查询对应表数据
mysql -u$user -h$ip -P $port -p$pass -e \
"select * from $1"
fi
2、执行
[root@localhost tmp]# sh writ_mysql.sh nginx_info.test name=周末
nginx_info.test(name) values('周末')
+----+--------+---------------------+--------+
| id | name | date | bz |
+----+--------+---------------------+--------+
| 1 | zhangs | 2022-07-11 15:15:51 | 测试 | | 13 | 周末 | NULL | NULL |
+----+--------+---------------------+--------+
shell脚本操作mysql通用脚本的更多相关文章
- shell脚本操作mysql数据库
shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql -hhostname -Pport -uusername -pp ...
- shell脚本操作mysql库
shell脚本操作mysql数据库-e参数执行各种sql(指定到处编码--default-character-set=utf8 -s,去掉第一行的字段名称信息-N) 2011-05-11 18:18: ...
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
mysql -hhostname -Pport -uusername -ppassword -e 相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作m ...
- shell脚本--操作MySQL数据库
其实就是一个很简单的套路,和其他语言差不多,首先连接数据库,然后在进行其他操作. 套路如下: #!/bin/bash mysql="mysql -uroot -proot" #连接 ...
- shell脚本操作mysql数据库—创建数据库,在该数据库中创建表(插入,查询,更新,删除操作也可以做)
#!/bin/bash HOSTNAME="192.168.1.224" #数据库Server信 ...
- pymysql操作mysql的脚本示例
#!/usr/bin/env python#-*- coding:UTF-8 -*- from multiprocessing import Process , Queuefrom queue imp ...
- Shell脚本中执行sql语句操作mysql
对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的 ...
- shell执行mysql的脚本(包括mysql执行shell脚本)
在Shell中执行mysql的脚本,这里介绍比较容易使用的一种方法 首先写好sql的脚本,后缀为.sql,比如 sql_file.sql:内容如下 #这是SQL的脚本create table if n ...
- linux下的shell操作mysql
(1)MySQL的启动 重启了一次服务器后,使用> mysql -u root -p登陆是出现下面的错误: ERROR 2002 (HY000): Can't connect to local ...
- Shell操作mysql数据库
From : http://www.2cto.com/database/201306/220570.html Shell操作mysql数据库 mysql -hhostname -Pport -u ...
随机推荐
- Docker部署Springboot+Vue项目
1 docker使用nginx部署vue项目 1.1 打包vue项目 npm run build vue项目路径下会增加一个dist文件夹,里面就是网页文件 1.2 使用docker 拉取nginx ...
- 01Java常用类
Object类 Object概述 Object类是超类,基类,所有类都默认直接继承Object类. Object类中定义的方法,是所有对象都具备的方法. Object类可以存储任何类 - 可以作为 ...
- java-javaSE-泛型和反射
泛型 什么是泛型 泛型,即"参数化类型".顾名思义,就是将类型参数化,然后在使用/调用时传入具体的类型(类型实参). 为什么使用泛型 泛型提高程序操作的可读性和安全性. 例如集合类 ...
- #pragma 小节
(1)#pragma startup function-name <priority> (2)#pragma exit function-name <priority> 含 ...
- 关于nginx隐藏index.php入口文件注意事项
最近项目用的是nginx服务,apache怎么隐藏入口不赘述,官方文档有介绍,Nginx隐藏官方文档这样说的: 实践中,这样是不对的,应该在网站对应的vhost.conf中配置: server { l ...
- (原创)odoo中字段默认值的获取顺序
odoo中某个字段的默认值的取值顺序 1.搜索当前记录集(recordset)中的context中是否存在"default_字段名"的键,如果存在则取值 2.搜索模型(ir.def ...
- Java-Collectors.groupingBy
Java中的Collectors类的groupingBy()方法用于按某些属性对对象进行分组并将结果存储在Map实例中. 当我我们想利用它的特性,我们需要指定一个属性来执行分组.此方法提供的函数类似于 ...
- drf Serializer基本使用
drf序列化 在前后端不分离的项目中,可以使用Django自带的forms组件进行数据验证,也可以使用Django自带的序列化组件对模型表数据进行序列化. 那么在前后端分离的项目中,drf也提供了数据 ...
- UI动画练习 - CABasicAnimation:视图绕X/Y轴旋转(3D效果)
视图 3D 旋转 1 - 代码示例:以绕 X 轴旋转为例 1 #import "ViewController.h" 2 @interface ViewController () 3 ...
- 通过抓取pintpoint2的页面信息把数据存入数据库python3
目标:对生产环境的服务质量进行量化, 解决办法:把pintpoint2里的数据转存入mysql数据库,作成报表,目前支持总请求数,错误请求数,中位数,平均数,95值(每分钟一次定时任务),其它指标可以 ...