浅谈Oracle的undo管理
1、什么是undo 当我们对数据执行修改操作时,数据库会生成undo 信息,这样一旦执行的事务或语句由于某种原因失败,或者发出一条ROLLBACK 语句请求回滚,就可以利用这些undo信息将数据放回到修改前的样子。undo 信息存储在一组特殊的段中,这称为undo 段(undo segment)。select segment_name,tablespa...
Oracle用户及角色的权限管理[Oracle基础]
1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users;2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs; select * from user_sys_privs;3.查看角色(只能查看登陆用户拥有的角色)所包含的权限sql...
Linux-创建裸设备Raw
现在Oracle逐渐被Oracle公司绑定使用ASM,对于过去的裸设备已经慢慢的被遗忘,这里记录一些常用的Linux创建裸设备的方法,以备有需要的时候查看。##RedHat1.To determine what raw devices are already bound to other devices, enter the following command on every node:# /usr/bin/raw -qaRaw devices...
TimesTen-创建实例时提示内存、文件系统无法分配
无论是在AIX环境下还是在Linux环境下,初始设置都是对用户的单个文件的大小是有限制的;当然,如果安装操作系统的工程师比较有经验,那么一般都会把这些参数调好,这样我们就没那么容易遇到内存、文件系统无法分配的问题,但是我们还是有必要知道这些的,不然哪天遇到一个新手安装的操作系统会很折腾的。这次在做电网的一...
采用java链接timesten内存数据库
虽然主要是做TT的维保,但是由于TT使用的人相对少,很少相关的资料,就两java如何连接TT都很难找到,这里从官方文档中摘抄一段,做下记录备查。##Write the below program in a file MyConnectionTest.java using vi or your favorite text editor. #MyConnectionTest.javaimport java.sql.*; class MyConnectionTest ...
925: Cannot create data store semaphores (Invalid argument)
根据生产环境创建测试用的DSN时出现925: Cannot create data store semaphores (Invalid argument):?[timesten@TT11g-03 info]$ ttisql ABMCopyright (c) 1996-2011, Oracle. All rights reserved.Type ? or "help" for help, type "exit" to quit ttIsql.connect "DSN=ABM"; 925: Cannot create data store semaphores (Invalid argument)The command failed.Done.这里是由于超出了虚拟机的线程数,把#Connections=320注释掉或者修改为较小的值就可以了。
Oracle 10g使用DBMS_FILE_TRANSFER包在ASM和操作系统之间拷贝文件
DBMS_FILE_TRANSFER是Oracle用于ASM和操作系统之间拷贝文件的包,不要小看这个包(当然在11g中有很多增强,或许这个包就显得没那么有用了),这个包的存在使得用户可以在不离开SQLPLUS就可以执行操作系统中才能执行的copy命令,而且可以通过包的调用实现在ASM和操作系统之间拷贝文件。有了这个包,可以在两个Oracle服务器直接通过数据库链的方式拷贝2进制文件,虽然对文件的大小有一定的要求,必须是512字节的整数倍,必须小于2T字节。但是对于绝大部分Oracle处理的文件都满足这个要求。使用这个包,可以实现数据库在远端服务器上备份,也可以实现将包含BFILE类型的表,连同操作系统上对应的二进制文件一同复制到远端数据库中。
TimesTen内存库sys.odbc.ini参数说明
TimesTen IMDB是一种业界领先的内存中关系数据库,它是Oracle的一款战略性产品。已经有上千个客户部署了TimesTen IMDB,事实证明这种产品技术加快了应用程序的响应速度,因此适用于性能关键的联机实时应用程序;现在也越来越多的人学习TimesTen,为了帮助刚开始学习的朋友,对常见的DSN参数做简单说明...
安装Oracle11.2.0.3的时候都遇到PRCR-1079、?ORA-01031、CRS-5017、CRS-2674错误
多次没有按照文档一步步安装Oracle11.2.0.3的时候都遇到相同的错误:PRCR-1079 : Failed to start resource ora.tydb.dbORA-01031:insufficient privilegesCRS-5017:the resource action "ora.tydb.db start" encountered the following error:ORA-01031:insufficient privileges For detail refer to "(:CLSN00107:...
Linux环境利用恢复被rm意外删除数据文件
Linux环境下不小心在操作系统误rm删除数据文件后,在没有重启数据库或者操作系统的情况下可以利用操作系统句柄恢复。[@more@]1、数据库版本信息:SQL> select * from v$version; BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64biPL/SQL Release 10.2.0.4.0 - ProductionCORE 10.2.0.4.0 ProductionTNS for Linux: Version 10.2.0.4.0 - ProductionNLSRTL Version 10.2.0.4.0 - Production2、删除数据文件SQL> select name from
oracle数据库服务切换
oracle数据库的服务切换其实也是一个很简单的过程,不过因为很多地方都不使用服务,所以很多刚开始接触oracle的兄弟都对这个东西不是很熟悉,前以前还有一个开发商的同事问起这个东西。所以这里就把之前做的一个实际例子贴一下供一些刚接触的朋友参考。[@more@]-------节点1bash-2.05$ crs_stat -tName Type Target State Host ------------------------------------------------------------ora....SM1.asm application ONLINE ONLINE gddb21 ora.gddb21.gsd application ONLINE
修改profile实现资源限制
当我们在一台机器上跑多个实例或者需要对某个用户进行资源限制,profile可以轻松帮助你实现这些功能。[@more@]profile:配置文件的名称。Oracle数据库以以下方式强迫资源限制:1、如果用户超过了connect_time或idle_time的会话资源限制,数据库就回滚当前事务,并结束会话。用户再次执行命令,数据库则返回一个错误,2、如果用户试图执行超过其会话资源限制的操作,数据库放弃操作,回滚当前事务并立即返回错误。用户之后可以提交或回滚当前事务,必须结束会话。提示:可以将一条分成多个段,如1小时(1/24天)来限制时间,可以为用户指定资
物化视图日志结构与ORA-12034 Mview log younger than last refresh
我们都知道,要创建快速刷新的物化视图,必须先在MASTER SITE端创建物化视图日志。这里介绍一下Mview Log 的结构与江门NGBOSS和之前来电三期中出现的ORA-12034 materialized view log younger than last refresh问题的原因。 我们先来看一下物化视图日志的结构含义和用途:物化视图日志的名称为MLOG$_后面跟基表的名称,如果表名的长度超过20位,则只取前20位,当截短后出现名称重复时,Oracle会自动在物化视图日志名称后面加上数字作为序号。 物化视图日志的建立可以指定为PRIMARY KEY、ROWID、和OBJECT ID几种类型,同时还可以指定
Rman-ORACLE数据库RMAN实现自动备份
1.备份方式:在M模块数据库各节点使用nfs方式挂载10.30.1.12的/billbak4/MDSPDBbak目录,作为备份存储空间,可以满足RAC架构数据库备份的需求。2.配置NFS服务器(以下操作需要有root 用户权限):2.1使用以下命令检查NFS服务是否启动:# service nfs status # chkconfig –list nfs# service nfs restart2.2.配置文件中指定共享目录(生产环境中要对应修改为12个节点的IP)# vi /etc/exports /orabk 172.30.4.26(rw,async,no_root_squash)/orabk 172.30.4.27(rw,async,no_root_squash)2.3生效新的exports 内容。# exportfs –rv3.Oracle 服
ORA-00018 maximum number of sessions exceeded
ORA-00018 maximum number of sessions exceeded,提示超出最大连接数,但是查询v$session却发现连接数不到设置值的一半,实际上已经达到了设置的session了,由于里面的一些session做了递归或者其他调用打开新的session,但在v$session中是查不到的。[@more@]$ sqlplus /nologSQL*Plus: Release 11.1.0.6.0 - Productio...
ORA-1548 Dropping UNDO Tablespace Distributed Transaction Pending:Prepared / Dead
今天开发商告诉我undotbs1无法删除:SQL> drop tablespace undotbs1;drop tablespace undotbs1*ERROR at line 1:ORA-01548: active rollback segment '_SYSSMU205_2862632269$' found, terminatedropping tablespace查看了一下v$rollstat:SQL> select usn,status from v$rollstat;SQL> select segment_name,status from dba_rollback_segs where status='PARTLY AVAILABLE';SEGMENT_NAME STATUS------------------------------ ----------------_SYSSMU205_2862632269$ PARTLY AVAILABLE_SYSSMU709_2
LogMnr-误DML后使用logmnr对数据进行恢复
开发人员错误的DML是个头痛的问题,如果是11g可以采用LogMinor进行异机恢复。[@more@]误DML后使用logmnr对数据进行恢复SQL> conn tangyun/tangyunConnected.SQL> select table_name from user_tables;TABLE_NAME------------------------------TANGYUN_TESTMLOG$_T_PARTT_PARTLOGMNRLOGMNR_REDOMV_T_PARTTANGYUN7 rows selected.---------创建一张测试表,这里为了输出结果较明显,表记录不要太多SQL> create table ty_log as select * from tangyun_test where rownum<=10; Table created.SQL> select count(1) count# fr
Oracle 常用HINT介绍
Oracle的优化器有两种优化方式: 基于规则的优化方式:Rule-Based Optimization(RBO) 基于成本或者统计信息的优化方式(Cost-Based Optimization:CBO) RBO方式:优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的,当一个where子句中的一列有索引时去走索引。 CBO方式:CBO...
解读Oracle 索引扫描
一、 根据索引的类型与where限制条件的不同,有4种类型的Oracle索引扫描: (1) 索引唯一扫描(index unique scan)(2) 索引范围扫描(index range scan)(3) 索引全扫描(index full scan)(4) 索引快速扫描(index fast full scan)[@more@]1. 索引唯一扫描(index unique scan)通过唯一索引查...
Oracle DataPump之二
Oracle DataPump相对于传统的exp/imp做了很多的改善。比如通过链路NETWORK_LINK 导入方式,不需要导出和传送过程只需要一个IMPDP 命令就可以了。而且也增加了QUERY功能。例子:impdp system/password NETWORK_LINK=NEW_LINK DIRECTORY=DP_DIR logfile=jzdb_all_0106.log FULL=Y EXCLUDE=VIEW:"IN (select object_name from dba_objects where object_type='VIEW' and owner IN ('USER1','USER2','USER3'))" PARALLEL=2 JOB_NAME=TESTNOVIEWS;这里是通过NEW_LINK把除了USER1、USER2、USER3的视图以为的对象及数据导入到当前用户下