当前位置:首页 » 编程语言 » shell调用sql文件

shell调用sql文件

发布时间: 2023-05-27 23:04:19

Ⅰ shell脚本中怎样同时执行多个.sql文件,并把结束写入文件中

因为one.sql主要做一些update工作,two.sql是查询验证,要把查到的数据写到文件中email给自己,
#!/bin/bash
USER="root"
DATABASE="test"
TABLE="user"
mysql -u $USER $DATABASE --html --default-character-set=utf8 < one.sql > /tmp/check.html
mysql -u $USER $DATABASE --html --default-character-set=utf8 < two.sql >> /tmp/check.html

Ⅱ shell中exe.sql调用exe.sql

shell中exe.sql调用exe.sql步骤。
1、定义需要乱饥凳执行的SQL文,以及需要输出文件。
2、设置需要执行的SQL文。
3、输出文件格式设置及其执行SQL文。
4、格式化哗旅输出文件。
5、将肢模文本格式转换为csv格式。

Ⅲ shell中调用sql 语句,再将结果返回shell作为变量

1、用sqlldr把数据导出到文件中。
2、再从文件中把数据读出来。
※我们实际项目中是这么做的。

--
以上,希望对你有所帮助。

Ⅳ 如何在shell中调SQLPLUS 执行SQL语句

1、实例1,获取TABLESPACE_NAME列表
#!/bin/sh
. ~/.bash_profile
sqlplus -s 'user/234256' <<EOF
spool v.txt
set linesize 200
col TABLESPACE_NAME format a50
col file_name format a50
select distinct(TABLESPACE_NAME) from dba_data_files order by TABLESPACE_NAME;
spool off
EOF
2、一句
echo -e "drop table test_BAK purge;"|sqlplus -s 'user/123499'
3、执行sql文件实例
#!/bin/bash
. ~/.bash_profile
sqlplus -s 'user/234256' @~/remove_old_data.sql

Ⅳ 达梦数据库怎么写shell脚本,怎么通过shell脚本调用sql脚本

通过shell脚本调用sql脚本:
1、shell脚本调用sql脚本
#首先编辑sql文件
oracle@SZDB:~> more dept.sql
connect scott/tiger
spool /tmp/dept.lst
set linesize 100 pagesize 80
select * from dept;
spool off;
exit;

#编辑shell脚本文件,在shell脚本内调用sql脚本
oracle@SZDB:~> more get_dept.sh
#!/bin/bash

# set environment variable

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

export ORACLE_SID=CNMMBO
sqlplus -S /nolog @/users/oracle/dept.sql #注意此处执行sql脚本的方法 -S 表示以静默方式执行
exit

#授予脚本执行权限
oracle@SZDB:~> chmod 775 get_dept.sh

-->执行shell脚本
oracle@SZDB:~> ./get_dept.sh

DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON

2、shell脚本调用rman脚本
#首先编辑RMAN脚本
oracle@SZDB:~> more rman.rcv
RUN {
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/users/oracle/bak/%d_%F';
ALLOCATE CHANNEL CH1 TYPE DISK MAXPIECESIZE=4G;
ALLOCATE CHANNEL CH2 TYPE DISK MAXPIECESIZE=4G;
SET LIMIT CHANNEL CH1 READRATE=10240;
SET LIMIT CHANNEL CH1 KBYTES=4096000;
SET LIMIT CHANNEL CH2 READRATE=10240;
SET LIMIT CHANNEL CH2 KBYTES=4096000;
CROSSCHECK ARCHIVELOG ALL;
DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
BACKUP
DATABASE FORMAT '/users/oracle/bak/%d_FULL__%U';
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
BACKUP ARCHIVELOG ALL FORMAT '/users/oracle/bak/%d_LF_%U' DELETE INPUT;
DELETE NOPROMPT OBSOLETE;
RELEASE CHANNEL CH1;
RELEASE CHANNEL CH2;
}

#编辑shell脚本文件,在shell脚本内调用rman脚本
oracle@SZDB:~> more rman_bak.sh
#!/bin/bash

# set environment variable

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
export ORACLE_SID=CNMMBO
$ORACLE_HOME/bin/rman target / cmdfile=/users/oracle/rman.rcv log=/users/oracle/bak/rman.log
exit

#授予脚本执行权限
oracle@SZDB:~> chmod 775 rman_bak.sh
#执行shell脚本

Ⅵ 如何在shell中调SQLPLUS 执行SQL语句

sqlplus命令本身可陪谨以卸载shell脚本中,只要环境变量配置了相关的命令路径就可以。
然后编写sql脚本,然后利用sqlplus 用户名/密码@XXX @sql命令文件.sql就可以了。
如果害怕两个@有冲突,那么就设置一个参数=用户名/密码锋雹@XXX
然后调用参数,就可以芦基基了。
如果还有其他需求,那么就利用sqlplus的set参数,来达到某些目的。
sqlplus的参数,比如-s等,也会有一些用处,这个要自己把握了。

Ⅶ 如何在mysql shell命令中执行sql命令行

本文介绍 MySQL 8.0 shell 子模块 Util 的两个导入特性 importTable/import_table(JS和python 版本的命名差异)、importJson/import_json的使用方法。


其中 import_table 是通过传统 MySQL 协议来通信,Import_json 是通过 X 插件协议来通信。MySQL 一直以来提供导入文件 SQL 命令 load data infile(单线程)以及对应的可执行文件 mysqlimport(多线程)。


比如我导入 100W 行示例数据到表 ytt.tl1,花了 24 秒。这个已经是 MySQL 默认导入来的最快的。分析那我们现在看下 mysqlimport 工具的升级版,mysqlshell 的 util 工具集。


使用这两个工具之前,必须得临时开启 local_infile 选项。1. import_table建立 3306 端口的新连接我这里切换为 python 模式清空掉示例表 Ytt.tl1import_table 有两个参数,第一个参数定义导入文件的路径,第二个定义相关选项,比如导入的格式,并发的数量等。定义文件路径(参数1)定义选项(参数2)执行导入:只花了不到 17 秒,比传统 mysqlimport 快了不少。


我们上面指定了显式指定了字段分隔符,那有没有已经定义好的组合格式呢? 答案是有的,选项 dialect 可以指定以下格式:csv,tsv,json,csv-unix那么上面的导入,我们可以更简单,改下变量 y_options1 的定义导入时间差不多。这里要说明下,dialect 选项的优先级比较低,比如添加了'linesTerminatedBy':' ', 则覆盖他自己的' '。


选项 diaelect 还有一个可选值为 json,可以直接把 json 结果导入到文档表里。比如我新建一张表 tl1_json重新定义文件以及导入选项。导入 JSON 数据速度也还可以,不到 24 秒。那导入 json 数据,就必须得提到以 X 插件协议通信的工具 import_json了。2. imort_json我们切换到 mysqlx 端口import_json 参数和 Import_table 参数类似,这里我改下选项我在手册上没有看到多线程的选项,所以单线程跑 35 秒慢了些。查看刚刚导入的数据import_json 不仅仅可以导入 Json 数据,更重要的是可以在 BSON 和 JSON 之间平滑的转换,有兴趣的同学可以去 TRY 下。


Ⅷ shell脚本执行.sql文件

<script type="text/javascript">
Leaf leaf = new Leaf("Leaf D");
root.Add(leaf);
root.Remove(leaf);
root.Display(1);
Console.Read();
}

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:336
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:944
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:742
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:372