`
cuker919
  • 浏览: 90085 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

linux 后台执行oracle sql脚本

 
阅读更多

一、简单后台执行。

nohup sqlplus Oracle/Oracle@orcl @sql.sql &

--这样的写法会报错(Error45initializingSQL*PlusInternalerror)

今天打算写个后台执行清理单张表和备份sql脚本。发现一直报错,网上也没有具体的修改方法。

后来到别的博客去看看,有别的办法可以解决:


二、编写shell脚本和数据库sql脚本

1、table_clear_data.sql和clear_data.sh上传到oracle用户,目录为/opt/oracle/


2、clear_data.sh 脚本内容:

#!/bin/sh
sqlplus myname/pass <<EOF
@/opt/oracle/tabel_clear_data.sql;
EOF


3、table_clear_data.sql数据库脚本内容:

--备份表
create table mytabel_all_201401
NOLOGGING
as (select * from mytabel);

--1、删除不要的数据
delete from mytabel t where t.start_time < to_date('2012-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss') ;
commit;

--备份清理后的数据
create table mytabel_201401
NOLOGGING
as (select * from mytabel );


--清空mytabel,释放空间--超过1千万的表,需要truncate才能释放表空间,提高查询更新等效率。delete没用,没有释放全部空间。
truncate table mytabel;


--导入刚刚备份的数据到mytabel
insert into mytabel select * from mytabel_201401;
commit;


三、上传文件并执行脚本

1、table_clear_data.sql和clear_data.sh上传到oracle用户主目录下的/opt/oracle/目录);

目录必须正确,因为clear_data.sh脚本指定了该目录。

2、赋予权限和转码

chmod 777 clear_data.sh table_clear_data.sql

dos2unix clear_data.sh table_clear_data.sql


3、用oracle用户登录,执行脚本命令

su - oracle

cd/opt/oracle/

nohup./clear_data.sh & --必须加&符号,数据量大的话后台执行。

4、可以用tail -f nohup.out 查看当前执行的情况。



在网上参考的.sh脚本有别的写法,有时间再试试。

http://blog.csdn.net/hj402555749/article/details/7328508

http://blog.sina.com.cn/s/blog_a97aa69e01015wwb.html


分享到:
评论

相关推荐

    Oracle 主要配置文件介绍

    INTERVAL=60 5 存储追踪和告警文件的路径 user_dump_dest 指定记录 Oracle 用户进程产生的追踪和告警信息的文件的 存放路径 background_dump_dest 指定记录 Oracle 后台进程产生的追踪和 告警信息的...

    Oracle Database 11g初学者指南--详细书签版

     Michael J.Corey是Ntirety(ThecDatabasecAdministrationcExperts)的创始人和CEO.Michael的数据库情结可追溯到Oraclec3.0.Michael是IOUG(www.ioug.org)的前总裁和早期的Oraclec Press作者.他经常在世界各地的商业和...

    oracle数据库11G初学者指南.Oracle.Database.11g,.A.Beginner's.Guide

    《Oracle Database 11g初学者指南》能使读者快捷地掌握Oracle Database 11g的基础知识。通过自我评估教程,介绍了核心数据库技术、管理员职责、高可用性以及大型数据库特性。《Oracle Database 11g初学者指南》带领...

    Linux环境数据库管理员指南

    第3章 在 Linux上安装并运行 Oracle 40 3.1 引言 40 3.2 概念 41 3.2.1 系统全局区域 41 3.2.2 程序全局区域 42 3.2.3 表空间 42 3.2.4 数据文件 42 3.2.5 区 42 3.2.6 段 42 3.2.7 控制文件 42 3.2.8 重做日志 42 ...

    数据库基础

    第一部分 Oracle SQL*PLUS基础 23 第一章 Oracle数据库基础 23 §1.1 理解关系数据库系统(RDBMS) 23 §1.1.1 关系模型 23 §1.1.2 Codd十二法则 24 §1.2 关系数据库系统(RDBMS)的组成 24 §1.2.1 RDBMS 内核 24...

    MF00494-Core 5.0个人博客网站源码.zip

    1. 网站使用的sqlsugar ORM开源框架,相关文档请查看官网,数据库使用的是mysql,ORM支持7种数据库(MySql、SqlServer、Sqlite、Oracle、Postgresql),所以可以随意切换,具体请看sqlsugar官网文档 2. 数据库备份...

    db_monitor:python+Django+Vue数据库监控平台 OracleMySQLRedisLinux基础+性能监控

    深度定制: 提供完整可用的数据监控方案,告别冗长SQL脚本、常用手册,复杂数据通过web页面即可轻易浏览 功能简介 资源管理 Oracle/MySQL/Redis/Linux资源信息录入 资源管理中各类设备信息作为采集设备来源,支持动态...

    iGuard网页防篡改系统技术白皮书

    iGuard网页防篡改系统是完全保护Web网站不发送被篡改内容并进行自动恢复的Web页面保护软件。 iGuard网页防篡改系统(以下简称iGuard)采用...保护所有常用的数据库系统,包括:SQL Server、Oracle、MySQL、Access等。

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例017 Linux操作系统下启动XAMPP 32 实例018 设置MySQL数据库root用户的密码 33 实例019 第5个PHP程序 34 1.6 Dreamweaver开发工具 35 实例020 Dreamweaver中编码格式的选择 35 实例021 Dreamweaver中创建表格 36 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例017 Linux操作系统下启动XAMPP 32 实例018 设置MySQL数据库root用户的密码 33 实例019 第5个PHP程序 34 1.6 Dreamweaver开发工具 35 实例020 Dreamweaver中编码格式的选择 35 实例021 Dreamweaver中创建表格 36 ...

    华盾服务器管理专家 3.0.3.78.rar

    华盾服务器管理专家是一款服务器日常维护管理软件,集华盾独创的“WEB一站式管理”、用户权限管理、信息管理管理、...不需要SQL Server、Oracle、MySQL等数据库。使得您配置起来格外的轻便灵活,同时也减少了系统负担。

    javapms门户网站源码

    管理员对网站进行日常维护前须先进入管理后台登录页面,在输入帐号和密码后即可进入后台管理中心,如果登录信息输入错误超过三次,系统将要求输入验证码,防止恶意登录行为,加强系统安全性,登录界面如下图: ...

    Java学习笔记-个人整理的

    {12.14}SQL脚本}{177}{section.12.14} {12.15}Transaction}{177}{section.12.15} {12.16}char与varchar2}{178}{section.12.16} {12.17}number}{179}{section.12.17} {12.18}\ttfamily user\_tables, user\_...

    vc++ 开发实例源码包

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! 如题。详细见源码。 GMem 内存管理单元源码。GMem.cpp...

    vc++ 应用源码包_1

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! GMem 内存管理单元源码。GMem.cpp和GMem.h是内存管理...

    vc++ 应用源码包_2

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! GMem 内存管理单元源码。GMem.cpp和GMem.h是内存管理...

    vc++ 应用源码包_6

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! GMem 内存管理单元源码。GMem.cpp和GMem.h是内存管理...

    vc++ 应用源码包_5

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! GMem 内存管理单元源码。GMem.cpp和GMem.h是内存管理...

Global site tag (gtag.js) - Google Analytics