本文将为您提供关于从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进程)
- AIX 下生成 zip 文件
- AIX 和 Linux C 语言编译器差异总结
- AIX 和 Linux 的区别?
- AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的
从OS(Linux,AIX,UNIX)中终止Oracle进程/作业(linux结束oracle进程)
以下是在操作系统级别取消特定Oracle作业的步骤:
-
找到我们要杀死的工作以及与该工作相关的会话
-
将工作标记为“已损坏”
-
杀死Oracle会议
-
终止操作系统
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/pkzip 等 zip 工具。很多时候自行安装相应工具也不是可行的选项,这个时候有两个替代方案可选:
- 使用 JRE/JDK 中的 jar 工具,本文不详述。
- 写一个 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 语言编译器差异总结
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 的区别?
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 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的
问题描述如标题。我们今天的关于 从OS和Linux,AIX,UNIX中终止Oracle进程/作业的分享已经告一段落,感谢您的关注,如果您想了解更多关于AIX 下生成 zip 文件、AIX 和 Linux C 语言编译器差异总结、AIX 和 Linux 的区别?、AIX 的 topas 能否像 Linux 下的 top -n1 一样只刷一次屏,就立即结束啊,或者有没有别的命令能实现这样的的相关信息,请在本站查询。
本文标签: