[置顶] 学习oracle心得

以下是我学习oracle做的心得笔记,仅供参考:

1、其实数据库就是 内存+硬盘  使用良好的程序算法最快的读出最准确的数据

2、oracle的结构就是instance(实例 进程) + database(数据文件 )

3、一个ORACLE实例只有一个SGA 系统全局区 当实例启动时就会占用相应的内在空间

     但是PGA会有多个,每当有一个server process 启动时就会有一个PGA区域。

4、SGA是最占用内存的区域

5、SGA包括shared pool

                     dababase buffer cache

                    redo log buffer

                    other structres(例如:lock and latch management,statistical data)

                    large pool 、java pool 是可配置的

         11g 中还增加了stream pool

6、SGA_MAX_SIZE  单位:granules  分配:SGA小于128M是4M 超过128就是16M

SGA是个连续分配内在的区域

查询granule

select component ,granule_size from v$sga_dynamic_components;

COMPONENT        GRANULE_SIZE
---------------------------------------------------------------- ------------
shared pool             4194304
large pool             4194304
java pool             4194304
streams pool             4194304
DEFAULT buffer cache            4194304
KEEP buffer cache            4194304
RECYCLE buffer cache            4194304
DEFAULT 2K buffer cache            4194304
DEFAULT 4K buffer cache            4194304
DEFAULT 8K buffer cache            4194304
DEFAULT 16K buffer cache           4194304

COMPONENT        GRANULE_SIZE
---------------------------------------------------------------- ------------
DEFAULT 32K buffer cache           4194304
Shared IO Pool             4194304
ASM Buffer Cache            4194304

14 rows selected.

7、进程分为USER PROCESS 、SERVER PROCESS 、BACKGROUD PROCESS

USER PROCESS 是客户端的进程

SERVER PROCESS 是服务端响应客户端响应的进程

--客户端通过TCP/IP连接访问服务端进程 、服务端可以通过虚拟的TCP/IP(lo 、127.0.0.1--local loopback 本地回路)或者是IPC(INTER PROCESS COMMUNICAITION)进行通讯。

BACKGROUND PROCESS是ORACLE的主要进程分为强制进程(MANDATORY)和可选进程(OPTION) 。

    MANDATORY PROCESS包括 DBWn(写数据文件的进程,n是序号,ORACLE最多可以有20个DBW进程同时工作)、 LGWR(写日志文件的进程)、SMON (SYSTEM MONITER)、PMON(PROCESS MONITER)、CKPT(CHECK POINT原来是由LGWR负责的)

OPTION PROCESS 比如:ARCn但是生产环境肯定是必须归档模式的,所以这个进程基本是必须的

8、SHARED POOL 包括library cache(SQL AREA ,PL\SQL AREA)、data dictionary cache()

9、PGA 一个服务进程就有一个PGA,如DBW LGWR等各自都有一个PGA区域

10、用户连接时客户端有一个USER PROCESS 服务端会启动一个SERVER PROCESS

11、一个tablespace可以有多个datafiles,一个datafile可以对应多个segment ,一个segment可以横跨多个datafile

必须是连接的db blocks才能组合成一个extent

 [置顶] 学习oracle心得_第1张图片

12、一个ORACE  SERVER包括instance 和database

       一个instance包括内存和后台进程PGA background process

      database 包括三种文件:datafile , online redo log file,control file

13、自从ORACLE 9.2.0以后不会提供SYS 和 SYSTEM用户的默认口令,必须要指定

注意手工用SQL语句创建数据库时,如果不指定这两个用户的口令,它会用默认的口令,这可能是个漏洞

[置顶] 学习oracle心得_第2张图片

14、show parameter sga;  --后面的参数名可以不写全,它会自动匹配

15、

[置顶] 学习oracle心得_第3张图片

16、什么是SID,SGA的内存unique key值是通过ORACLE_HOME和ORACLE_SID合起来再hash出来的,

所以如果设置SID或者HOME不正确,就有导致ORACLE NOT AVAILABLE ERROR的错误,

在WINDOWS环境下SGA不是共享内存的形式,但是如果一台机子上 将了一套数据库软件也就是在一个ORACLE_HOME下

唯一区别数据库的就是SID了

 

[置顶] 学习oracle心得_第4张图片

17、

 [置顶] 学习oracle心得_第5张图片

[置顶] 学习oracle心得_第6张图片

 

18、因为SPFILE是二进制文件,所以要查看的话可以用strings spfilemes.ora ,它是将可打印的字符打印出来。

19.SPFILE前面的*.  在多个instance对应一个数据库时有用,要把*改成实例名。

 

 20、

[置顶] 学习oracle心得_第7张图片

21、

 

 

22、alter system PFILE= 没有SPFILE=,如果要指定SPFILE的话,可以在PFILE中写上面的一句话,指定SPFILE的位置即可

 

23、 select * from fzq where regexp_like(value,'1[0-9]{4}60')

 24、

[置顶] 学习oracle心得_第8张图片

 

25、nomount只是读取spfile 分配SGA 启动部分后台进程  相当于车间和工作都好了 ,但是没有猪进行屠宰

26、mount 是读取内存中SPFILE的contorlfile的配置目录,打开读取数据文件、日志文件的配置   进行与数据库进行关联

[置顶] 学习oracle心得_第9张图片

 

26、

[置顶] 学习oracle心得_第10张图片

 

27、mount后 数据库已经挂载 但还是关闭状态,只能由管理员进行维护工作  mantanice

 

[置顶] 学习oracle心得_第11张图片

 

28、

 

[置顶] 学习oracle心得_第12张图片

 [置顶] 学习oracle心得_第13张图片

 

 

 恢复和回滚工作都是由SMON进程来执行的。

 

[置顶] 学习oracle心得_第14张图片

[置顶] 学习oracle心得_第15张图片

 

[置顶] 学习oracle心得_第16张图片

 

[置顶] 学习oracle心得_第17张图片

 

 

 

[置顶] 学习oracle心得_第18张图片

[置顶] 学习oracle心得_第19张图片

tail -f 可以动态观察内容的变化

 [置顶] 学习oracle心得_第20张图片

 数据库的文件一般就在oracle_base目录下的oradata、admin目录下有文件;

oradata存的是数据文件、日志文件、控制文件,admin是跟踪文件、pfile等

[置顶] 学习oracle心得_第21张图片

[置顶] 学习oracle心得_第22张图片

[置顶] 学习oracle心得_第23张图片

 

[置顶] 学习oracle心得_第24张图片

 

[置顶] 学习oracle心得_第25张图片

 

[置顶] 学习oracle心得_第26张图片

 

 

[置顶] 学习oracle心得_第27张图片

 

 

[置顶] 学习oracle心得_第28张图片

 

[置顶] 学习oracle心得_第29张图片

 

[置顶] 学习oracle心得_第30张图片

你可能感兴趣的:(oracle,数据库,算法,database)