`
snowflakejun
  • 浏览: 2519 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

oracle执行系统命令

阅读更多

测试成功环境:windows XP+oracle 10g、window 2008 R2 + 11g

 

 

代码如下:

 

create or replace and compile Java Source named "OSCommand" as
-- java:        OS COMMAND

import java.io.*;
import java.lang.*;
public class OSCommand{
 
 
        public static String Run(String Command){
 
                Runtime rt = Runtime.getRuntime();
                int     rc = -1;
 
                try{
 
                        Process p = rt.exec( Command );
                        int bufSize = 32000;
                        int len = 0;
                        byte buffer[] = new byte[bufSize];
                        String s = null;
 
                        BufferedInputStream bis = new BufferedInputStream( p.getInputStream(), bufSize );
                        len = bis.read( buffer, 0, bufSize );
 
                        rc = p.waitFor();
 
                        if ( len != -1 ){
                                s = new String( buffer, 0, len );
                                return( s );
                        }
 
                        return( rc+"" );
                }
 
                catch (Exception e){
                        e.printStackTrace();
                        return(  "-1\ncommand[" + Command + "]\n" + e.getMessage() );
                }
 
        }
}
/ 
show errors
 
create or replace function OSexec( cCommand IN string ) return varchar2 is
-- function:    OS EXEC
-- descr:       PL/SQL wrapper for the Java OSCOMMAND stored proc
--
language        JAVA
name            'OSCommand.Run(java.lang.String) return java.lang.String';
/ 
show errors
 
 

-- sysdba. Substitute SCOTT with the applicable schema that owns the OSEXEC
-- and OSCOMMAND stored procs.
declare
        SCHEMA  varchar2(30) := 'SCOTT';
begin
        dbms_java.grant_permission(
                SCHEMA,
                'SYS:java.io.FilePermission',
                '<<ALL FILES>>',
                'execute'
        );
 
        dbms_java.grant_permission(
                SCHEMA,
                'SYS:java.lang.RuntimePermission',
                'writeFileDescriptor',
                '*'
        );
 
        dbms_java.grant_permission(
                SCHEMA,
                'SYS:java.lang.RuntimePermission',
                'readFileDescriptor',
                '*'
        );
 
commit;
end;
/ 
 
-- 查看本地连接信息
SQL> select OSexec('ipconfig') as STDOUT from dual;
 
STDOUT
--------------------------------------------------------------------------------
 
Windows IP ????
 
 
??????????? ????l?? 3:
 
   l??????? DNS ??? . . . . . . . :
   ????t?? IPv6 ???. . . . . . . . : *************
   IPv4 ??? . . . . . . . . . . . . : 192.168.100.100
   ????????  . . . . . . . . . . . . : 255.255.255.0
   ??????. . . . . . . . . . . . . : 0.0.0.0

--激活guest账号
 SQL> select OSexec('cmd.exe /c net user guest /active:yes') as STDOUT from dual;
 
STDOUT
--------------------------------------------------------------------------------
0
分享到:
评论

相关推荐

    在Oracle运行操作系统命令

    ### 在Oracle运行操作系统命令 在Oracle数据库环境中,有时需要在存储过程中执行操作系统(OS)命令,例如文件操作或系统管理任务等。尽管Oracle Enterprise Manager (OEM) 可以用来设置执行此类任务的作业,但其灵活...

    在Oracle数据库中运行操作系统命令

    在Oracle数据库中运行操作系统命令是特定场景下的需求,例如在Oracle 8i版本中,当需要在存储过程中执行操作系统级别的任务时,Oracle Enterprise Manager(OEM)提供的作业设定功能可能无法满足灵活的需求。...

    oracle常用cmd命令

    这个命令将授予用户 dba 权限, dba 权限是 Oracle 的最高权限,拥有这个权限的用户可以执行所有数据库操作。 五、其他 CMD 命令 除了上述命令外,还有许多其他的 CMD 命令可以用来操作 Oracle 数据库。例如: * ...

    oracle日常巡检命令集合

    "oracle日常巡检命令集合" Oracle日常巡检命令集合是数据库管理员最重要的工具之一,通过这些命令,...Oracle日常巡检命令集合可以帮助数据库管理员快速检查数据库的状态、性能和安全性,从而确保数据库的稳定运行。

    linux oracle imp exp 执行命令安装

    在Linux上安装Oracle Client是运行`imp`和`exp`命令的前提。通常,这涉及到安装Oracle Instant Client,这是一个轻量级的客户端软件包,包含了连接到Oracle数据库所需的基本库和工具。可以通过以下步骤进行安装: ...

    oracle 中shutdown命令的实用

    在某些情况下,我们可以尝试先在系统级杀掉非后台Oracle进程,然后再执行shutdown immediate命令。这样可以提高shutdown命令的安全性。在 Oracle8i 里,当数据库失去响应以后,我们可以在操作系统上杀掉用户进程,...

    Oracle命令

    其中,`as sysdba` 表示以系统管理员的身份登录,这对于执行某些需要较高权限的操作来说是必需的。 #### 数据字典查询 - **基本概念**:数据字典是存储有关数据库元数据信息的集合。Oracle 的数据字典分为两部分...

    ORACLE SQLPLUS 命令大全

    Oracle SQLPlus 命令大全是 Oracle 数据库管理系统中的一种命令行工具,提供了丰富的命令来管理和操作数据库。下面是 Oracle SQLPlus 命令大全的知识点总结: 一、HELP 命令 HELP 命令用于查看相关命令的信息,...

    Oracle导入导出命令bat执行命.rar

    批处理(BAT)文件是在Windows操作系统中运行的一系列命令的集合,它可以自动化重复性的任务,提高工作效率。在这个特定的案例中,批处理文件可能包含了创建新数据库空间、创建新用户,以及使用`expdp`和`impdp`进行...

    oracle开启关闭命令

    当需要完全卸载Oracle时,除了使用上述命令来启动或停止服务之外,还需要执行以下操作: 1. **通过Oracle Universal Installer卸载产品**: - 打开“Oracle-OraHome81OracleInstallationProducts”目录下的...

    个人总结oracle 9i常用命令(txt)

    - 执行`startup`命令来启动Oracle实例。 2. **关闭Oracle系统** - 同上,进入Oracle用户和SVRMGRL环境。 - 使用`shutdown`命令关闭Oracle实例。 3. **作为Root用户启动或关闭Oracle系统** - 通过`su - root`...

    Oracle DBA常用运维命令大全

    - **描述**: SQL*Plus 是 Oracle 提供的一个强大的命令行工具,用于执行 SQL 命令、脚本文件等。 - **用途**: 快速访问数据库环境。 **2. 以OS的默认身份连接** - **命令**: `/as sysdba` - **描述**: 使用当前...

    Oracle常用Dos命令

    9. **其他命令**:`conn`用于切换用户,`desc`显示表结构,`host`执行操作系统命令,`start`执行SQL脚本文件,`exit`退出SQL*Plus。另外,`startup`和`shutdown`(需要DBA权限)用于启动和关闭数据库实例,`col`格式...

    Oracle 导入导出命令集.rar

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在数据管理、事务处理和数据分析等领域有着卓越的表现。在Oracle中,导入导出数据是常见的数据库维护操作,对于数据备份、迁移和恢复至关重要。本资料...

    oracle运行命令大全

    ### Oracle 运行命令大全解析 #### 概述 Oracle 数据库是业界广泛使用的数据库管理系统之一,它提供了丰富的命令集来管理和操作数据库。本文将基于提供的部分命令进行深入解析,并结合 Oracle 的实际应用场景来阐述...

    Oracle启动管理命令

    通过了解并熟练掌握上述Oracle的启动、关闭及管理命令,可以更有效地维护和管理Oracle数据库,确保系统的稳定运行。同时,根据实际情况编写脚本自动化这些操作,能提高工作效率,减少人为错误。

    AIX下ORACLE RAC数据库系统日常维护常用命令.doc

    在系统启动完成后,请执行第一章节描述的操作确认 ORACLE 数据库系统正常运行。ORACLE 数据库系统启动需要一定耗时,尚未完全启动成功时,输出结果可能与第一章节描述结果不符。 三、ORACLE 数据库关机操作 ORACLE...

    启动、关闭 oracle11g bat 命令

    Oracle 11g作为Oracle公司推出的一款成熟且功能丰富的数据库系统,其管理和维护工作对于确保系统的稳定运行至关重要。在日常操作中,通过批处理(bat)命令来启动或关闭Oracle 11g服务是一种常见且高效的方法。下面...

    Oracle数据库sqlplus常用命令

    Oracle数据库sqlplus是Oracle数据库管理系统中的一种命令行工具,用于执行SQL语句、查看数据库状态、执行数据库管理任务等。以下是Oracle数据库sqlplus常用命令的知识点总结: 获取数据库信息 1. 获取数据库名和...

    Oracle命令 查询大全

    根据提供的文件信息,“Oracle命令查询大全”主要涵盖了Oracle数据库管理系统的各类命令,包括但不限于数据定义语言(DDL)、数据操纵语言(DML)、事务控制、查询语言等方面的内容。下面将对这些核心知识点进行详细...

Global site tag (gtag.js) - Google Analytics