`
flamenco
  • 浏览: 41846 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

bat,shell批量执行数据库脚本

阅读更多
install.bat
@echo off &setlocal enabledelayedexpansion
if exist temp rd /S/Q temp
if exist logs rd /S/Q logs
mkdir temp
mkdir logs
set type=oracle
set temp_sql=temp\temp_%type%.sql
set execute_sql=temp\execute_%type%.sql
set log_file=logs\log_%type%.txt
set str1=SQL_END
set str2=exit;

echo "Reading script,please wait..."

for /f %%i in (config\config_%type%.ini) do (
    for /f %%j in (%%i) do (             
        echo %%j>>%temp_sql%
    )   
)

copy /Y config\execute_%type%.sql temp >> %log_file%

echo "Writing script,please wait..."

for /f %%a in (%temp_sql%) do (       
    echo %%a >> %execute_sql%           
)
echo %str2% >> %execute_sql% 
echo %str1% >> %execute_sql% 

echo "Executing script,please wait..."

sqlplus /nolog @%execute_sql% >> %log_file%   

echo "Execute finish,please check logs file: %log_file%."

notepad %log_file%







install.sh
#!/bin/sh
rm -rf temp
rm -rf logs

mkdir temp
mkdir logs

temp_sql=temp/temp.sql
execute_sql=temp/execute.sql
log_file=logs/log.txt
ttisql_home=
ttisql_name=

str1=SQL_END
str2=exit

echo "Reading script,please wait..."

ttisql_home=`cat config.ini  | grep TTISQL_HOME | awk -F= '{print $2}'`
ttisql_name=`cat config.ini  | grep TTISQL_NAME | awk -F= '{print $2}'`

echo "$ttisql_home/bin/./ttisql $ttisql_name <<SQL_END"  >> $temp_sql

echo "Writing script,please wait..."

cat execute.sql >> $temp_sql

cat $temp_sql >> $execute_sql

echo $str2 >> $execute_sql
echo $str1 >> $execute_sql

echo "Executing script,please wait..."

chmod +x $execute_sql

./$execute_sql >> $log_file

echo "Execute finish,please check logs file: $log_file"

exit
分享到:
评论

相关推荐

    shell和bat整合小demo

    Shell脚本是用shell语言编写的一系列命令,可以批量执行任务,提高工作效率。在这个demo中,shell脚本可能是用于在远程服务器上执行SQL查询或执行其他与数据库相关的任务。 接着,我们来看看BAT文件。BAT是Windows...

    bat/cmd批处理连接SqlServer数据库查询脚本

    批处理脚本是一种传统的自动化脚本语言,常用于Windows操作系统中批量执行命令。SqlServer是微软公司开发的一个功能强大的关系数据库管理系统,广泛应用于企业级数据存储和管理。 首先,作者提到了批处理脚本连接...

    mysql批量执行sql文件的方法

    在Unix/Linux环境中,你还可以利用shell脚本来批量执行SQL文件。例如,创建一个`.sh`文件,然后使用循环结构来调用`mysql`命令执行每个SQL文件。 通过上述方法,你可以根据实际需求和环境灵活地在MySQL中批量执行...

    开机一键的程序包,脚本一键方便

    脚本是一种包含了一系列命令的文本文件,这些命令可以被解释器或 shell 执行,以完成特定的任务。在Windows环境下,常用的脚本语言是批处理(.bat)文件,它是一种简单的命令行脚本,可以通过系统命令行来执行。 ...

    一个备份数据库的批处理文件

    标题中的“一个备份数据库的批处理文件”指的是在IT领域中使用批处理脚本来执行数据库备份的操作。在数据库管理中,定期备份是非常重要的,因为这能保护数据免受意外丢失,比如硬件故障、软件错误或者恶意攻击。...

    批处理对数据库的应用

    在Unix/Linux环境中,则可以使用Shell脚本来实现类似的功能。 #### 五、案例分析 假设有一个电子商务网站需要定期处理大量的订单数据。为了提高处理效率,可以采用批处理技术来优化数据处理流程: 1. **数据收集*...

    实现MySQL定时批量检查表repair和优化表optimize table的shell脚本

    这个shell脚本通过定时任务(如cron job)执行,可以实现自动化的数据库维护。定时检查和优化MySQL表有助于保持数据库的最佳状态,避免因为数据问题导致的应用程序故障。 值得注意的是,在实际应用中,应根据具体...

    Oracle 批量导入工具

    在批量导入大数据时,通常会结合shell脚本(bat文件在Windows环境下)进行自动化操作,提高效率。 2. External Tables: External Tables是Oracle数据库提供的一种虚拟表类型,它允许将数据文件视为数据库表进行...

    OD Scripts

    1. **批处理脚本**:在Windows环境中,批处理脚本(.bat或.cmd文件)用于执行一系列命令,比如文件的批量重命名、备份操作等。用户可以通过这些脚本自动化日常重复性工作。 2. **Shell脚本**:在Unix或Linux系统中...

    studio-3t-x64安装包和无限试用脚本.rar

    - 脚本和自动化:编写和执行MongoDB shell命令,支持批处理操作。 - 性能监控:实时监控MongoDB服务器的性能指标,帮助优化数据库性能。 总的来说,MongoDB Studio 3T是一个强大而全面的MongoDB管理工具,通过正确...

    itoo-快捷部署脚本-V1.0.1李社河-2014年12月22日--测试成功版

    它们可以定制化以满足特定项目的需求,包括但不限于安装依赖、配置文件、运行服务器、执行数据库迁移等。 在实际应用中,快捷部署脚本可能会包含以下关键部分: 1. **环境准备**:检查系统环境,确保必要的软件和...

    批量删除

    2. **Linux/Unix Shell脚本**:在Linux或Unix系统中,bash脚本可以执行类似的操作。`rm -rf 文件或目录`命令可以删除文件或目录,但请注意,`-rf`参数会强制删除,不进行确认,因此使用时需谨慎。 3. **编程语言**...

    批处理删除

    批处理文件(.bat)是包含一连串命令的文本文件,这些命令会在执行时按顺序运行。例如,使用`del`或`rd`命令可以批量删除指定目录下的文件或整个目录。在批处理脚本中,可以通过循环结构遍历文件列表,然后执行删除...

    大量批处理实用程序例程

    shell.bat SHELL Shell Temp 简介 svc2kxp深山红叶汉化版本.cmd 介绍 lmod OptimizeXp.bat list 全盘禁止运行指定程序.cmd 2003优化文件.bat 关闭无用的服务(XP).bat install.CMDcmd 快速清理垃圾文件.bat 注册右键 ...

    右键菜单添加“复制文件路径”

    批处理文件(.bat)是Windows系统中的一种脚本文件,它可以包含一系列的命令,用于批量执行操作,比如修改注册表、安装软件等。在这种情况下,运行批处理文件将自动完成“复制文件路径”功能的设置,无需用户手动...

    經典批處理 經典批處理

    3. **脚本语言**:如Windows批处理(.bat文件),Unix/Linux的Shell脚本等,用于编写批处理任务的具体指令。 4. **并行处理**:批处理系统可能支持并行化执行,通过多线程或多进程提高处理速度。 5. **错误处理和...

    一键清除任何显卡生成的桌面右键多余菜单

    批处理是基于DOS命令的一种自动化处理方式,通过编写简单的文本文件(扩展名为.bat或.cmd),可以批量执行一系列命令。在这个场景下,"清除任何显卡生成的桌面右键多余菜单.cmd" 文件就是一个批处理脚本,用于删除...

    MonetDB快速入门1

    创建数据库、启动和释放数据库,以及连接和查询,都可以通过shell命令完成,例如使用`mclient`作为客户端工具连接数据库,使用`monetdb`执行数据库操作,`mondetdbd`管理守护进程,而`mserver5`用于调整服务器参数。...

    ETL开源工具Kettle培训

    在Kettle中,Transformation专注于数据的ETL处理,而Job则更注重工作流程的控制,可以包含Transformation以及其他动作,如邮件发送、SQL执行、Shell脚本等。 Kettle的安装非常简单,只需要Java运行环境支持,解压缩...

    DB MongoDB Client Robomongo x64 V0.9.0 便携版

    4. 脚本执行:使用内置的MongoShell或者自定义脚本来执行更复杂的数据库操作。 5. 性能监控:查看MongoDB服务器的性能指标,如内存使用、I/O操作等。 6. 导入导出:将数据导入到MongoDB或导出为JSON、CSV或其他格式...

Global site tag (gtag.js) - Google Analytics