Archive for ‘Oracle’ Category

expdp常见用法

expdp是 oracle 10g提供的一个代替exp的工具,不论从速度还是功能上来讲,相对于exp来说都是一个飞跃。
1. 执行expdp之前要先创建directory对象,如:
CONNECT system/manager
CREATE OR REPLACE DIRECTORY expdir AS ‘d:\exp’;
GRANT read,write ON DIRECTORY expdir TO public;
2. 常见用法:
2.1 导出scott整个schema
expdp scott/tiger@bright parfile=c:\exp.par –默认导出登陆账号的schema
exp.par内容:
DIRECTORY=expdir
DUMPFILE=scott_full.dmp
LOGFILE=scott_full.log

Oracle中的audit

摘自:http://space.itpub.net/?uid-1698901-action-viewspace-itemid-103292 并做了些修改 
1、什么是审计
 简单来讲,就是把对数据库的操作记录下来。不管你是否打开数据库的审计功能,以下这些操作系统会强制记录。
用管理员权限连接Instance
启动数据库
关闭数据库
2、和审计相关的两个主要参数
 Audit_sys_operations
默认为false,当设置为true时,所有(注意是所有!)sys用户(包括以sysdba,sysoper身份登录的用户)的操作都会被记录,audit trail不会写在aud$表中,这个很好理解,如果数据库还未启动aud$不可用,那么像conn /as sysdba这样的连接信息,只能记录在其它地方。如果是windows平台,audti trail会记录在windows的事件管理中,如果是linux/unix平台则会记录在audit_file_dest参数指定的文件中

expdp时出现UDE-00008

今天在做expdp测试时出现如下错误:
D:\ oracle \product\10.1.0\db_1\BIN>expdp test/test@bright parfile=c:\exp.par
Export: Release 10.1.0.2.0 - Production on 星期二, 26 2月, 2008 14:45
Copyright (c) 2003, oracle .  All rights reserved.
连接到: oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
自动启用 FLASHBACK 以保持数据库完整性。
启动 “TEST”.”SYS_EXPORT_SCHEMA_06″:  test/********@bright parfile=c:\exp.par
正在使用 BLOCKS 方法进行估计…
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 24.25 MB
处理对象类型 SCHEMA_EXPORT/USER
处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
处理对象类型 [...]

表中数据累加的问题

今天一同事问我怎么用一条sql语句实现如下功能:
ID AMOUNT
—————–
1 3
2 5
3 6
4 8
要得到这样的结果:
ID AMOUNT TOTAL
———————–
1 3 3
2 5 8
3 6 14
4 8 22
这个问题是很常见也是很简单的问题,有两种解决方法:

ORA-01102: cannot mount database in EXCLUSIVE mode

今天在STARTUP一数据库时,发生如下错误:
SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup
oracle instance started.
Total System Global Area 276824064 bytes
Fixed Size 778736 bytes
Variable Size 137371152 bytes
Database Buffers 138412032 bytes
Redo Buffers 262144 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
SQL> shutdown immediate
ORA-01507: database not mounted
oracle instance shut down.

数据库设计之字符集的选择

数据库设计首要任务之一是选择数据库的字符集,因为这关系到你的数据是以什么编码存储的,你的数据库支持什么语言等等….
1.什么是字符集(Character Set)
所谓字符集,顾名思义就是将一组字符,比如:文字字符,象形文字,符号,标点符号,控制符等通过一定的编码组成一个集合。不同的字符集有不同的编码方式,比如最常见的是ASCII,ZHS16GBK等等,它们的编码方式不一样,所包含的字符也不一样。
不同的字符集不仅决定你的数据库支持什么样的语言,还同时影响你:
1).如何创建你的数据库对象
2).如何开发你的应用程序来处理字符数据
3).数据库如何跟操作系统进行工作
4).数据库性能
5).存储数据所需的空间

ORA-00600: internal error code, arguments: [unable to load XDB library], [], [],

最近在EXP一用户的数据时出现如下错误:
ORA-00600: internal error code, arguments: [unable to load XDB library], [], [],
在GOOGLE上查找了一下,原来是LD_LIBRARY_PATH这个环境变量设错了,将其设置为:
LD_LIBRARY_PATH=/opt/app/ oracle /10g/lib
问题解决!
相关文档:Metalink Doc ID(351650.1)
Applies to:
———————-
Enterprise Manager for RDBMS - Version: 9.2.0 to 10.2.0
oracle Server - Enterprise Edition - Version: 9.2.0 to 10.2.0
oracle Server - Personal Edition - Version: 9.2.0 to 10.2.0
oracle Server - Standard Edition - Version: [...]

Character or Byte?

我们知道在MS SQL中CHAR(N)或VARCHAR(N)的N是指Bytes,而不是字符的个数,那么在 oracle 中(CHAR或VARCHAR2),这个N到底是字符的个数还是字节长度?
在 oracle 中这个N既可以是Bytes也可以是Characters,那么如何去指定它是哪一种呢?有两种方法:
1.在CHAR或VARCHAR2中明确指定
如:CHAR(10 CHAR),VARCHAR2(20 CHAR),CHAR(10 BYTE),VARCHAR2(20 BYTE)
2.在初始化参数中指定
可以在初始化参数中指定NLS_LENGTH_SEMANTICS=’CHAR’或’BYTE’来确定
默认情况下这个参数是BYTE
那么这两种方式有什么关系和优缺点呢?

如何处理Oracle中的坏块[ZT]

一. 什么是数据库的坏块
首先我们来大概看一下数据库块的格式和结构:
数据库的数据块有固定的格式和结构,分三层:
Cache layer
Transaction layer
Data layer
在我们对数据块进行读取写入操作的时候,数据库会对要读写的数据块做一致性的检查,其中包括:数据块的类型、数据块的地址信息、数据块的SCN号以及数据块的头部和尾部。如果发现其中有不一致的信息,那数据库就会标记这个数据块为坏块了。数据库的坏块分为两种:逻辑坏块和物理坏块
逻辑坏块(Logically Corrupt):example: the block was corrupted by an oracle internal error but does not appear to be media corrupt
物理坏块(Media Corrupt):incorrect checksum/wrong data block address/impossible block type

ORA-08103: object no longer exists

一客户在查询数据时报如下错误:
SQL> select count(*) from sa.g_sn_travel;
select count(*) from sa.g_sn_travel
*
ERROR 位于第 1 行:
ORA-08103: object no longer exists
用analyze分析该表,出现如下提示:
SQL> analyze table sa.g_sn_travel validate structure cascade;
analyze table sa.g_sn_travel validate structure cascade
*
ERROR 位于第 1 行:
ORA-01499: table/index cross reference failure - see trace file
查看对应的trace file发现该表的索引和表的数据出现不一致,于是重新创建该Index解决问题。

Page 3 of 8«12345678»

    搜索本站

    站点日历

    7月 2010
    « 4    
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  

    订阅本站

    文章分类

    最新日志

    热点文章

    日志存档

    常用标签