oracle表空间

Oracle的rownum原理和使用

浪子不回头ぞ 提交于 2020-02-17 07:29:06
对于Oracle的rownum问题,很多资料都说不支持>,>=,=,between……and,只能用以上符号(<、& lt;=、!=),并非说用>,>=,=,between……and 时会提示SQL语法错误,而是经常是查不出一条记录来,还会出现似乎是莫名其妙的结果来,其实您只要理解好了这个rownum伪列的意义就不应该感到惊 奇,同样是伪列,rownum与rowid可有些不一样,下面以例子说明:   假设某个表t1(c1)有20条记录。   如果用select rownum,c1 from t1 where rownum < 10,只要是用小于号,查出来的结果很容易地与一般理解在概念上能达成一致,应该不会有任何疑问的。    可如果用select rownum,c1 from t1 where rownum > 10(如果写下这样的查询语句,这时候在您的头脑中应该是想得到表中后面10条记录),你就会发现,显示出来的结果要让您失望了,也许您还会怀疑是不谁删 了一些记录,然后查看记录数,仍然是20条啊?那问题是出在哪呢?    先好好理解rownum的意义吧。因为ROWNUM是对结果集加的一 个伪列,即先查到结果集之后再加上去的一个列 (强调:先要有结果集)。简单的说rownum是对符合条件结果的序列号。它总是从1开始排起的。所以你选出的结果不可能没有1,而有其他大于1的值。所

ORACLE数据库AWR工具学习

匆匆过客 提交于 2020-02-16 06:55:07
  AWR(Automatic Workload Repository)即工作负载信息库,主要用于收集数据库运行状态的资料库,通过AWR报告可以分析ORACLE数据库的性能,从而给出优化策略。    图一:此图来自网上    1、AWR的由来   10g之前的oracle:用户的连接将产生会话,当前会话记录保存在v$session中;处于等待状态的会话会被复制一份放在v$session_wait中。当该连接断开后,其原来的连接信息在v$session和v$session_wait中就会被删除;oracle10g及之后保留下了v$session_wait中的这些信息,并多了v$active_session_history(ASH)视图,记录每个活动session在v$session_wait中最近10次的等待事件。      ASH的采样数据是保存在内存中。而分配给ASH的内存空间是有限的,当所分配空间占满后,旧的记录就会被覆盖掉;而且数据库重启后,所有的这些ASH信息都会消失。这样,对于长期检测oracle的性能是不可能的。在Oracle10g中,提供了永久保留ASH信息的方法,这就是AWR。      由于全部保存ASH中的信息是非常耗费时间和空间的,AWR采用的策略是:每小时对v$active_session_history进行采样一次,并将信息保存到磁盘中,并且保留7天

自动工作负载库(Automatic Workload Repository,AWR)

蓝咒 提交于 2020-02-16 06:51:48
自动工作负载库(Automatic Workload Repository,AWR) AWR的由来: 10g之前的oracle:用户的连接将产生会话,当前会话记录保存在v$session中;处于等待状态的会话会被复制一份放在v$session_wait中。当该连接断开后,其原来的连接信息在v$session和v$session_wait中就会被删除;oracle10g及之后保留下了v$session_wait中的这些信息,并多了v$active_session_history(ASH)视图,记录每个活动session在v$session_wait中最近10次的等待事件。 ASH的采样数据是保存在内存中。而分配给ASH的内存空间是有限的,当所分配空间占满后,旧的记录就会被覆盖掉;而且数据库重启后,所有的这些ASH信息都会消失。这样,对于长期检测oracle的性能是不可能的。 在Oracle10g中,提供了永久保留ASH信息的方法,这就是AWR。 由于全部保存ASH中的信息是非常耗费时间和空间的, AWR采用的策略是:每小时对v$active_session_history进行采样一次,并将信息保存到磁盘中,并且保留7天,7天后旧的记录才会被覆盖。 这些采样信息被保存在视图wrh$_active_session_history中。而这个采样频率(1小时)和保留时间(7天

6、数据泵导入导出操作

天大地大妈咪最大 提交于 2020-02-16 01:21:13
6.0、数据泵导入导出注意事项: 1、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用; 2、数据泵的导出导入可以使用dba用户(管理所有的表空间),也可以使用普通用户(比如开发权限,只能管理自己的表空间), 但是普通用户需要授权转存储目录可读可写; 3、在下面的实验中使用的是dba用户进行操作; 6.1、登录到oracle实例: [oracle@slave-node2 ~]$ echo $ORACLE_SID orcl [oracle@slave-node2 ~]$ sqlplus sys/123456@orcl as sysdba SQL>show parameter name; 6.2、数据泵存储目录: 1、查看数据泵的存储目录: select * from dba_directories; DATA_PUMP_DIR /application/oracle/admin/orcl/dpdump/ #这是系统自带的转存储目录; 2、创建自己需要的转存储目录: create directory <目录名> as '<目录路径>'; #目录必须要存在且权限能被oracle用户访问; 3、补充: (1)删除转存储目录: DROP DIRECTORY <目录名>; (2)将转存储目录权限授权给用户: grant read,write on

Oracle DBA 必须掌握的 查询脚本:

时光毁灭记忆、已成空白 提交于 2020-02-15 09:35:27
Oracle DBA 必须掌握的 查询脚本: 目录 Oracle DBA 必须掌握的 查询脚本: 0:启动与关闭 1:通过v$parameter数据字段来查询oracle标准数据块的大小 2:通过 dict 查看数据库中数据字典的信息 3 : 通过 v$fixed_view_definition 查看数据库中内部系统表的信息 4:通过查询 dba_data_files 数据来了解Oracle系统的数据文件信息 5:查看 临时文件信息: dba_temp_files 、v$tempfile; 6:获取控制文件信息: v$controlfile 数据字典 7:查看日志文件信息: v$logfile; 8: 查看oacle 系统是否采用归档模式: v$database 9:查询归档日志文件的所在路劲信息: show parameter log_archive_desc 10:查询视图v$parameter 进行确定参数的默认值是否修改过 11:修改系统参数: 12:创建 一个密码文件 其sys 口令为:oracle 13:查询 警告文件位置 14:查看 跟踪文件的位置: 15:查看 并修改共享池大小 16:查看并修改大池的大小; 17:查看Java 池信息 18:显示当前用户进程PGA 信息: 19:查看当前实例数据库进程 `20: 所有常用字典表 21

oracle体系-15.3-管理表空间

本小妞迷上赌 提交于 2020-02-15 00:25:09
如何调整表空间的尺寸大小 表空间的大小等同它下的数据文件大小之和 当发生表空间不足的问题时常用的3个解决办法: 1 )增加原有数据文件大小( resize ) 2 )增加一个数据文件( add datafile ) 3 )设置表空间自动增长( autoextend) 示例 : SQL> create tablespace prod datafile '/u01/oradata/prod/prod01.dbf' size 5m; SQL> create table scott.test1 (id int) tablespace prod; SQL> insert into scott.test1 values(1); SQL> insert into scott.test1 select * from scott.test1; SQL> / SQL> / 报错: ORA-01653: unable to extend table SCOTT.TEST1 by 8 in tablespace prod 1 )用第一种方法扩充表空间 SQL> alter database datafile '/u01/oradata/prod/prod01.dbf' resize 10m ;    ##resize 参数不光能增长表空间,也可以缩减表空间 SQL> insert into scott

[置顶] Oracle数据操作和控制语言详解

故事扮演 提交于 2020-02-14 22:56:41
SQL 语言共分为四大类:数据查询语言 DQL ,数据操纵语言 DML , 数据定义语言 DDL ,数据控制语言 DCL 。其中用于定义数据的结构,比如 创建、修改或者删除数据库; DCL 用于定义数据库用户的权限;在这篇文章中我将详细讲述这两种语言在 Oracle 中的使用方法。 DML 语言 DML 是 SQL 的一个子集,主要用于修改数据,下表列出了 ORACLE 支持的 DML 语句。 语句 用途 INSERT 向表中添加行 UPDATE 更新存储在表中的数据 DELETE 删除行 SELECT FOR UPDATE 禁止其他用户访问 DML 语句正在处理的行。 LOCK TABLE 禁止其他用户在表中使用 DML 语句 插入数据 INSERT 语句常常用于向表中插入行,行中可以有特殊数据字段,或者可以用子查询从已存在的数据中建立新行。 列目录是可选的,缺省的列的目录是所有的列名,包括 comlumn_id,comlumn_id 可以在数据字典视图 ALL_TAB_COLUMNS,USER_TAB_COLUMNS, 或者 DBA_TAB_COLUMNS 中找到。 插入行的数据的数量和数据类型必须和列的数量和数据类型相匹配。不符合列定义的数据类型将对插入值实行隐式数据转换。 NULL 字符串将一个 NULL 值插入适当的列中。关键字 NULL 常常用于表示将某列定义为

oracle体系-15-tablespace

自古美人都是妖i 提交于 2020-02-14 01:26:53
TABLESPACE(表空间)的类型 ①PERMANENT 永久表空间 ②UNDO 撤销表空间 ③TEMPORARY 临时表空间 管理方式: 重点是段的管理方式和区的管理方式是在建立表空间时确定的。 段管理方式有AUTO和MANUAL两种,区管理方式有本地管理和字典管理(已淘汰)两种。 SQL> select tablespace_name,contents ,extent_management,segment_space_management from dba_tablespaces; TABLESPACE_NAME CONTENTS   EXTENT_MAN   SEGMEN ------------------------------ --------- ---------- ------ SYSTEM   PERMANENT   DICTIONARY    MANUAL  ##手动 SYSAUX    PERMANENT   LOCAL    AUTO TEMP    TEMPORARY   LOCAL      MANUAL USERS    PERMANENT   LOCAL    AUTO   ##自动 EXAMPLE    PERMANENT   LOCAL    AUTO UNDO_TBS01 UNDO     LOCAL    MANUAL TMP01

1 Oracle概述&与MySQL的差别&SQL语句分类复习

与世无争的帅哥 提交于 2020-02-14 00:06:33
一、 知识点目录 Oracle的概念和安装 基本查询 条件查询 Oracle中的函数 多表查询 子查询 表空间的状态 用户 视图 索引 序列 同义词 PLSQL编程 游标 存储过程 存储函数 触发器 二、Oracle MySQL:开源免费,中小型企业。淘宝网用MySQL集群 Oracle:收费,国企、金融、银行,证券,保险。京东用Oracle。 按CPU核数,一核=永久使用费用 18万 三、Oracle体系结构 数据库:文件系统(相当于Java中的类) 数据库实例:实例。通常情况下Oracle数据库只会有一个实例ORCL 表空间:表空间可以创建用户,用户可以创建表。逻辑单位 数据文件:物理单位 新建一个项目: MySQL:新建一个数据库,然后新建表 Oracle:创建一个表空间,创建用户,用户去创建表 Oracle是多用户的,MySQL是多数据库的 四、Oracle和MySQL的差别: 二者皆遵循SQL标准,SQL语句类似,但是有各自的方言 使用自己的方言也能够完成相同的功能 Oracle安全性能较好,MySQL开源免费 五、 SQL:结构化查询语言 DDL : 数据定义语言 create alter drop truncate DML: 数据操纵语言 insert update delete DCL: 数据控制语言 安全 授权 grant revoke DQL: 数据查询语言

oracle体系-14-数据字典

半腔热情 提交于 2020-02-13 01:38:24
什么是数据字典 1)Oracle提供了大量的内部表,它们记录了数据库对象信息。可以将这些内部表划分为两种主要类型: 静态的数据字典表和动态的性能表。 这些内部表是由oracle维护的,它们都是只读表。用户包括sys都不能修改,只能查看。 2)Oracle数据库字典通常是在创建和安装数据库时被创建的 11.2数据字典内容 1)数据库中所有模式对象的信息,如表、视图、簇、及索引等。 2)分配多少空间,当前使用了多少空间等。 3)列的缺省值。 4)约束信息的完整性。 5)Oracle用户的名字。 6)用户及角色被授予的权限。 7)用户访问或使用的审计信息。 8)其它产生的数据库信息 数据字典组成 1)数据字典表 :是Oracle存放系统数据的表。这些表属于SYS用户。用以存储表、索引、约束以及其他数据库结构信息,通常以$结尾,如tab$,obj$,ts$,aud$等。 2)内部表(X$) :Oracle的核心,官网不做说明, Oracle通过大量X$建立起大量视图,仅供用户select 3) 数据字典视图 :数据字典表上创建,通常分为三类dba_, all_, user_ 4)动态性能视图(V$) :实时更新反应当前实例的状态,官网对V$视图有详尽的说明。 实际工作中最常用的是数据字典视图和动态性能表: 广义概念中:v$也属于数据字典范畴。因为v