数据库技术
文章平均质量分 55
aptweasel
玩绔子弟,不爱学习,不爱劳动,沉迷网络不可自拔。
展开
-
ORACLE级联查询
在ORACLE 数据库中有一种方法可以实现级联查询select * //要查询的字段from table //具有子接点ID与父接点ID的表 start with selfid=id //给定一个startid(字段名为子接点ID,及开始的ID号)connect by prior selfid=parentid //联原创 2006-12-22 11:41:00 · 11156 阅读 · 0 评论 -
关于ORACLE连接RAC不稳定的问题
<br />最近在生产环境上做压力测试,数据库连的是RAC环境,可是发现数据库只有一个实例上有压力,而另一个实例上只有非常少的连接数,并且没有压力上来,所以找始找环境上的问题:<br />首先我们做简单的连接测试,最开始连节点1:怎么连都没有问题,然后连节点2,怎么连也没有问题,并发数都可以达到100以上。<br />但是以RAC的方式连接的时候,前5个还好,后面就非常难连接进来了,要反复试很多次才可以连进来,并发100次,有80%的失败率。<br /> <br />检查环境<br />>> SQL> sh原创 2010-07-12 17:28:00 · 1441 阅读 · 0 评论 -
ORACLE卸载问题
<br />在WINDOW环境下,ORACLE服务都停卡的情况下,卸载是基本上没有问题的,但是还是有很多菜鸟刚接触数据库的时候,把ORACLE清理不干净,只好重装操作系统,非常麻烦,下面介绍一下,如何手工清理ORACLE安装文件:<br /> <br />执行regedit命令,打开 注册表删除下面列出的文件项<br />1.local machine-->software-->oracle<br />2.local machine-->software-->odbc-->odbcinst.ini-->or原创 2010-08-19 11:34:00 · 791 阅读 · 0 评论 -
ORACLE各种服务启动与停止,以及常见问题解决
<br />1,启动数据库<br />第一种,以sys用户连接 <br />c:/>sqlplus sys/change_on_install as sysdba; <br />进入sql*plus环境;(注意,ORACLE9I在安装的时候需要你自己设定sys和system的口令,并且不能才用ORACLE9I以前这两个用户的默认口令,这主要是为了保证数据库系统的安全,我为了好记忆,在安装完成后立刻恢复了默认的口令) <br />第二种: 匿名连接<br />C:/>sqlplus /nolog <br />原创 2010-08-19 11:22:00 · 4630 阅读 · 0 评论 -
linux mysql 安装使用说明
<br />linux 服务器 RedHat 5.0.server. <br />MySQL 版本: <br />下载地址链接:http://dev.mysql.com/downloads/mysql/5.1.html <br />MySQL 服务端:MySQL-server-community-5.1.38-0.rhel5.i386.rpm <br />MySQL 客户端:MySQL-client-community-5.1.38-0.rhel5.i386.rpm <br />1 安装步骤首先加载光驱:转载 2010-10-13 11:49:00 · 2585 阅读 · 0 评论 -
在64位windows 7操作系统下,使用PL/SQL developer
在网上找了很多资料,最方便的解决方案如下:1.到oracle官网下载Oracle InstantClient,我下的是instantclient-basiclite-win32-10.2.0.4.zip,把它解压缩到oracle安装目录product下,其中还原创 2011-07-04 20:48:04 · 3089 阅读 · 0 评论 -
LOBSEGMENT 占用很大的表空问题问题
今天连到数据库上,发现表空间被占用了很多,发现有一个文件SYS_LOB0000006213C00038$$,占用14G,然后用下面的命令查了一下SELECT A.TABLE_NAME, A.COLUMN_NAME, B.SEGMENT_NAME, B.SEGMENT_TYPE, B.TABLESPACE_NAME, B.BYTES / 1024 / 1024, B.原创 2011-11-22 17:38:11 · 4743 阅读 · 0 评论 -
ORACLE备份库到共享目录问题
在AIX下将表导出到NFS上oracle@localhost:/home/oracle $expdp ora/ora tables=test directory=DMPDIR dumpfile=test.dmp会报如下错误:Export: Release 10.2.0.5.0 - 64bit Production on Friday, 27 May, 2011 10:58:57原创 2013-05-29 10:50:36 · 1791 阅读 · 0 评论 -
ORACLE数据库表空间迁移--关于数据文件
对于非system表空间可以在数据库open状态下操作SQL>alter tablespace RB_DATA offline;SQL>alter tablespace RB_DATA rename datafile '/soft/u01/app/oracle/oradata/ENSEMBLE/rb_data01.dbf' to '/app/cjfat/oradata/ENSEMB原创 2013-05-29 10:53:12 · 1027 阅读 · 0 评论 -
ORACLE数据库表空间迁移--关于表和索引
下面是我写的一段程序,如果想自己生成代码,把声明的游标部分,放到SQLPLUS里执行一下,就可以了。希望直接做这件事,那么修改文件中的两个参数, old_tbs := 'DATA'; --需要移出的表空间 new_tbs := 'MONITOR_DATA';原创 2013-05-29 10:58:52 · 1594 阅读 · 0 评论 -
ORACLE空间使用情况统计的SQL
/* Formatted on 2012/10/9 10:24:19 (QP5 v5.114.809.3010) */SELECT a.tablespace_name, a.bytes_alloc/1024/1024 "megs_alloc(M)", NVL (b.bytes_free, 0)/1024/1024 "megs_free(M)",原创 2013-05-29 11:02:19 · 1008 阅读 · 0 评论 -
ORACLE关于DELETE后空间不释放问题
主要针对表数据被delete后,而表空间不能被释放的情况手工释放表空间alter table cbsd_log_t enable row movement;alter table cbsd_log_t shrink space查看数据库表的对象脚本SQL> select dbms_metadata.get_ddl('TABLE','TABLE_NAME','SCHEMA')原创 2013-05-29 11:03:57 · 25087 阅读 · 1 评论 -
ORACLE收缩表空间
最近导一个空库到数据库后,发现占用的表空间非常大,执行表收缩(SHRINK SPACE CASCADE)后,发现实际占用的空间不到1%。但是收缩表空间大小提示错误 ALTER DATABASE DATAFILE 'D:\ora_tablespace\GCOMM2.dbf' RESIZE 5000M; 提示:ORA-03297: file contains used data转载 2013-05-29 11:05:08 · 48429 阅读 · 0 评论 -
ORACLE释放UNDO表空间
在日常的数据库维护和数据库编程中经常会遇到犹豫对大数据量做DML操作后是得ORACLE的undo表空间扩展到十几个G或者几十个G 但是这些表空间的所占用磁盘的物理空间又不会被oracle所释放,如果你用的是PC机很可能会遇到磁盘空间不足的问题,经过个人整理经过如下操作可以重构undo表空间,同样temp表空间也可能在你查询大数据或则创建索引的时候无限扩大导致磁盘空间不足,同样可以用如下方式解决此问原创 2013-05-29 11:06:46 · 2181 阅读 · 0 评论 -
ORACLE闪回
闪回数据库:开记闪回功能startup mountalter database flashback on/off查看闪回目录show parameter db_recovery_file_dest;查看闪回功能是否开启select flashback_on from v$database;修改默认闪回保留时间alter system set db_flash原创 2013-05-30 09:04:24 · 742 阅读 · 0 评论 -
关于ORACLE表分区实践
<br />上一篇讲了很多关于分区的技术,但是怎么做分区呢,怎么管理分区呢,还需要细细道来。<br />对于交易流水来说,不管数据量有多大,它一定是按天进来的,这个看实际的分区粒度,分区不是越大越好,也不是越小越高,主要看每个分区的实际数据量的大小,如果一天的数据都有上百万,而查询要求只要看当天的,而且查询比较频繁,那按天做分区,创建7个分区,超过一定天数的,就可以把这个分区的数据移走,以减轻系统负担,对于我现在的情况来说,我一个月的数据量,还是可以处理的,我就建12个分区,以月份为分区键。<br /> <原创 2010-06-27 22:12:00 · 1201 阅读 · 0 评论 -
EXPDP和IMPDP使用说明
EXPDP和IMPDP使用说明Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中. 数据泵导出导入(EXPDP和IMPDP)的作用1、实现逻辑备份和逻辑恢复.2、在数据库用户之间移动对象.3、在数据库之间移动对象4、实现表空间搬移. 数据泵导出导入与转载 2009-11-18 22:05:00 · 7027 阅读 · 2 评论 -
关于ORACLE PLSQL读文件
转自:http://www.oracle.com/technology/obe/obe9ir2/obe-cnt/plsql/plsql.htm都说读书不求甚解害死人,一点也不错,最近我从网上淘到关于ORACLE如何从数据库目录下读文件,于是就用于生产了,结果上了生产,程序死活就是跑不出来,原因是我们的服务器做了REC,如果在两台机器上找一个目录呢,以前呢在自己的程序里把路径写死了,在一般服务器转载 2009-11-18 22:34:00 · 6558 阅读 · 2 评论 -
在oracle中字段类型LONG的使用注意事项
===============================================在oracle中字段类型LONG的使用注意事项 ----------------------------------------LONG数据类型使用上的一些说明 系统环境: 1、操作系统:Windows 20002、数据库: Oracle 8i R2 (8.1.6) for NT 企业版3、安装路径:C:原创 2007-01-16 12:39:00 · 8848 阅读 · 0 评论 -
写完程序一定要查询游标
一个程序员新手写程序经常会犯的错误,就是写完程序不关闭游标,所以导致服务器经常因为没有多余的资源而死机,这里有一个关于oracle的游标查看的sql,写完程序用它查询一下,看游标是否关闭,以提高程序质量。 --select sum(num_curs) from (select distinct s.sid, osuser, machine,user_name ,o.sql_text , co原创 2007-01-16 12:41:00 · 977 阅读 · 0 评论 -
oracle 双机热备份
一、创建Standby Database 要求 1、 Primary 与standby 数据库所在主机上的oracle server及操作系统版本必须相同,且具有相同的补丁; 2、 primary 数据库必须为archive mode;Standby Database也必须为archive mode ; 二、创建standby数据库 1、首先查看Primary Database的归档转载 2007-04-25 11:08:00 · 1113 阅读 · 0 评论 -
写oracle行级触发器时,不能操作本表,报"表 *** 发生了变化,触发器/函数不能读"的错误的解决办法
写oracle行级触发器时,不能操作本表,报"表 *** 发生了变化,触发器/函数不能读"的错误的解决办法原因已经很明显了就是行级的触发器代码中不能操作该表,包括select,是挺郁闷的当然解决方法就是要根据原因了,正因为限定了行级触发器的操作,只能选择表级的触发器了,但是在表级的触发器又不能获得:new和:old的值,那就只能采取两种触发器并用的方法了,并且还要包或者临时表加以辅助.转载 2007-05-30 12:59:00 · 8277 阅读 · 4 评论 -
关于ORACLE时间格式的讨论
在网上看见不少oracle新学者对oracle的时间格式很烦,经常是设计了一个带时间字段的表之后,向表插入数据失败。回想起自己刚开始学习oracle时,也对这个时间格式摸不着头脑,虽然是小小的问题,高手们不屑于讨论,但对初学者来讲,这也是一个不大不小的坎,没找到门路的话, 可能几天都过不去,其实就是一层窗户纸,没什么难的。这里做一个简单的小结,因水平有限,请高手补充指正。1 oracle对时间格式转载 2007-09-07 14:40:00 · 5050 阅读 · 1 评论 -
关于ORACLE DROP不了的表
我只知道用这个序列可以DROP一些正常无法DROP不了的表,也不知道为什么有些表DROP不了这些表大多是我先把某用户下的所有表都一次性用工具DROP了,然后再IMP时,系统自动生成的一些垃圾表,用正常方法DROP不了,只能用下在的方法DROP。exec dbms_aqadm.drop_queue_table(TABLE,TRUE,TRUE); 以前一直在ORACE 8I,O原创 2008-01-23 21:20:00 · 4577 阅读 · 2 评论 -
sql脚本的一些经验
不要在SQL语句中使用系统默认的保留关键字尽量用EXISTS和NOT EXISTS代替IN 和NOT IN尽量不用SELECT * FROM 。。。而写字段名SELECT FIELD1,FIELD2,。。。在SQL查询中应尽量使用索引列加快查询速度任何ORDER BY 语句的非索引项或计算表达式将减低查询任何在WHERE 子句中使用IS NULL 或者IS NOT NULL 的原创 2008-08-05 15:46:00 · 601 阅读 · 0 评论 -
写几个有用的简单SQL(表记录的复制)
1,数据库表复制create table user_bak as (select * from user); 2,表字段的复制,值取自其它表的某字段说明:把表fm_client_sys的old_client_no字段copy到fm_client的old_client_no,约束:fm_client_sys的client_no等于fm_client的client_no,原创 2008-08-19 12:13:00 · 876 阅读 · 0 评论 -
关于ORACLE字符集问题
怎么样查看数据库字符集 [A]数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。 客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter, 表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表 会话字符集环原创 2009-02-03 20:44:00 · 814 阅读 · 1 评论 -
oracle卸载
regedit删除下面的项:1,localmachine-->software-->oracle2,localmachine-->software-->odbc-->odbcinst ini-->oracle odbc driver3,localmachine-->system-->current control set-->services-->oracle开头的服务4,localmachi原创 2009-02-05 22:26:00 · 548 阅读 · 0 评论 -
利用RMAN备份恢复ORACLE数据
备份数据库1.nocatalog:rman target /report schema;显示schema结构查看数据库是否为归档模式archive log list;只有在归档模式下才可以执行下面的操作shutdown immediate数据库起动到mount状态startup mount修改数据库到归档模式alter database archivelog;alter database op原创 2009-02-05 22:29:00 · 1514 阅读 · 0 评论 -
oracle闪回技术
1,闪回数据库到之前某时间点(在安装时需要开放闪回功能)不支持表空间删除 select name from v$database; --看是否打开闪回功能 select flashback_on,name from v$database; select name from v$bgprocess where paddr打开闪回功能SQL> shutdown immediatSQL> start原创 2009-02-07 01:01:00 · 9246 阅读 · 0 评论 -
PLSQL计算日期是当月第几周
网上查询的方法都是这个:SELECT TO_CHAR (p_date, 'W') INTO v_week FROM DUAL;它实际上是星期N在当月第几次出现。如本月的第1天是个周四,那么为个月的5,6,7号是第一次出现,它给出的就是第一周,实际上我们理解的应该是第二周。/*+====================================================...原创 2019-07-18 16:25:41 · 2197 阅读 · 0 评论