shell脚本执行sql文件及语句

2023-11-07

由于经常操作数据库,遇到频繁建表、加字段、索引、修改数据等问题,大多是操作多个数据库,sql文件或语句不固定,最后选择shell脚本来执行
eg:

在这里插入图片描述
在这里插入图片描述

1.多库建相同的表

#/bin/bash
host='127.0.0.1'
dbUser='root'
dbPassword=''
sql_file='test.sql'
city_array=('bj' 'sh' 'tj')
type="test"
for city in ${city_array[@]};
do

    dbName=${type}'_'${city}
    echo $dbName
    #多库建表
    mysql -h $host -u $dbUser -p$dbPassword -f $dbName -e "source $sql_file";
done

2.多库同表新建字段

#/bin/bash
host='127.0.0.1'
dbUser='root'
dbPassword=''
city_array=('bj' 'sh' 'tj')
type="test"
for city in ${city_array[@]};
do
    dbName=${type}'_'${city}
    echo $dbName
    #多库增加字段
    mysql -h $host -u $dbUser -p$dbPassword -e "
    use $dbName;
    ALTER TABLE test_table1 ADD refresh_time int(11)  DEFAULT '0' COMMENT '刷新时间';
    notee
    quit";
done

3.多库同表同字段修改内容

#/bin/bash
host='127.0.0.1'
dbUser='root'
dbPassword=''
city_array=('bj' 'sh' 'tj')
type="test"
for city in ${city_array[@]};
do
    dbName=${type}'_'${city}
    echo $dbName
    #多库修改字段值
    mysql -h $host -u $dbUser -p$dbPassword -e "
    use $dbName;
    update test_table1 set contents=REPLACE(contents,'','//') where contents like '//%';
    notee
    quit";
done
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell脚本执行sql文件及语句 的相关文章

  • Linux shell 标题大小写

    我正在编写一个 shell 脚本并有一个如下所示的变量 something that is hyphenated 我需要在脚本中的各个点使用它 如下所示 something that is hyphenated somethingthati
  • 如何从正则表达式中获取所有匹配项?

    我想获得所有出现的情况 0 9A Z 以供稍后处理 我有 if cat file 0 9A Z then echo BASH REMATCH fi 这给了我第一个匹配项 但是我如何处理文件中的所有匹配项 谢谢 如果您只想获取正则表达式的匹配
  • 在 shell 脚本中将脚本目录更改为用户的 homedir

    在我的 bash 脚本中 我需要将当前目录更改为用户的主目录 如果我想更改为用户的foo主目录 从命令行我可以执行以下操作 cd foo 效果很好 但是当我从script它告诉我 bar sh line 4 cd foo No such f
  • 基于文件位置而不是当前工作目录的相对路径[重复]

    这个问题在这里已经有答案了 Given some txt dir cat sh cat sh 的内容如下 cat some txt 然后运行 cat sh inside dir运行时工作正常 dir cat sh与dir才不是 我预计这是由
  • 如何在变量中存储标准错误

    假设我有一个如下所示的脚本 无用 sh echo This Is Error 1 gt 2 echo This Is Output 我还有另一个 shell 脚本 也无用 sh useless sh sed s Output Useless
  • 如何在 PHP 中执行 shell 脚本?

    我有一个脚本 var www myscript sh它创建文件夹并运行命令svn update对于我的项目 我需要通过在浏览器中的 PHP 文件中调用它来执行此脚本 即本地主机 test php 我尝试使用函数shell exec and
  • 终端从包含空格的变量传递参数

    在终端中如何将包含空格的字符串作为参数传递 它实际上跳过了空格后面的部分 只取第一个单词 word soccer ball shell exec casperjs test js word word 那么我怎样才能转义空白它只运行这个命令
  • 使用 unix ksh shell 脚本或 perl 脚本监视文件夹中的新文件并触发 perl 脚本

    我已经在谷歌搜索和溢出了一段时间 但找不到任何可用的东西 我需要一个脚本来监视公共文件夹并在创建新文件时触发 然后将文件移动到私有位置 我有一个 samba 共享文件夹 exam ple 在 UNIX 上映射到X 在窗户上 在某些操作中 t
  • 如何输入带有空格的路径?

    我有一个主文件 它使用 从主文件我做一个源 一个带有指向路径的变量的属性文件 属性文件如下所示 TMP PATH COMPANY someProject tmp OUTPUT PATH COMPANY someProject output
  • 在 bash 脚本中设置变量[重复]

    这个问题在这里已经有答案了 test sh 包含 A 1 B 2 我将 test sh 设置为 chmod 777 我用两个参数启动脚本 test sh first last 然后我通过输入以下内容对其进行了测试 echo FirstVar
  • 如何让 Jenkins 2.0 在与结帐相同的目录中执行 sh 命令?

    这是我的 Jenkins 2 x 管道 node master stage Checkout checkout scm stage Build Pex sh build sh 当我运行此管道时 签出会按预期将代码放入工作区 但是它并没有期望
  • 拼写检查 shell 脚本

    我有一些疑问 我对一个应该是简单拼写检查器的脚本有疑问 它的目的是 当发现错误的单词时 它会提示用户输入该单词的正确拼写 如果用户输入正确的拼写 则会显示更正的单词以及错误的单词 下面 在读完所有单词之后 但是 如果用户只是按 Enter
  • 在Java中执行.lnk文件

    我需要在java中执行 lnk文件 指向exe文件的lnk文件 我能怎么做 在 VB net 中我做 Process Start path 它有效 谢谢你的帮助 Use a 流程构建器 http download oracle com ja
  • Git - 显示远程分支的远程名称

    是否有一个 Git 命令可以显示远程分支的远程名称 目前 我坚持使用 shell utils 从远程分支引用中提取远程名称 例如 echo remote name branch name sed r s 1 remote name 有时出于
  • 类似 jq 中的 sql join

    我有以下 json id 1 type folder title folder 1 id 2 type folder title folder 2 id 3 type item title item 1 folder 1 id 4 type
  • 使用 shell=True 将 PATH 设置为 bitbake 的“source”在 Python 中没有效果

    下面是shell脚本中的代码 source proj common tools repo etc profile d repo sh repo project init branch repo project sync source pok
  • 在 bash 中添加(收集)退出代码

    我需要依赖于脚本中的几个单独的执行 并且不想将它们全部捆绑在一个丑陋的 if 语句中 我想使用退出代码 每次执行并添加它 最后 如果这个值超过阈值 我想执行一个命令 伪代码 ALLOWEDERROR 5 run something RESU
  • 关键字“if”如何测试一个值是真还是假?

    在 bash 脚本中 if 1 then echo Yes else echo No fi Output Yes 它表示 1 被视为真值 但在代码中 word Linux letter nuxi if echo word grep q le
  • Bash:递归复制命名文件,保留文件夹结构

    我希望 cp R src prog js images icon jpg tmp package 将在目标目录中产生对称结构 tmp package src prog js images icon jpg 但相反 这两个文件都被复制到 tm
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任

随机推荐

  • 【SLAM学习笔记3】ORB-SLAM2中的方向梯度直方图(HOG,Histogram of Gradient)

    文章目录 前言 一 基础知识 1 梯度 gradient 2 一阶微分 3 图像梯度计算 图像微分 的应用 4 卷积 二 方向梯度直方图 旋转直方图 1 HOG特征 1 核心思想 2 实现方法 3 进一步优化 4 优点 具有尺寸不变性和光照
  • 模式标记

    另一可供选择的compile 方法接受影响正则表达式的匹配行为的标记作为其参数 PatternPattern compile String regex int flag 在这些标记中 特别有用的是 Pattern CASE INSENSIT
  • Android跨进程通信导论,使用指南

    前言 不清楚你是不是知道 咱们中国有相当大的一部分软件公司 他们的软件开发团队都小的可怜 甚至只有1 3个人 连一个项目小组都算不上 而这样的团队却要承担一个软件公司所有的软件开发任务 在软件上线和开发的关键阶段需要团队的成员没日没夜的加班
  • Arduino+ESP8266上传至oneNet云

    一 硬件简介 1 Arudino 是一种开源的电子平台 该平台最初主要基于AVR单片机的微控制器和相应的开发软件 包含硬件 各种型号的Arduino板 和软件 Arduino IDE 2 ESP8266 是深圳安信可科技有限公司开发的基于乐
  • 2021林西一中高考成绩查询,2021年内蒙古高考状元多少分,今年内蒙古高考状元资料名单...

    2021年内蒙古高考成绩发榜时 最引起了人们的好奇的就是最高分的考生是谁 毕竟高考最高分乃一个省市地区在高考当中最耀眼的存在 大家好奇也实属正常 2021年内蒙古高考最高分是谁呢 目前暂无公布消息 小编为大家整理了历年内蒙古高考最高分的相关
  • mysql开启binlog并配置定期删除以及文件大小,删库跑路之数据恢复

    目录 一 开启并binlog日志并配置 1 配置文件 2 参数说明 log bin log bin basename binlog error action binlog format binlog do db和binlog ignore
  • 雷达流量计的工作原理及安装注意事项

    雷达流量计的工作原理 平面雷达水位计是一款用于地表水液位监测的非接触式平面雷达水位计 基于精确测量的电磁波测距技术 传感器发射电磁波照射水面并接收其回波 由此获得水面至电磁波发射点的距离 距离变化率 径向速度 方位 高度等信息 平面雷达水位
  • uni app vue 设置页面背景色

    vue页面设置页面背景色 总是无法充满页面高度 最关键代码一句 min height 100 page width 100 background color f6f6f6 min height 100
  • gin 框架中的 gin.Context

    前言 Context 是 gin 中最重要的部分 例如 它允许我们在中间件之间传递变量 管理流程 验证请求的 JSON 并呈现 JSON 响应 Context 中封装了原生的 Go HTTP 请求和响应对象 同时还提供了一些方法 用于获取请
  • 一步解决Computed property “xxx” was assigned to but it has no setter.报错

    问题描述 用uniapp开发小程序过程中遇到了Computed property xxx was assigned to but it has no setter 这个报错 看来是计算属性出现了问题 不过这个报错更像是警告 因为该计算属性可
  • 蒲公英R300A 4G路由器,远程监控PLC教程

    一 创建智能组网 1 创建网络添加成员 登陆蒲公英网络管理平台 https console sdwan oray com 进行智能组网 组网教程戳我 如图 创建蒲公英智能组网成功 可以看到网络内的路由及客户端成员 硬件成员 R300A路由器
  • antv G2在Vue中基本使用

    装载数据 语雀 npm install antv g2 save V2 div div import as G2 from antv g2 mounted this chart new G2 Chart container c1 width
  • $nextTick是什么

    概述 nextTick 是一个用于在DOM更新完成后执行回调函数的方法 vue的数据更新是一种延迟异步更新 在vue中修改数据后 页面不会立刻更新 而是开启一个队列 并且缓存同一轮事件循环中的所有数据改变 在缓冲时会除去重复的操作 等到下一
  • JavaScript DOM

    JavaScript DOM DOM Document Object Model 文档对象模型 将 HTML 文档的各个组成部分 封装为对象 借助这些对象 可以对 HTML 文档进行增删改查的动态操作 Element元素的获取操作 具体方法
  • 集群Linux各个节点的配置------IP地址

    启动主服务器HadoopMasterServer和HadoopSlaveServer1 HadoopSlaveServer2 三个都启动后等待登陆 使用root 账号登陆 密码使用安装系统时设定的那个 想使用Xshell连接操作的话 请参照
  • CTF Crypto简单题学习思路总结(持续更新)

    系列文章目录 本系列开篇文章 就没有链接了 文章目录 系列文章目录 前言 一 编码 解码 1 1 BrainFuck密码 ook 密码 1 2 URL编码 HTML实体编码 1 3 Unicode编码 XXencode编码 AAencode
  • 脚本方式本地仓库jar包批量导入maven私服

    脚本内容 将以下内容保存为mavenimport sh 放置于需要上传的目录下 可以是顶层目录 或者某个分包的目录 若私服已有待上传的包 则执行会被替换 bin bash copy and run this script to the ro
  • Python——for循环中如何设置跳过下一次循环

    是很笨的一个分享 但是确实让我少走了很多看起来很牛逼的弯路 当我心里产生这个好奇的时候搜到了一大堆高大上的回答 还是不配了 题目的背景的一个细节是检索字符串右边那一位 如果大于左边一位 需要将二者做差 然后右边那一位就直接跳过 for i
  • RabbitMQ优秀博文整理

    1 关于主流MQ的介绍 各MQ的优缺点 MQ的使用选举等 MQ消息队列详解 四大MQ的优缺点分析 从百草园杀到三味书屋 的博客 CSDN博客 几种消息队列的优缺点 2 RabbitMQ常见问题的整理 以及解决思路 图文并茂 比较详细 Rab
  • shell脚本执行sql文件及语句

    由于经常操作数据库 遇到频繁建表 加字段 索引 修改数据等问题 大多是操作多个数据库 sql文件或语句不固定 最后选择shell脚本来执行 eg 1 多库建相同的表 bin bash host 127 0 0 1 dbUser root d