今天看了教学录像的第一部分,虽然都是比较基础的概念,但还是有很多的收获,我记录实验的部分和比较关注的点:
SQL> show sga –显示sga的相关信息
Total System Global Area 126950220 bytes
Fixed Size 453452 bytes
Variable Size 109051904 bytes
Database Buffers 16777216 bytes
Redo Buffers 667648 bytes
SQL> set wrap off;
SQL> set linesize 200;
SQL>select * from v$bgprocess; --显示后台进程的相关信息
SQL> l
1* select * from v$bgprocess
SQL> a where paddr<>'00';
1* select * from v$bgprocess where paddr<>'00' ---显示必须的后台进程
SQL> /
PADDR NAME DESCRIPTION ERROR
-------- ----- ---------------------------------------------------------------- ----------
681E478C PMON process cleanup ##########
681E4B4C DBW0 db writer process 0 ##########
681E4F0C LGWR Redo etc. ##########
681E52CC CKPT checkpoint ##########
681E568C SMON System Monitor Process ##########
681E5A4C RECO distributed recovery ##########
681E5E0C CJQ0 Job Queue Coordinator ##########
681E61CC QMN0 AQ Time Manager Process 0 ##########
SQL> select * from v$controlfile; -- 显示控制文件的相关信息
STATUS NAME
------- --------------------------------------------------------------------------------------------
D:\ORACLE\ORADATA\GAME\CONTROL01.CTL
D:\ORACLE\ORADATA\GAME\CONTROL02.CTL
D:\ORACLE\ORADATA\GAME\CONTROL03.CTL
SQL> select * from v$datafile; --显示数据文件的相关信息
FILE# CREATION_CHANGE# CREATION_TIME TS# RFILE# STATUS ENABLED CHECKPOINT_CHANGE#
---------- ---------------- ------------------- ---------- ---------- ------- ---------- -----------
1 11 2002-05-12 16:17:58 0 1 SYSTEM READ WRITE 16939316 2009-08-01 11:27:55
2 187697 2002-05-12 20:22:54 1 2 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
3 6283 2002-05-12 16:19:08 3 3 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
4 6302 2002-05-12 16:19:11 4 4 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
5 6324 2002-05-12 16:19:24 5 5 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
6 6343 2002-05-12 16:19:27 6 6 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
7 6363 2002-05-12 16:19:30 7 7 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
8 6382 2002-05-12 16:19:32 8 8 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
9 6401 2002-05-12 16:19:36 9 9 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
10 6420 2002-05-12 16:19:39 10 10 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
11 195293 2009-01-04 12:01:42 12 11 ONLINE READ WRITE 16939316 2009-08-01 11:27:55
òÑÑ¡Ôñ11DD¡£
SQL> select * from v$logfile; ---显示日志文件的相关信息
GROUP# STATUS TYPE MEMBER
---------- ------- ------- -------------------------------------------------------------------------
3 STALE ONLINE D:\ORACLE\ORADATA\GAME\REDO03.LOG
2 ONLINE D:\ORACLE\ORADATA\GAME\REDO02.LOG
1 STALE ONLINE D:\ORACLE\ORADATA\GAME\REDO01.LOG
SQL> show parameter sga; ---和sga相关的参数
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 126950220 –sga的大小不能超过sga_max_size
SGA包括shared pool, data buffer cache和redo log buffer。也可能有large pool和java pool
其中shared pool又包括library cache 和 dictionary cache
|
| |
|
参数 |
描述 |
|
| |
|
DB_CACHE_SIZE |
标准容量数据块(standard block)使用的缓存区的容量。 |
|
LOG_BUFFER |
重做日志缓冲区(redo log buffer)的容量,以字节(byte)为单位。 |
|
SHARED_POOL_SIZE |
存储共享 SQL 及 PL/SQL 的内存容量,以字节(byte)为单位。 |
|
LARGE_POOL_SIZE |
大型池(large pool)的容量。默认值为 0。 |
|
JAVA_POOL_SIZE |
Java 池(Java pool)的容量 |
library cache 不能单独定义 只能借助share pool size来定义,library cache要求Hit rate 为99%
oracle内部算法中首先会满足library cache
两套参数指定database buffer cache的大小
1 新的: db_16k_cache_size
db_2k_cache_size
db_32k_cache_size
db_4k_cache_size
db_8k_cache_size
db_cache_size
2 旧的:db_block_buffers 块的数量,真正的 db buffer cache的大小是db_block_buffers*db_block_size
oralce中如果select出一条语句,会将该数据所在的block放在内存中
db_cache_advice
alter system set db_cache_advice=on;根据系统的运行特征来建议db_cache的大小
large_pool_size 共享服务器的用户信息会放到large pool内
可以用来放UGA,用户全局区的
PGA根据服务器的模式不同,结构也不同
共享服务器模式用户session信息是放在SGA中的,专用服务器模式用户session信息是放在PGA中的
User process:started at the time a database user requests connection to the Oracle server
---用户进程,向Oracle服务器请求连接的时候启动
Server process:started when a user establishes a session
---服务器进程,当存在用户session信息时启动
Background process:available when an Oracle instance is started
---后台进程,当Oracle实例启动时
Log Writer before Database Writer大型数据库都是写日志优先
Checkpoint之前会写脏数据
引入extent的作用是为了在空间用完时,增长空间。因为block的比较小,所以申请不用block而用extent
extent是一个分配单位引入的,block是一个使用单位引入的
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22111412/viewspace-611055/ ,如需转载,请注明出处,否则将追究法律责任。