GVKun编程网logo

从OS(Linux,AIX,UNIX)中终止Oracle进程/作业(linux结束oracle进程)

1

本文将为您提供关于从OS的详细介绍,我们还将为您解释Linux,AIX,UNIX中终止Oracle进程/作业的相关知识,同时,我们还将为您提供关于AIX下生成zip文件、AIX和LinuxC语言编译器

本文将为您提供关于 从OS的详细介绍,我们还将为您解释Linux,AIX,UNIX中终止Oracle进程/作业的相关知识,同时,我们还将为您提供关于AIX 下生成 zip 文件、AIX 和 Linux C 语言编译器差异总结、AIX 和 Linux 的区别?、AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的的实用信息。

本文目录一览:

 从OS(Linux,AIX,UNIX)中终止Oracle进程/作业(linux结束oracle进程)

从OS(Linux,AIX,UNIX)中终止Oracle进程/作业(linux结束oracle进程)

以下是在操作系统级别取消特定Oracle作业的步骤:

  1. 找到我们要杀死的工作以及与该工作相关的会话

  2. 将工作标记为“已损坏”

  3. 杀死Oracle会议

  4. 终止操作系统

1.找到我们要杀死的工作以及与该工作相关的会话

select j.sid,

s.spid,

 s.serial#,

j.log_user,

 j.job,

 j.broken,

 j.failures,

 j.last_date||':'||j.last_sec last_date,

 j.this_date||':'||j.this_sec this_date,

 j.next_date||':'||j.next_sec next_date,

 j.next_date - j.last_date interval,

 j.what

 from ( select djr.SID,dj.LOG_USER,dj.JOB,dj.broKEN,dj.FAILURES,

dj.LAST_DATE,dj.LAST_SEC,dj.THIS_DATE,dj.THIS_SEC,

dj.NEXT_DATE,dj.NEXT_SEC,dj.INTERVAL,dj.WHAT

from dba_jobs dj, dba_jobs_running djr

where dj.job = djr.job ) j,

 (select p.spid, s.sid, s.serial#

 from v$process p, v$session s

 where p.addr = s.paddr ) s

where j.sid = s.sid;

2.将作业标记为“已损坏”

begin

DBMS_JOB.broKEN(job#,TRUE);

commit;

end;

注意:执行此命令后,作业仍在运行。

3.终止Oracle会话

ALTER SYstem KILL SESSION 'sid,serial#';

注意:在许多情况下,该会话被标记为“已杀死”,但不会被杀死。  

4.终止操作系统

对于UNIX:
kill -9 spid

对于Windows在DOS提示符下: 
orakill sid spid

AIX 下生成 zip 文件

AIX 下生成 zip 文件

AIX 一般不提供 zip/pkzip 等 zip 工具。很多时候自行安装相应工具也不是可行的选项,这个时候有两个替代方案可选:

  1. 使用 JRE/JDK 中的 jar 工具,本文不详述。
  2. 写一个 Perl 脚本,使用 Perl 语言的 IO::Compress::Zip 库。本人条件所限,没有确认 AIX 在默认情况下 Perl 是否默认会安装此库,但是目前接触到的安装 Perl 语言的 AIX 都有此库。

下面是本人实现的一个简单的压缩文件夹的 Perl 脚本:

use strict;
use warnings;
use IO::Compress::Zip qw(zip $ZipError);

my $num_args = $#ARGV + 1;

if($num_args < 1){
	print "\nUsage: name.pl input_dir out_zip\n";
	exit -1;
}

my $input_dir=$ARGV[0];
my $out_zip=$ARGV[1];

#IO:Compress:Zip只能处理当前文件夹,因此需要先切换工作目录。
chdir($input_dir);

#此种实现方式,当前目录下不能有文件夹,否则会报错。待改进。
my @files = <*>;

zip \@files => $out_zip
	or die "zip failed: $ZipError\n";

如果一台 AIX 上既无 JAVA、又无 Perl,那可能只能老老实实改用 tar 包了。

AIX 和 Linux C 语言编译器差异总结

AIX 和 Linux C 语言编译器差异总结

xlc++ 和 g++

AIX 上使用的是 xlc++ 编译器,Linux 上使用的是 g++ 编译器。
对 C 标准中没有严格定义的行为,两个编译器的处理方式不一定相同,代码在两个平台运行会有不一样的表现。导致在一个平台运行正常,另一个平台可能就是 bug 了。
问题集中在以下几个方面

危险代码示例 xlc++ 编译器 g++ 编译器 处理方法
s=”12”<br>sprintf( r,"%04s",s ); s 不足四位左侧补’0’ <br> r=”0012” s 不足四位左侧补空字符 '' ''<br>r=”  12” 增加检查代码 <br>char p= r;<br>for (; p == '' ''; ++p)<br>*p=''0'';
文件描述符 file=NULL 时,<br> 写入内容 fprintf (file, "…"); 无法写入,程序继续向下执行 程序崩溃 增加判断 <br>if (file != NULL)
memcpy 越界复制数组数据 变量间地址分散,数组本身越界,对其他变量无影响,一般可以出正常结果。 变量间地址紧密相邻,数组本身越界,邻近定义的变量值也会被覆盖,结果异常。 检查对应位置复制内存长度,避免越界
结构体 s 包含 double 型变量 a,使用前没初始化 a 默认值 0.0 a 默认值为超大正数,导致程序崩溃 增加初始化处理 memset (&s, ''\0'', sizeof (s));

32 位系统 和 64 位系统

如果两个平台一个是 32 位版本另一个是 64 位版本,有些变量的长度会发生变化。需要注意的地方如下表格:

变量类型 32 位系统 64 位系统 危险代码及处理
long 4 字节 8 字节 避免使用 sizeof (long)来获取长度数值
指针 4 字节 8 字节 代码中一些 memcpy 和 strncpy 的第三个参数为 sizeof (指针),迁移后造成复制内存长度变化(4 变为 8)结果异常。需要根据情况修改,避免使用 sizeof 对指针这种长度随平台变化的变量进行操作。当数组名作为参数时也相当于一个指针,也不应进行 sizeof 操作。

AIX 和 Linux 的区别?

AIX 和 Linux 的区别?

AIX 和 Linux 的区别?

1、Linux是一个开放的系统,可以运行在大多数硬件环境中;aix属于专用系统,必须运行于专有硬件平台之上;所以最大的差别是支持的硬件平台不一样,Linux是在X86上跑的,AIX是专门为IBM自己的power架构开发的

2、AIX是商业版本UNIX,是付费产品,除了原有的systemV架构的UNIX基础指令外还开发了自身的管理指令;而linux是systemV架构的unix的简化版本,是开放源码的,所有指令的源码你都可以看到使用修改,也可以免费为他提供自己开发的指令

3、在基本命令方面用法都差不多也大部分一样,但也存在这差异;例如

查看IP地址及VLAN信息

AIX: ifconfig -a,lsdev -Cc adapater和lsattr -El ent8

Linux: ifconfig和 ip addr

有些aix 上有的命令在linux 上没有这些命令基本上和filesytem, lvm 相关的

例如:

lsdev ,lspv, lsvg, lslv ,lsfs...

chdev, chpv,chvg,...

4、LVM层面的命令有点不同,既磁盘管理。linux 先创建物理卷PV,再创建卷组VG,再创建LV和文件系统。同样AIX也是这样。在命令上面区别:aix : createvg linux: vgcreate

5、在文件系统上:AIX可以直接去创建文件系统,而且不需要去编辑fstab文件。AIX中你可以使用smitty菜单执行命令 smitty vg smitty mklv smitty fs等等,进去后就可以找到相应对VG和LV、文件系统操作的命令。另外AIX中的PV是直接被系统认到的磁盘:hdisk。可以根据需要,挂很多硬盘。vg 可以放在很多hdisk 上。而linux就需要先去创建pv。这样看来AIX在filesystem方面安全性、容量方面比linux要强些。

推荐教程:《PHP教程》

AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的

AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的

问题描述如标题。

我们今天的关于 从OSLinux,AIX,UNIX中终止Oracle进程/作业的分享已经告一段落,感谢您的关注,如果您想了解更多关于AIX 下生成 zip 文件、AIX 和 Linux C 语言编译器差异总结、AIX 和 Linux 的区别?、AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的的相关信息,请在本站查询。

本文标签: