Linux通过ps命令查看Oracle相关进程的方法是什么
Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境,与Oracle相关的进程也非常多,我们平时就可以通过ps命令来查看这些相关的进程。
Linux通过ps命令查看Oracle相关进程的方法
具体方法如下:
Oracle Listener
这个命令会列出Oracle Net Listener的进程
[oracle@ www.linuxidc.com ~]$ ps -ef | grep tnslsnr
oracle 1999 29986 0 09:47 pts/2 00:00:00 grep tnslsnr
oracle 3647 1 0 Jul03 ? 00:00:34 /u01/oracle/mc3yd213/db/tech_st/11.1.0/bin/tnslsnr mc3yd213 -inherit
oracle 6431 1 0 Jul03 ? 00:00:00 /u01/oracle/mc3yd213/apps/tech_st/10.1.2/bin/tnslsnr APPS_mc3yd213 -inherit
oracle 13616 1 0 May27 ? 00:00:40 /u01/oracle/mc3yd213/apps/tech_st/10.1.2/bin/tnslsnr LISTENER -inherit
[oracle@ www.linuxidc.com ~]$
Oracle Background Process
[oracle@ www.linuxidc.com ~]$ ps -ef | grep -i "ora_"
oracle 1887 1 0 09:42 ? 00:00:00 ora_w000_mc3yd213
oracle 2159 1 0 09:54 ? 00:00:00 ora_j000_mc3yd213
oracle 2167 29986 0 09:55 pts/2 00:00:00 grep -i ora_
oracle 3516 1 0 Jul03 ? 00:02:00 ora_pmon_mc3yd213
oracle 3518 1 0 Jul03 ? 00:02:08 ora_vktm_mc3yd213
oracle 3522 1 0 Jul03 ? 00:00:27 ora_diag_mc3yd213
oracle 3524 1 0 Jul03 ? 00:00:18 ora_dbrm_mc3yd213
oracle 3526 1 0 Jul03 ? 00:00:35 ora_psp0_mc3yd213
oracle 3528 1 0 Jul03 ? 00:05:59 ora_dia0_mc3yd213
oracle 3530 1 0 Jul03 ? 00:00:19 ora_mman_mc3yd213
oracle 3532 1 0 Jul03 ? 00:01:06 ora_dbw0_mc3yd213
oracle 3534 1 0 Jul03 ? 00:02:53 ora_lgwr_mc3yd213
oracle 3536 1 0 Jul03 ? 00:02:08 ora_ckpt_mc3yd213
oracle 3538 1 0 Jul03 ? 00:01:36 ora_smon_mc3yd213
oracle 3540 1 0 Jul03 ? 00:00:06 ora_reco_mc3yd213
oracle 3542 1 0 Jul03 ? 00:02:01 ora_mmon_mc3yd213
oracle 3544 1 0 Jul03 ? 00:03:20 ora_mmnl_mc3yd213
oracle 3564 1 0 Jul03 ? 00:00:09 ora_fbda_mc3yd213
oracle 3569 1 0 Jul03 ? 00:00:16 ora_qmnc_mc3yd213
oracle 3584 1 0 Jul03 ? 00:00:36 ora_q000_mc3yd213
oracle 3586 1 0 Jul03 ? 00:00:15 ora_q001_mc3yd213
oracle 3690 1 0 Jul03 ? 00:02:30 ora_cjq0_mc3yd213
oracle 3707 1 0 Jul03 ? 00:00:28 ora_smco_mc3yd213
oracle 7676 1 0 Jul03 ? 00:42:49 ora_m000_mc3yd213
eg.ora_pmon_mc3yd213 is PMON process,PMON (Process MONitor) is an Oracle background process created when you start a database instance. The PMON process will free up resources if a user process fails (eg. release database locks).
这些后台进程,从数据库里也是能查到的,可以使用下边这个SQL来查后台进程,在program列中,你就能看到SMON,MMON,CKPT,PMON,MMAN,MMNL...后台进程
select * FROM v$session WHERE type ='BACKGROUND';
Oracle Management Agent
ps -ef | grep emagent
oracle 2097 29986 0 09:51 pts/2 00:00:00 grep emagent
oraem 3130 1 0 May24 ? 00:08:57 /opt/oracle/oraem/agent10g/perl/bin/perl /opt/oracle/oraem/agent10g/bin/emwd.pl agent /opt/oracle/oraem/agent10g/sysman/log/emagent.nohup
oraem 3150 3130 0 May24 ? 00:25:56 /opt/oracle/oraem/agent10g/bin/emagent
补充:MySQL 数据库常用命令
create database name; 创建数据库
use databasename; 进入数据库
drop database name 直接删除数据库,不提醒
show tables; 显示表
describe tablename; 查看表的结构
select 中加上distinct去除重复字段
mysqladmin drop databasename 删除数据库前,有提示。
显示当前mysql版本和当前日期
select version(),current_date;
数据库维护方法
在MySQL使用的过程中,在系统运行一段时间后,可能会产生碎片,造成空间的浪费,所以有必要定期的对MySQL进行碎片整理。
当删除id=2的记录时候,发生的现象
这个时候发现磁盘的空间并没有减少。这种现象就叫做碎片化(有一部分的磁盘空间在数据删除以后(空),还是无法被操作系统所使用。)
常见的优化:
# alter table xxx engine myisam;
# optimize table t1;
注意: 在实际开发的过程中,上面两个语句尽量少使用,因为在使用的过程中,MySQL的表的结构会整体全部重新整理,需要消耗很多的资源,建议在凌晨两三点钟的时候执行。(在linux下有定时器脚本可以执行,crontab)
oracle数据库相关文章: