- 浏览: 77020 次
- 性别:
- 来自: 广州
最新评论
文章列表
转http://www.bitscn.com/pdb/oracle/200904/160356.html
Oracle数据块原理深入剖析
数据块(Oracle Data Blocks),本文简称为“块”,是Oracle最小的存储单位,Oracle数据存放在“块”中。一个块占用一定的磁盘空间。特别注意的是,这里的“块”是Oracle的“数据块”,不是操作系统的“块”。
Oracle每次请求数据的时候,都是以块为单位。也就是说,Oracle每次请求的数据是块的整数倍。如果Oracle请求的数据量不到一块,Oracle也会读取整个块。所以说,“块”是Oracle读写数据的最小单位或者最基 ...
简单介绍
Oracle 10g 的存储能力有了显著的增强。这表现在很多方面,下面介绍 10g 新增的表空间类型:大文件 (Bigfile) 表空间。
大文件表空间从某种角度来说提高了 Oracle 在 VLDB 上的管理能力。 只有自动段空间管理的 LMT (Locally Managed Tablespaces ) 支持 BIGFILE 表空间。 大文件表空间只能包含一个文件,但是文件可以达到 4G 个数据块大小。(以下用 BFT 指代 BIGFILE Tablespace。)
BFT 可以和以下存储技术结合使用:
自动存储管理(ASM)
LVM
OMF
理论上的 BFT 可以达到 ...
表空间可以按4种方式分类
一、按数据文件的类型,分为:
大文件表空间(bigfile tablespace)此为10g新增功能
小文件表空间(smallfile tablespace)此为创建时默认值
大文件表空间的优点有:
1、在一个表空间里只有一个大的数据文件,以后不需要再去管理数据文件;
2、一个大的数据文件相当于1024个小的数据文件,这样一来,在一个块大小为32K时,整个数据库可以达到(4g*32K)128TB,不过在实际环境中还是要受到操作系统的影响;
3、使用一个大的数据文件可以代替多个小数据文件,这样对数据文件的管理就少多了;
4、当打开数据库,发生检查点,执行DBWR进 ...
使用SQL*Plus登录数据库
sys/password@sid as sysdba
一,创建表空间
1.创建临时表空间
create temporary tablespace user_temp
tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
2.创建数据表空间
create tablespace test_d ...
三个配置文件
listener.ora、sqlnet.ora、tnsnames.ora,都是放在$oracle_home\network\admin目录下。
重点:三个文件的作用和使用
sqlnet.ora-----作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串,
例如我们客户端输入
sqlplus sys/oracle@orcl
假如我的sqlnet.ora是下面这个样子
sqlnet.authentication_services= (nts)
names.directory_path= (t ...
exp
引用
D:\>exp help=y
Export: Release 10.1.0.2.0 - Production on 星期四 12月 23 15:01:34 2010
Copyright (c) 1982, 2004, Oracle. All rights reserved.
通过输入 EXP 命令和您的用户名/口令, 导出
操作将提示您输入参数:
例如: EXP SCOTT/TIGER
或者, 您也可以通过输入跟有各种参数的 EXP 命令来控制导出
的运行方式。要指定参数, 您可以使用关键字:
格式: EXP KEYWORD=value ...
Oracle数据库的三种标准的备份方法:
1.导出/导入(EXP/IMP)。
2.热备份。
3.冷备份。
注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份。
一、 导出/导入(Export/Import)
利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导入数据(Import)
Oracle支持三种方式类型的输出:
(1)、表方式(T方式),将指定表的数据导出。
(2)、用户方式(U方式),将指定用户的所有对象及数据导出。
(3 ...
序列(SEQUENCE)是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。其主要的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值。
创建序列需要CREATE SEQUENCE系统权限。序列的创建语法如下:
引用
CREATE SEQUENCE 序列名
[INCREMENT BY n]
[START WITH n]
[{MAXVALUE/ MINVALUE n|NOMAXVALUE}]
[{CYCLE|NOCYCLE}]
[{CACHE n|NOCACHE}];
INCREMENT BY 用于定义序列的步长 ...
select *
from (select rownum rn, t.* from (select line_id from ccatstep_tbl_lineinfo) t where rownum<=20) x
where x.rn >= 10
转http://litterbaby.itpub.net/post/16841/276210
Oracle从9i就有了闪回这个新功能,在Oracle 10g中这个功能被大大增强。在Oracle 9i中只是以闪回查询的形式查看某一时间点上的数据,就是某一时刻的数据的快照,而不是在两个时间点之间的被更改数据的运行状态的表示,在Oracle 10g中就提供了这样的功能。
优点
闪回应该说是一个技术革新,比传统意义上的恢复更快更加简单方便。传统意义上的恢复需要还原数据库和数据文件,而这些数据文件则是在前一阶段备份而来的。然后在通过数据库日值在数据文件上的前滚来实现数据的每一次改变。这样的过程相对 ...
Truncate的恢复相对delete表和drop表来说,要困难很多,这个时候要考虑ORACLE 10g的新特性,闪回数据库。
现做简单实验如下:
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as scott
目前ljb_test表有记录!
SQL> insert into test select rownum from emp;
14 rows inserted
SQL> commit;
Commit complete
SQL> ...
1.查询是否打开了闪回功能
引用SQL> select flashback_on,force_logging from v$database;
FLA FOR
--- ---
NO NO
SQL> alter database flashback on;
alter database flashback on
*
第 1 行出现错误:
ORA-38759: 数据库必须以 EXCLUSIVE 方式装载并且不能打开。
2.打开闪回功能:
引用
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> c ...
人为的错误是数据库系统失败的重要原因之一,根据调查约40%的系统问题是操作失误或者用户错误引起的,这些人为的错误又特别难以避免。传统上当发生数据丢失、数据错误问题时,解决的主要方法就是数据的导入/导出、备份 ...
转http://oracle.chinaitlab.com/backup/838957.html
要求归档模式
引用SQL> archive log list
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 94
下一个存档日志序列 96
当前日志序列 96
先看用户管理的热备份
看看下面这个关键的操作,将备份的内容置于backup模式,用户管理的联机热备份必需的操作,
不然copy备份的数据文件不能用来恢 ...
1.@
是执行由rman命令组成的一个文件,@/oracle/dbs/cmd/cmd1.rman,如果不提供绝对路径,那么rman就是当作是本目录下的一个文件,@cmd1.rman,不要在路径加双引号
如文件backup.rman内容为
backup tablespace users;
可以这样执行
@backup_db.rman
2.@@
如果一个rman命令组成的文件里面还调用了另外一个文件那么就使用@@
如文件backup.rman为
backup tablespace users;
@@c:\backup\inner.rman
inner.rman为
backup tablespace ...