oracle常用知识

数据备份命令

exp mll/mll full=y rows=y statistics=none file=070306.dmp

vi .bash_profile

# .bash_profile

Oracle中的字符编码一定要设成和系统一样的才行,否则后果很严重

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

unset USERNAME

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1

export ORACLE_SID=mailaili

export PATH=$PATH:$ORACLE_HOME/bin

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

export NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"

export nls_language='SIMPLIFIED CHINESE'

建数据库的时侯也得选择CHINESE_CHINA.ZHS16GBK的字符集,这样在开发的过程当中才不会出错。

设置linux中的语言环境,在/etc/profile中加入export  LC_ALL=zh_CN.GBK

如果在设置归档日志中出错,执行这条语句

SQL>ALTER SYSTEM RESET log_archive_start SCOPE=SPFILE SID='*';

如果在exp中出现

對一個DBA或需使用exp,imp的普通用戶來說,在我們做exp的過程中可能經常會遇到EXP-00091 Exporting questionable statistics.這樣的EXP信息,其實它就是exp的error message,它產生的原因是因為我們exp工具所在的環境變量中的NLS_LANG與DB中的NLS_CHARACTERSET不一致。但需說明的是,exp-91這個error message對所生成的dump檔沒有影響,生成的dump檔還可以正常的imp(個人體會,不知道有沒有錯),雖然它對我們的dump檔沒有影響,我個人還是不想它出現,大家也有同感吧, 。。下面我們就讓它消失吧。。我們一起來

step 01 查看DB中的NLS_CHARACTERSET的值(提供兩種方法):

select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET'
or
select * from v$nls_parameters  where parameter='NLS_CHARACTERSET';
SQL> select * from v$nls_parameters where parameter='NLS_CHARACTERSET';

PARAMETER          VALUE
-----------------------  ----------------------------------------------
NLS_CHARACTERSET    ZHT16BIG5

step 02 根據step 01查出的NLS_CHARACTERSET(ZHT16BIG5)來設定exp的環境變量:

WINNT> set NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5
LINUX> export NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5

附上exp-91的oracle error message 解決方案說明:

oerr exp 91
00091, 00000, "Exporting questionable statistics."
// *Cause:  Export was able export statistics, but the statistics may not be
//          usuable. The statistics are questionable because one or more of
//          the following happened during export: a row error occurred, client
//          character set or NCHARSET does not match with the server, a query
//          clause was specified on export, only certain partitions or
//          subpartitions were exported, or a fatal error occurred while
//          processing a table.
// *Action: To export non-questionable statistics, change the client character
//          set or NCHARSET to match the server, export with no query clause,
//          export complete tables. If desired, import parameters can be
//          supplied so that only non-questionable statistics will be imported,
//          and all questionable statistics will be recalculated.

使用如下语句删除一个表中的记录   
  delete   from   test   where   field1='200409'   
  test表中有几千万条记录,上面的语句要删除的记录数也有几百万条,这样等待的时间非常漫长,请问如何能加快删除速度?上面的语句如何改才能实现快速删除记录?