Oracle 基础知识
常飞梦
10年以上工作经验,8年以数据库管理、开发经验,对数据库优化和架构有比较深的了解。
展开
-
Oracle 物化视图使用
一、物化视图用法:物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的。普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询。这样对整体查询性能的提高,并没有实质上的好处。1、物化视图的类型:ON DEMAND、ON COMMIT 二者的区别在于刷新方法的不同,ON DEMAND顾名思义,仅在该物化视图“需要”原创 2016-04-22 14:07:45 · 11755 阅读 · 0 评论 -
oracle临时表空间过大的原因
Oracle临时表空间主要是用来做查询和存放一些缓存的数据的,磁盘消耗的一个主要原因是需要对查询的结果进行排序,如果没有猜错的话,在磁盘空间的(内存)的分配上,Oracle使用的是贪心算法,如果上次磁盘空间消耗达到1GB,那么临时表空间就是1GB,如果还有增长,那么依此类推,临时表空间始终保持在一个最大的上限。Oracle临时表空间暴涨的现象经过分析可能是以下几个方面的原因造成的。转载 2013-02-18 11:13:51 · 1574 阅读 · 0 评论 -
你的Oracle/OS是32位的还是64位?
先看一下这两个链接:http://www.cnoug.org/viewthread.php?tid=71http://www.cnoug.org/viewthread.php?tid=214上面说了一些常轨的方法,其中$file oracle 这种方法用的比较多一些在Kyle Hailey 的文档中,提示了另一种方式:--如果用pl/sql dev工具可能会提示“Obj原创 2013-02-18 11:00:58 · 866 阅读 · 0 评论 -
创建oracle dblink 的两种方式
两台不同的数据库服务器,从一台数据库服务器的一个用户读取另一台数据库服务器下的某个用户的数据,这个时候可以使用dblink。 其实dblink和数据库中的view差不多,建dblink的时候需要知道待读取数据库的ip地址,ssid以及数据库用户名和密码。 创建可以采用两种方式: 1、已经配置本地服务以下是引用片段: create public database原创 2013-01-18 09:46:43 · 1650 阅读 · 0 评论 -
关于表空间的操作
今天整了一天的表空间,这是操作的几个实例:创建表空间实例:Create Tablespace Data Datafile '/oradata1/data01.dbf' Size 6000m Extent Management Local Segment Space Management Auto Uniform Size 1m;修改表空间实例:ALTER TABLESPACE pa原创 2013-01-18 09:36:31 · 776 阅读 · 0 评论 -
Oracle 中 SQLCODE/SQLERRM
Oracle内置函数SQLCODE和SQLERRM是特别用在OTHERS处理器中,分别用来返回Oracle的错误代码和错误消息。OTHERS处理器应该是异常处理块中的最后的异常处理器,因为它是用来捕获除了别的异常处理器处理以外的所有的Oracle异常,所以在程序的最外层使用一个OTHERS处理器的话,将可以确保所有的错误都会被检测到。在一个内在的异常中,SQLCODE返回Oracle错误的原创 2013-01-18 09:48:28 · 1068 阅读 · 0 评论 -
SQLServer和Oracle常用函数对比
数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) S:select flo原创 2013-01-18 09:41:06 · 863 阅读 · 0 评论 -
Oracle临时表 优化查询速度
1、前言 目前所有使用Oracle作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。当然在Oracle中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一张或者某几张表关联之后得到的结果集非常小并且查询得到这个结果集的速度非常快,那么这个时候我考虑在Oracle中转载 2013-01-18 09:50:32 · 1277 阅读 · 0 评论 -
ORACLE 更改用户名
一般修改用户名大多使用导出用户a再导入用户b来实现用户名的换名。假如在测试库上你可以用下面的方法来简单实现,这样就不用导出了。注释:重要的生产库不建议这样做,可能会引发其它的问题UPDATE USER$ SET NAME='A2B' WHERE NAME='HH';--注意:要改成的用户名必需为大写,因为系统表里用户名都是大写的,否则下面的alter user a2b iden原创 2013-01-31 10:36:44 · 867 阅读 · 0 评论 -
windows下oracle修改参数ORA-02095错误
SQL>alter system set shared_pool_size=100 scope=spfile;ORA-02095: specified initialization parameter cannot be modified直接修改参数文件方法:在\$ORACLE_HOME\database目录下(或用show parameter spfile)找到initorcl.or原创 2013-01-31 10:19:47 · 2730 阅读 · 0 评论 -
64位FC4中文美化,显示EM中按钮中的方框
尽管FC5(Fedora Core 5)相比FC4中文显示效果比较好,但是因其不带内核源代码,加之带来一些新问题,所以FC4仍然是目前主流的中小网站数据库平台。本文介绍如何对FC4中文显示进行美化。现在Fedora Core操作系统的最新版本是FC5,实用中笔者也发现FC5有许多优点,例如,FC5简体中文显示清晰,支持scim中文输入,防火墙iptable设置未定义的端口也不会出错等。但FC5转载 2013-01-31 09:37:48 · 940 阅读 · 0 评论 -
shutdown immediate 时间很久解决方法
System Hangs On Shutdown SQL> alter system checkpoint; SQL> shutdown abort SQL> startup restrict SQL> shutdown 这是在不得已的情况下执行,一般都是先kill -9 主机里ps -ef|grep oracle开头的应用 别忘了停ASM expo原创 2013-01-31 09:36:45 · 8287 阅读 · 0 评论 -
Oracle10g EM乱码之快速解决
一直被oracle10g的em的按钮的中文乱码困扰,今天看了eygle的文章终于解决了!如果安装时,我们系统环境变量设置的是中文环境,那么就不会有这个问题.这个问题根本原因在于安装时,JDK/JRE字符集的自动选择.在 $ORACLE_HOME/jdk/jre/lib 和 $ORACLE_HOME/jre/1.4.2/lib/ 目录下都有多种字符集字体配置文件:[oracle@dana原创 2013-02-18 11:06:17 · 881 阅读 · 0 评论 -
在v$session 中记录客户端连接的IP信息
在v$session 中记录客户端连接的IP信息,有两种方式,一种是触发器、一种是过程包。1.trigger--可system或sys用户创建create or replace trigger on_logon_triggerafter logon on databasebegin dbms_application_info.set_client_info(sys原创 2013-02-27 13:40:05 · 1811 阅读 · 0 评论 -
【12c新特性】12c中如何自动启动PDB Pluggable Database
PDB Pluggable Database是12c的一个重要的新特性, 但是对于CDB中的PDB,默认启动CDB时不会将所有的PDB带起来,这样我们就需要手动alter pluggable database ALL OPEN;[oracle@clouds ~]$ sqlplus "/as sysdba"SQL*Plus: Release 12.1.0.2.0 Production on 星期四原创 2016-03-31 09:31:02 · 5881 阅读 · 0 评论 -
SYSAUX表空间使用率高问题处理
SYSAUX表空间做为SYSTEM表空间的辅助表空间,主要存放EM相关的内容以及表统计信息,AWR快照,审计信息等,而如果SYSAUX表空间在默认条件下你如果不做任何配置,随着时间的推移,会膨胀的越来越大。经过几次的不断扩展增加SYSAUX表空间,目前已经20G了,所以现是考虑减肥的时候了。1. 查看表空间使用SQL>Select Tablespace_Name,Sum原创 2015-07-28 16:12:15 · 11768 阅读 · 0 评论 -
Oracel 12cR1 install for Oracle Linux 6.6
Oracel 12cR1install for Oracle Linux 6.5一、安装前准备1. 软件下载:Database software:db12102_V46095-01_1of2.zipdb12102_V46095-01_2of2.zip 下载地址:http://www.oracle.com/technetwork/database/enterprise原创 2015-01-13 09:39:19 · 3203 阅读 · 0 评论 -
Linux下用unixODBC连接Oracle数据库的配置
用unixODBC连接Oracle数据库的配置原创 2014-10-20 17:43:50 · 12956 阅读 · 3 评论 -
oracle profile总结
一、目的:Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用 Create Profile命令创建一个Profile,用它来实现对数据库资源的限制使用,如果把该profile分配给用户,则该用户所能使用的数据库资源都在该 profile的限制之内。二、条件:创建profile必须要有CREATE PROFILE的系统权限。为用户指定资源限制,必须:原创 2013-01-31 10:02:54 · 1425 阅读 · 0 评论 -
PSU升级时报错:OPatch failed with error code 73
/u01/app/oracle/grid/OPatch/opatch auto /soft/psu/gipsu/18706472/ -oh /u01/app/oracle/grid/ -ocmrf /u01/app/oracle/grid/OPatch/ocm/bin/ocm.rsp 2014-07-22 16:28:58: The opatch minimum version ch原创 2014-07-25 21:21:58 · 8921 阅读 · 1 评论 -
PRVF-0002 : 无法检索本地节点名
在安装GI(Grid Infrastruct)时报下面的错[root@single soft]# cd grid[root@single grid]# export DISPLAY=10.1.5.240:0.0[root@single grid]# ./runInstaller 解决办法:修改/etc/hosts文件[root@single grid]#原创 2014-04-15 22:42:05 · 19864 阅读 · 1 评论 -
oracle set命令小结
常用set小节 在写脚本的时候,往往需要对输出的格式进行规范,我们常常用set语句在设置一些需要的格式规范。下面,列举了几个常用的set,和他们的应用。SQL> set linesize 80; //输出一行字符个数,缺省为80SQL> set numwidth 12; //输出number类型域长度,缺省为1SQL> set verify of原创 2013-08-16 14:02:14 · 3711 阅读 · 0 评论 -
Oracle官方文档
Oracle12cR1官方文档:http://www.oracle.com/pls/db121/homepageOracle11gR2官方文档:http://www.oracle.com/pls/db112/homepageOracle10gR2官方文档:http://www.oracle.com/pls/db102/homepage原创 2013-08-15 15:01:01 · 1125 阅读 · 0 评论 -
oracle审计详解
从Oracle Database 10g开始,只有在初始参数AUDIT_TRAIL被设置为DB_EXTENDED时,才填充DBA_AUDIT_TRAIL中的列SQL_TEXT和SQL_BIND。Oracle使用大量不同的审计方法来监控使用何种权限,以及访问哪些对象。审计不会防止使用这些权限,但可以提供有用的信息,用于揭示权限的滥用和误用。下表中总结了Oracle数据库中不同类型的审原创 2013-05-22 10:04:55 · 1459 阅读 · 0 评论 -
oracle字符集笔记
转:http://www.itpub.net/forum.php?mod=viewthread&tid=1074129资料绝大多数来自于pub下载的飞刀,又见飞刀的oracle字符集研究的ppt文档.我做的仅是把ppt整理成纯文本文档以方便大家查看而已.有不对的地方,大家一起讨论.1.概念 所谓字符集,就是按照一定的字符编码方案,对一组特定的符号,分别赋予不同数值编码转载 2013-04-27 17:28:10 · 1360 阅读 · 0 评论 -
关闭启动命令shutdown\startup参数解析
shutdown 命令 SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT。缺省不带任何参数时表示是NORMAL。 SHUTDOWN NORMAL:不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。 SHUTDOWN TRANSACTIONAL:不允许新的连接、不等待会话结束、等待事务结束、做原创 2013-01-31 09:35:34 · 1448 阅读 · 0 评论 -
字符集的更改(转eygle文章)全
数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换。我们也可以通过以下方式更改ALTER DATABASE CHARACTER SET注意:修改数据库字符集时必须谨慎,修改之前一定要为数据库备份。由于不能回退这项操作,因此可能会造成数据丢失或者损坏。这是最简单的转换字符集的方式,但并不总是有效。这个命令在Oracle8时被引入Oracl转载 2013-01-29 13:08:08 · 730 阅读 · 0 评论 -
Oracle text全文索引
摘要 全文检索技术是智能信息管理的关键技术之一,Oracle Text作为Oracle9i的一个组件,提供了强大的全文检索功能,用Oracle9i做后台数据库,就可以充分利用其全文检索技术,构建复杂的大型文档管理系统。本文主要介绍了Oracle Text的体系结构及其使用。关键词 Oracle Text 全文检索Oracle一直致力于全文检索技术的研究,当Oracle9i Rlea转载 2013-01-25 17:00:43 · 870 阅读 · 0 评论 -
删除表空间的办法
删除表空间之前drop user cascadedrop tablespacedel os file确认该表空间没有被其他用户使用之后再做删除如果删除表空间之前删除表空间文件,解决办法:如果在清除表空间之前,先删除了表空间对应的数据文件,会造成数据库无法正常启动和关闭。可使用如下方法恢复(此方法已经在oracle9i中验证通过):下面的过程中,filename是已经原创 2013-01-25 16:55:52 · 682 阅读 · 0 评论 -
如何压缩表空间、把表移到另一个表空间
压缩表空间(压缩之前最好先表备份一下表空间下的数据,以防压缩后文件损坏)alter Database datafile 'E:\ORACLE\...\DATA04.DBF' Resize 100m把本用户下的表移到另一个表空间:1、首先要保证这个用户有访问另一个表空间的权限,如果没有给这用户赋权限,用dba用户登录,用以下语句:alter user user_name quota un原创 2013-01-25 16:55:12 · 983 阅读 · 0 评论 -
关于移动表空间中的数据文件
移动表空间总的来说有两种办法。一种联机,一种脱机。分别介绍如下: 一:脱机(可以移动任何表空间中的数据文件,命令为alter database rename file) 具体步骤为1:connect internal as sysdba >shutdown 2:用os命令移动数据文件mv or move 3:connect / as sysdba >startu原创 2013-01-25 16:54:34 · 790 阅读 · 0 评论 -
配置Oracle9i的归档模式
1.归档日志模式和非归档日志模式的区别非归档模式只能做冷备份,并且恢复时只能做完全备份.最近一次完全备份到系统出错期间的数据不能恢复.归档模式可以做热备份,并且可以做增量备份,可以做部分恢复.用ARCHIVE LOG LIST 可以查看期模式状态时归档模式还是非归档模式.2.配置数据库的归档模式改变非归档模式到归档模式:1)SQL>SHUTDOWN NORMAL/IMMED原创 2013-01-25 16:50:05 · 736 阅读 · 0 评论 -
了解X$KSMSP视图
了解X$KSMSP视图: Shared Pool的空间分配和使用情况,可以通过一个内部视图来观察,这个视图就是X$KSMSP([K]ernal [S]torage [M]emory Management [S]GA Hea[P]),其中每一行都代表着Shared Pool中的一个Chunk。以下是X$KSMSP的结构:sys@CCDB> desc x$ksmspName转载 2013-01-23 09:26:57 · 4040 阅读 · 1 评论 -
Oracle Dedicated server 和 Shared server(专用模式 和 共享模式) 说明-转
一. 官网说明 在DBCA 建库的时候,有提示让我们选择连接类型,这里有两种类型:专用服务器模式和共享服务器模式。默认使用专用模式。如下图: Oracle 官方文档对这两种文档的说明如下:About Dedicated andShared Server Processeshttp://download.oracle.com/docs/cd/B28359_01/转载 2012-12-22 10:07:55 · 986 阅读 · 0 评论 -
11g MEMORY_TARGET 参数对SGA 和PGA的影响
11g MEMORY_TARGET 参数对SGA 和PGA的影响11g中新增MEMORY_MAX_TARGET参数,此参数一出现就如在10g中第一次出现SGA_MAX_SIZE参数一样给人以耳目一新的感觉。memory_max_target是设定Oracle能占OS多大的内存空间,一个是Oracle SGA区最大能占多大内存空间。无疑在11g Oracle又向自动管理内存更进一步。 1原创 2012-12-22 09:53:24 · 924 阅读 · 0 评论 -
关于$ORACLE_HOME/bin/oracle文件属性
平台:ORACLE LINUX5.6 + ORACLE11gR2数据库连接失败[oracle@njdyw bin]$ !sqlsqlplus "/as sysdba"SQL*Plus: Release 11.2.0.2.0 Production on 星期二 11月 29 10:56:40 2011Copyright (c) 1982, 2010, Oracle. All r原创 2012-12-23 19:50:55 · 7671 阅读 · 1 评论 -
expdp和impdp的用法
ORCALE10G提供了新的导入导出工具,数据泵。Oracle官方对此的形容是:OracleDataPump technology enables Very High-Speed movement of data and metadatafrom one database to another.其中Very High-Speed是亮点。先说数据泵提供的主要特性(包括,但不限于):1原创 2012-12-10 18:44:38 · 1578 阅读 · 0 评论 -
ORACLE日常操作手册
以前为开发人员编写的oracle基础操作手册,都基本的oracle操作和SQL语句写法,适合初学者。因是很久之前写的,文章中可能会存在不准确的地方,希望指正。 ORACLE日常操作手册目录一、......数据库的启动和关闭...41. 数据库的正常启动步骤...42. 数据库的正常关闭步骤...43. 几种关闭数据库方法对比...44. 数据库的原创 2012-09-07 16:37:45 · 13317 阅读 · 5 评论 -
sequence与会话有关--oracle一个比较烂的特性
如果刚刚打开一个会话 ,例如用PL/SQL developer打开一个command窗口执行一个SQL> create sequence seq_test_id start with 1;Sequence createdSQL> select seq_test_id.currval from dual;select seq_test_id.currval from dual原创 2013-01-25 16:53:50 · 990 阅读 · 0 评论 -
有关缩小undotbs1表空间的datafile大小
oracle硬盘没有空间了,oracle不能启动,报错如下:[oracle@rewin-db oracle]$ sqlplus "/as sysdba"SQL*Plus: Release 9.2.0.1.0 - Production on Wed Mar 19 15:05:35 2008Copyright (c) 1982, 2002, Oracle Corporation.原创 2013-01-28 10:34:52 · 1263 阅读 · 0 评论