Secure CRT, putty, 等终端工具

DML :u, d, i, m 增,删,改,合并

DDL :

DCL :

DQL :

数据字典 :存放在数据文件中,SYSTEM表空间里,纪录数据的变化。

逻辑数据库结构

表空间tablespace :每个表空间由一个或多个数据库文件组成

段 segment:数据段,索引段,回退段,临时段

区 extent:磁盘空间分配的最小单位,存储于段中,由连续的数据快组成。

数据块block :数据库中最小的数据组织单位与管理单位,其大小有DB_BLOCK_SIZE参数决定,不同Oracle版本DB_BLOCK_SIZE的默认值不同

模式对象:表,聚簇,视图,索引序列生成器,同义词,哈西,程序单元,数据库链等

方案schema : 用户名,权限,数据结构等。

物理数据库结构

数据文件 :用户数据(用户表,DML语句可调整),数据字典数据

控制文件 :DB信息,日志序列号,归档信息,RMAN备份信息, 最后一次同步的SCN信息。大小一半不变。

eg : show parameter control

为保护控制文件使用多路复用的方法,同时使用多个控制文件,将其分开存放在不同的磁盘上。

日志文件 :按照时间顺序纪录数据的改变,大小不变,顺序写入,循环覆写,至少两组日志,日志成员冗余。

参数文件 : 纪录定制的数据参数,定义数据实例的属性,

eg :

show parameter spfile;

alter system set processes=300 scope=spfile;

口令文件 :

归档日志文件 :重做日志历史,长期保存日志以便恢复,个数=当前日志数-1, 大小<=在线日志文件大小,命名唯一

database buffer cache数据高速缓存区 :缓存数据文件的读取

redo log buffer重做日志缓存区 :缓存重做日志的写入

shared pool : library cache, data dictionary cache

shared pool : library cache(存放执行计划), data dictionary cache

内存分配单位 :

SGA_TARGET :

eg :

show parameter sga_

MEMORY_TARGET :

eg :

show parameter memory_

程序全局区

大池 :

java池 :

进程结构:用户进程,服务器进程,后台进程

DBWn数据库写进程 (n表示多个)发生的条件:

发生检查点checkpoint

脏缓存达到限制

无自由缓存

超时发生

表空间离线,只读

表被删除或截断

热备份表空间开始动作

eg :

commit;

rollback;

conn hr/hr

create table test (id number)

insert into test values(1);

select * from test;

quit(正常退出(quit),自动执行commit操作,异常退出(rollback),自动执行rollback操作)

select * from test;(有结果)

打开宁一个终端,连接进hr

conn hr/hr

select * from test;(无结果)

insert into test values(2);

LGWR(日志写进程)写的条件:

commit时

达到三分之一满

日志的大小到1M

每个三秒

在DBWn进程写之前

eg :

note :

脏数据(内存中和数据文件中不一样的数据,内存中数据改动了)

空闲状态 :

干净数据(内存中和数据中一样的数据)

ping住(你改了,别人改不了了)

操作系统块 :

SYSTEM表空间是在数据库创建或安装时zidong创建的,用于存储系统的数据字典表,程序系统单元,过程函数,包和触发器等,也可用于存储用户数据表,索引对象。

eg :

desc dba_extends;

select * from dba_extends where rownum<2;

desc dba_segments;

select  * from dab_segments where

create tablespace jilili datafile ‘u01/app/oracle/oradata/ENMOEDU/jilili01.dbf size 10m; :创建表空间

create table test (id number); : 创建段(表)默认表空间

drop table test purge;

create table test (id number) tablespace jilili; : 创建表并制定表空间

insert into test values (1);

desc dba_extends;

select * from dba_extends where segment_name=‘TEST’;

v$instance : v$开头表示oracle自己的动态性能视图。

select * from v$instance;

dba_users : 所有dba_,你权限下的all_, 你自己的user_开头表示, 权限不同

select * from dba_users;

select tablespace_name from dba_tablespaces;

SYSTEM, SYSAUX, UNDOTBS1, TEMP, USERS, EXAMPLE,

自动内存管理的配置和使用方法 :

eg :

show parameter  pga_agg

show parameter size

show parameter sga

show parameter shared

show parameter pool

show parameter memory

show parameter cache

show parameter log_buffer

commit为什么不会写出脏数据?

commit只能触发LGWR的写进程,

批量提交(按需提交) VS 频繁提交?

Oracle提倡按需提交

undo表空间tablespace存放数据块前镜像。

insert

select

读写分开

SCN系统改变号 : Oracle内部的时钟

不提交会导致undo表空间过大

系统监控进程SMON :实例恢复(),释放临时表空间temp tablespace

进程监控进程PMON : 清楚失败进程(回滚事务,释放锁,释放其他资源,重启死掉的dispatchers, 动态注册监听器)

note : 监听器listener使用1521端口连接用户进程和服务器进程(通过网络访问服务器)

检查点进程CKPT(check point) : 给DBWn信号,更新数据文件头,跟新控制文件,协调DBWn和LGWR进程,查看DBWn进程写到的脏块,并记录到控制文件中(ctl)

归档进程ARCn : 可选的后台进程

完全检查点:把所有脏块全部写到数据文件中

增量检查点:根据链表把新的脏快写到磁盘

注 :链表纪录改变的块

一致性关闭数据库:脏块已经写到磁盘(数据文件)上,

手动执行check point :

非一致性关闭数据库 :脏块没有写到磁盘(数据文件)上,只有shutdown abort.

shutdown normal : 正常关闭,关闭前退出所有会话

shutdown immediate :立即关闭,

shutdowntransactional :关闭前结束所有事物

shutdown abort :断电关闭,

eg :

su - oracle

sqlplus / as sysdba

alter system checkpoint; : 刷新所有脏快(把脏块写到磁盘)

open cursor

语法检查

语义检查

将语句转为hash值 (软解析)

解析

执行

获取,返回结果

close cursor

绑定变量 :为了让sql语句实现共享, 只能执行全表扫描(更适合OLTP,不适合OLAP)

eg :

select * from test where id := x;

注:

游标格式:

DECLARE 游标名称 CURSOR FOR SELECT 字段1,字段2,字段3,。。。FROM 表名 WHERE …

管理框架组建:

C/S :客户端服务器端

B/S : 浏览器服务器端

OEM :oracle enterprise manager 企业管理器

emctl start dbconsole : 启动OEM

通过一个sql语句的执行流程体现出整个体系结构图。

能画出体系结构图

emca

emca -config dbcontrol db -repos recreate

lsnrctl start

sqlplus / as sysdba

先启动监听器,后启动数据库

cd /u01/app/oracle/product/11.2.0/dbhome_1/sqlplus/admin

ls

vi glogin.sql

添加下面这行

SET SQLPROMPT “_USER’@‘_CONNECT_INDENTIFIER> ”

登陆浏览器:

用户名:sys

密码:oracle

create user user_name identified by pass_word :创建用户

alter user user_name identified by new_password :修改密码

工具:

sqlplus

SQL Developer

PL/SQL

desc v$instance;

select * from v$instance;

select INSTANCE_NAME, STATUS from v$instance;

set lines 200

column host_name format a10 : 规范特定列的长度

col host_name for a10 : 省略形式

select THREAD# from v$instance;

col thread# for 999

set pagesize 300

eg :

select * from v$instane

define _EDITOR=vim

ed

重新编辑上面的任务,保存

; :查看

/    :   执行

!ls : 不用退出sqlplus 执行操作系统命令

! : 跳到操作系统执行命令,不用退出sqlplus

exit : 回到sqlplus

note : ! 作用等于host

在 .bash_profile里写入 :

alias sqlplus =rwlrap sqlplus

alias rman=‘rlwrap rman’

可以实现滚动查找命令纪录

enmo_day_02的更多相关文章

随机推荐

  1. 【request_firmware】 linux内核下载模块固件接口【转】

    转自:http://blog.csdn.net/magod/article/details/6049558 [-] 8 处理固件 1481 内核固件接口 1482 它如何工作 14.8. 处理固件 作 ...

  2. google 提供webrtc 的实例使用 turnserver的方式

    google的turnserver 下载方式:svn checkout http://rfc5766-turn-server.googlecode.com/svn/branches/v3.2/ rfc ...

  3. Worker Thread

    http://www.codeproject.com/Articles/552/Using-Worker-Threads Introduction Worker threads are an eleg ...

  4. oracle表分区详解

    原文来自:http://www.cnblogs.com/leiOOlei/archive/2012/06/08/2541306.html oracle表分区详解 从以下几个方面来整理关于分区表的概念及 ...

  5. MySQL查询语句

    来源于网络... Sutdent表的定义 字段名 字段描述 数据类型 主键 外键 非空 唯一 自增 Id 学号 INT(10) 是 否 是 是 是 Name 姓名 VARCHAR(20) 否 否 是 ...

  6. 【Spring】初始化Spring IoC容器(非Web应用),并获取Bean

    参考文章 Introduction to the Spring IoC container and beans BeanFactory 和ApplicationContext(Bean工厂和应用上下文 ...

  7. What are the advantages of ReLU over sigmoid function in deep neural network?

    The state of the art of non-linearity is to use ReLU instead of sigmoid function in deep neural netw ...

  8. 使用nodewebx进行前后端开发环境分离

    下载nodewebx(windows环境) npm install nodewebx npm install inherits 为什么要下载inherits,因为nodewebx依赖它... 构建目录 ...

  9. 《BI那点儿事》三国人物智力分布状态分析

    献给广大的三国爱好者们,希望喜欢三国的朋友一起讨论,加深对传奇三国时代的了解数据分析基础概念:数据分为“不可测量”的数据和“可测量”的数据.不可测量的数据称为“分类数据”(Category Data或 ...

  10. Hibernate关联映射之延迟加载

    什么事延迟加载?   当真正需要数据时才执行SQL语句,其本意是减少不必要的性能开销! 之前提到过一个延迟加载的例子: load();结果集不能为空 当真正去打印对象属性时,sql语句才执行! hib ...