加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 数据库 > Oracle > 正文

oracle 用户管理

发布时间:2020-05-22 11:19:24 所属栏目:Oracle 来源:互联网
导读:1.用户进程 Ps Celf | greporacleocl |grepCv grep 2.数据库进程 Ps Celf |greporacleorcl 3.守护进程 Ps Celf |grep oha 大池:在SGA中,大池是一个可选的缓冲区域,管理员可以根据需要对其进行配置,在大规模输入输出及备份过程中需要大池作为缓存空间,例

1.用户进程

Ps Celf | greporacleocl |grepCv grep

oracle 用户管理

2.数据库进程

Ps Celf |greporacleorcl

oracle 用户管理

3.守护进程

Ps Celf |grep oha

oracle 用户管理

大池:在SGA中,大池是一个可选的缓冲区域,管理员可以根据需要对其进行配置,在大规模输入输出及备份过程中需要大池作为缓存空间,例如,大数据操作、数据库备份与恢复之类的操作。

Java池:Java池是一个可选的缓冲区,但是在安装java或者java程序时必须设置Java池,它用于编译Java语言编写指令。

六大核心进程:

DBWn进程:用来将buffer cache中的脏数据写入到硬盘中数据文件中。

什么是脏数据,例如我执行如下语句

SQL> update emp set sal=sal+100;

此时修改过的数据存放在内存中,并没有保存到硬盘上的数据文件中,这些数据缓存在buffer cache中,该事务还没有提交(commit),这样修改过还没有写入硬盘数据文件的数据我们称之为脏数据。其实此时在打开一个会话,使用SCOTT用户连接查看emp表中数据是未修改过的数据。所以在oracle中这样的操作是异步写入,多个进程可以同时写入,多个账户就会有多个DBWn进程,其实进程名叫DMW,后面的n是产生的进程标识

SQL> update scott.emp set sal=sal+100;

已更新14行。

SQL>

oracle 用户管理

LGWR:日志写入进程只有一个

oracle 用户管理

当用户commit(提交事务)时触发lgwr进程

当red log buffer空间的三分之一空间被使用完时会触发lgwr进程

把脏数据写入磁盘之前,该LGWR进程将日志信息先写入到日志文件中,每隔3秒中执行这样的动作。

LGWR进程不能有多个,因为日志是顺序是写入的,不能做并行写入,否则无法做数据恢复。

CKPT进程:检查所有数据文件和控制文件的头部是否一致,是确保在数据缓冲区中所有修改过的数据块都被写入到数据文件中的一种机制,就是确保数据完整性的一种机制。但检查点完成后,CKPT进程负责更新数据文件和控制文件的头部信息,并保存检查点信息,以保证数据库日志文件和数据文件的同步。其原理是在数据库恢复时,只需找到CKPT保存的最后一次检查点,就可以根据它确定在日志文件中恢复数据的起始位置,重新执行之后的日志信息即可。

SMON进程:如果数据文件和控制文件头部不一致,就会触发SMON进程。在实例启动时SMON进程会检查所有数据文件的同步信息与控制文件中记录的检查点信息是否一致,不一致就启动实例恢复操作。其实CKPT进程是给SMON进程使用的。

PMON进程:进程监控进程,PMON进程管理用户会话,这个进程会在某个会话出现问题时执行的适当的操作。例如用户的个人计算机在登录到数据库时重新启动,PMON就能能够检测到这个问题,而且还会整理用户正在进行的任何操作。


1.1.oracle存储结构

数据文件相关知识

想查看系统中有多少个数据文件我们可以通过动态数据字典或静态数据字典来查看:通过静态数据字典查看数据文件

oracle 用户管理

通过动态数据字典来查看数据文件

oracle 用户管理

直接查看数据文件的内容是看不到的,必须通过一个逻辑的结构即表空间来查看数据文件的内容。表空间是一个逻辑存储结构,而数据文件是一个物理的结构。

如何查看表空间

oracle 用户管理

也可以通过dba_tablespaces查看表空间

oracle 用户管理

数据字典是一个逻辑的存储结构,而数据文件是一个真实的存储结构,如果有了表空间,而没有数据文件是不可以,表空间和数据文件是相对应的,如果没有数据文件,表空间不可能独立存在,如果只有表空间没有数据文件也是不行的,就好比如果电脑没有硬盘,你不能再逻辑上看到C盘D盘,在这里硬盘就相当于是数据文件,而C盘就相当于是表空间。我们可以把多个数据文件组成一个表空间,然后在表空间里面存储数据,表空间和数据文件是对应的,一个表空间可以是由一个或多个数据文件组成的,但是一个数据文件只能在一个表空间当中,我们如何查看表空间和数据文件之间的对应关系呢?

oracle 用户管理

也可以查看表空间的大小

oracle 用户管理

也可以在上述的表空间中创建新的数据文件。如果表空间不够用了,只需创建相应的数据文件即可。表空间大小就是组成数据文件的大小的总和,最终数据文件存放在硬盘里的,但是我们可以把数据文件存放在不同的硬盘里面,只要在一个表空间即可,这样就解决了硬盘大小对文件的限制,可以将多个硬盘中的数据文件组成一个表空间。

所以在表空间中DBA会存放很多的表,视图,索引,同义词等对象。

段:例如在xx表空间DBA创建了一个名为test的表,这张表表空间所占用的空间,我们称之为段。根据段中存储的对象的不同分为了数据段,索引段,回退段,临时段等

可以查看段的信息

oracle 用户管理

对于段又有个更小的单位,称之为“区”

区(extent):区是磁盘空间分配的最小单位,磁盘按区划分,每次至少分配一个区,区由连续的数据块组成,段主要由一个或多个区构成,当段创建时,它至少包含一个区,当段中所有空间已经使用完成时,系统自动为该段分配一个新区,区不能跨数据文件存在,只能存在于一个数据文件中。

段是由区组成的,段必须是区的整数倍,假如一张表是25MB,一个区大小是4MB,那么段的大小是28MB,如果在表里添加了3MB的数据,此时段的空间还能容纳表,现在表的大小是28MB,如果又添加了1MB,此时29MB,那么段的空间是32MB.

oracle 用户管理

查看EXAMPLE表空间的区和段的分布情况

oracle 用户管理

在oracle数据库中最小的存储单位是块(block)--8KB,oracle数据库中的数据存储于数据块中。数据块是oracle服务器所能读取或写入的最小存储单元,oracle服务器以数据块为单位管理数据文件的存储空间,数据块的取值范围为2-64KB,其默认大小与oracle版本有关。

oracle 用户管理

查看操作系统的最小存储单元

[root@orclsrv ~]# tune2fs -l /dev/sda1

通过OEM也可以查看这些信

oracle 用户管理

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读