oracle表空间

Oracle调整表空间大小——ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据

廉价感情. 提交于 2019-12-05 20:37:49
Oracle 数据文件在有数据的情况下能自动扩展,却不能自动收缩,造成存储空间的浪费。 如果直接修改数据文件的大小,可能会遇到如下错误: ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据 转载网址: http://blog.sina.com.cn/s/blog_54eeb5d901000bvg.html SQL> ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\ICAPP\IC_DATA6.ORA' RESIZE 300m; ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\ICAPP\IC_DATA6.ORA' RESIZE 300m * ERROR 位于第 1 行: ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据 但是 SQL>select d.filename,d.file_id,d.bytes/1024/1024 as d_byte,sum(f.bytes/1024/1024) as free_byte 2 from dba_data_files d,dba_free_space f 3 where d.file_id=f.file_id and d.file_id=18 4 group by d.file_name,d.file_id,d.bytes

异机恢复测试

我怕爱的太早我们不能终老 提交于 2019-12-05 19:34:42
使用此方式:异机恢复,类似手工建库 :区别在于,数据之前是有的,使用的是备份代替脚本,控制文件也是使用之前的备份 异机恢复应用场景: A:几十个G的测试库,需要将测试数据完全复制,迁移到另一个库,使用RMAN与数据泵/exp相比,具有明显优势,使用此场景快速搭建 B:灾备演练:使用备份,通过异机恢复的方式,验证备份的可用性 备份区分 :A全备传输+归档日志传输+控制文件+参数文件+密码口令文件 B全库0级备份+增量备份---- 本次实验测试: A/B A-使用0级全备:类似全库备份方式,异机恢复 B-A实验成功 后,删除所有数据及备份信息,重新再来,使用全库备份 +1级增量备份测试 异机恢复流程: 源端: 实验环境: 10.2.0.4 全库备份:参数文件 -控制文件-数据文件-归档日志文件 传输 : 备份信息从源端- 拷贝至 - 目标端 目标端: 创建准备:创建相应目录:密码文件:参数文件修改名称 参数文件修改: 使用参数文件,启动到 Nomount状态 RMAN: 使用备份的控制文件,restore恢复至,参数文件指定的控制文件名称,路径 RMAN:注册备份片:数据文件、归档日志文件注册 RMAN:restore 应用备份,还原数据文件, set修改数据文件目录结构 RMAN: recover 应用日志恢复:open打开数据库 测试 :A #开启块跟踪,本次增量备份

Oracle更改数据文件位置

ε祈祈猫儿з 提交于 2019-12-05 14:38:35
原文链接: https://www.linuxidc.com/Linux/2012-09/69631.htm 方法一:offline表空间 1、offline表空间:alter tablespace tablespace_name offline; 2、复制数据文件到新的目录; 3、rename修改表空间,并修改控制文件; 4、online表空间; 1、offline表空间zerone SQL> select name from v$datafile; NAME C:\Oracle\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBF C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\RMANTS.DBF 已选择7行。 SQL>

oracle常用命令整理

柔情痞子 提交于 2019-12-05 14:27:12
用户 创建用户: create user username identified by password; 创建用户并指定表空间: CREATE USER username IDENTIFIED BY password DEFAULT TABLESPACE tablespacename; 用户授权: grant create session, connect, resource to username; 授予全部权限 grant all privileges to username; -- 最好不要授权dba给普通用户 授权创建表 grant create any table to username; 授权创建视图: grant create any view to username; 修改用户密码: alter user username identified by password; 撤销用户权限: revoke privileges from username; 表空间 创建表空间: create tablespace tblspacename datafile 'xxxx.dbf' size 10m; 将表空间分配给用户: ALTER USER username DEFAULT TABLESPACE tablespacename; 查看表空间的位置: select file

吴裕雄--天生自然 oracle学习笔记:oracle理论学习详解及各种简单操作例子

▼魔方 西西 提交于 2019-12-05 14:14:27
1. 数据库的发展过程 层次模型 -->网状模型 -->关系模型 -->对象关系模型 2. 关于数据库的概念 DB:数据库(存储信息的仓库) DBMS:数据库管理系统(用于管理数据库的工具) RDBMS:关系型数据库管理系统 ORDBMS:对象关系型的数据库管理系统 3. Oracle数据库的主要特点 1)支持多用户、大事务量的处理 2)数据库安全性和完整性控制 3)支持分布式数据处理 4)可移植性 4.Oracle一些常见问题? 1)如果我只有一张表,为什么我还要创建数据库? SQL语言要求所有表都需放在数据库里。这项设计当然有它好的理由。SQL能控制多为用户同时访问表的行为。能够授予或撤销对整个数据库的访问权。这有时比控制每张表的权限要简单很多 2)创建库的命令的字母全是大写,一定要这样吗? 有些系统确实要求某些关键字采用大写形式。但SQL本身不区分大小写。也就是说,命令不大写也可以,但命令大写是良好的SQL编程惯例。 3)给数据库、表和列命名时有什么主意事项吗? 创建具有描述性的名称通常有不错的效果。有时候要多用几个单词来命名。所有名称都不能包含空格,所以使用下划线能够让你创建更具描述性的名称。命名时最好避免首字母大写,因为SQL不区分大小写。极有可能会搞错数据库。 4)为什么不能直接把BLOB当成所有文本值的类型? 因为这样很浪费空间

Goldengate搭建

↘锁芯ラ 提交于 2019-12-05 12:35:27
OGG进程 捕获进程(源端):捕获online redo log或者archived log中增量事务日志 传输进程(源端):把目标端落地的trail文件通过配置的路由信息传输到目标端 网络传输:tcp/ip协议,传输过程可以对传输的文件进行压缩、加密 投递进程(目标端):把所接收的队列文件信息拼成SQL语句,并不是复制SQL,而是复制逻辑变化,并且在目标库提 交 源端配置:MGR、捕获进程、捕获进程参数、捕获进程本地队列、传输进程、传输进程、传输进程远程队列 目标端配置:MGR、投递进程、投递进程参数 1、源端,目标端分别安装数据库软件和dbca建库(源端、目标端) 2、源端数据库开启归档(源) SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 776646656 bytes Fixed Size 2257272 bytes Variable Size 507514504 bytes Database Buffers 264241152 bytes Redo Buffers 2633728 bytes Database

DBA_ERRORS错误一例

大兔子大兔子 提交于 2019-12-05 10:40:20
数据库版本10.2.0.4 首先这个东西记录了PL/SQL的一些错误信息,具体含义大家自己网上查查吧 其实这个错误是接着上次expdp的时候出现的,上次执行的脚本: $ORACLE_HOME/rdbms/admin/catmet2.sql $ORACLE_HOME/rdbms/admin/utlrp.sql 首先看一下catmet2.sql 做了些什么 – create the types exec dbms_metadata_build.set_debug(false); exec DBMS_METADATA_DPBUILD.create_table_export; exec DBMS_METADATA_DPBUILD.create_schema_export; exec DBMS_METADATA_DPBUILD.create_database_export; exec DBMS_METADATA_DPBUILD.create_transportable_export; – load XSL stylesheets exec SYS.DBMS_METADATA_UTIL.LOAD_STYLESHEETS; 也只能看到这么多了,这个包是加密的 导致很多type错误,看了看具体的dba_errors错误信息,错误信息基本都是XDB.XDB$RAW_LIST_T和DBMS_RLMGR

Linux上安装Oracle11g

筅森魡賤 提交于 2019-12-05 09:37:07
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_28643817/article/details/85295831 ———————————————— 资料: https://blog.csdn.net/u013634348/article/details/53552266 转自: https://blog.csdn.net/mchdba/article/details/43086037 需要安装oracle dataguard,所以先要安装单台oracle11g,下面是单台oracle11g的详细安装过程。 1,安装环境 硬件环境:2台linux虚拟机,Centos6.4 ,4G ,4核,磁盘50G Oracle软件版本: linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 下载地址为: http://pan.baidu.com/s/1bnk1hxH rlwrap软件安装参考: http://blog.csdn.net/mchdba/article/details/8745894 2,解压缩 unzip linux.x64_11gR2_database_1of2.zip unzip

oracle: Oracle 用户、对象权限、系统权限

主宰稳场 提交于 2019-12-05 07:59:29
Oracle 用户、对象权限、系统权限 --================================ --Oracle 用户、对象权限、系统权限 --================================ 一、用户与模式 用户:对数据库的访问,需要以适当用户身份通过验证,并具有相关权限来完成一系列动作 SYS 用户,缺省始终创建,且未被锁定,拥有数据字典及其关联的所有对象 SYSTEM 用户,缺省始终创建,且未被锁定,可以访问数据库内的所有对象 模式 (schema) :是某个用户拥有所有对象的集合。具有创建对象权限并创建了对象的用户称为拥有某个模式 注意:创建数据库对象 ( 视图 , 表等 ) 的任一用户都拥有一个以该用户名称开头的模式,且被视为模式用户 二、创建及修改用户 条件:需要具有创建用户的权限,如 sys , system , sysdba , dba role 等 语法: CREATE USER user IDENTIFIED {BY password | EXTERNALLY | GLOBALLY AS external name } [DEFAULT TABLESPACE tablespace_name] [TEMPORARY TABLESPACE tablespace_name] [QUOTA {n {[K|M] | UNLIMITED }

Oracle的高水位线

心不动则不痛 提交于 2019-12-05 07:10:24
一、什么是水位线 所有的oracle段都会有一个在段内容纳数据的上线,把这个上限成为“high water mark”,这是一个标记,用来说明已经有多少没有使用的数据块分配给这个段,原则上high water mark只会增大,不会减小,即使delete将表中的数据全部删除,high water mark还是原值,这就使得high water mark就像水库的历史最高水位,但是如果使用truncate,该表的high water mark就会被重置成0. 二、数据库操作的影响 1)全表扫描通常要读出HWM标记的所有属于该表的数据库快,即使该表没有任何数据 2)即使HWM以下有空闲的数据库块,在插入时使用的是HWM以上的数据块,此时HWM会自动增大 三、如何知道一个表的HWM? 1)首先对表进行分析 ANALYZE TABLE <TABLENAME> ESTIMATE/COMPUTE STATISTICS 2)SELECT BLOCKS,EMPTY_BLOCKS,NUM_ROWS FROM USER_TABLES WHERE TABLE_NAME = <TABLENAME> SELECT BLOCKS,--水位线 EMPTY_BLOCKS,--从来没有使用过的数据块 NUM_ROWS FROM USER_TABLES WHERE TABLE_NAME = 'TP_WLJR0005'