Oracle日常维护--运维基础篇 下载本文

内容发布更新时间 : 2024/5/22 21:03:11星期一 下面是文章的全部内容请认真阅读。

Oracle 日常维护:数据库启动、关闭介绍

数据库启动说明:

1、 两台主机启动后,首先检查IBM的HACMP双机软件是否已启动,可通过以下

命令去查看HA是否已启动:

#lssrc –l cluster

(此命令应该出来至少2行显示cluster active,即两台主机2个HA服务才算正常) #lsvg –o

(此命令结果在两台主机应该看到oradatavg这个共享、并发的卷组VG) 假设HA服务没有启,需要使用命令在两台主机上分别启动: # smitty clstart

(HA启动一后oradatavg卷组才会看得见)

2、 在确保HA服务已启动后,便可启动ORACLE数据库: $sqlplus /nolog $conn as sysdba

或$sqlplus “system/sys as sysdba” Sql>startup

3、 启动监听后台进程: $lsnrctl start LISTENER_PBS

数据库关闭说明:

1、

关闭ORACLE数据库:

$sqlplus “system/sys as sysdba” Sql>shutdown immediate 2、

关闭监听后台进程:

$ lsnrctl stop LISTENER_PBS 3、

关闭HA服务:

# smitty clstop 4、

重启IBM主机:

# shutdown -Fr

其它AIX相关的维护命令:

1、 查看lv裸设备大小及使用情况: #lsvg –l oradatavg 07906251933

第 1 页 共 7 页

Oracle导出程序Exp的使用具体过程

Oracle的导出实用程序(Export utility)允许从数据库提取数据,并且将数据写入操作系统文件。exp使用的基本格式:exp[username[/password[@service]]],以下例举exp常用用法。

1. 获取帮助 exp help=y

2. 导出一个完整数据库

exp system/manager file=bible_db log=dible_db full=y

3. 导出数据库定义而不导出数据

exp system/manager file=bible_db log=dible_db full=y rows=n

4. 导出一个或一组指定用户所属的全部表、索引和其他对象

exp system/manager file=seapark log=seapark owner=seapark

exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)

注意:在导出用户时,尽管已经得到了这个用户的所有对象,但是还是不能得到这些对象引用的任何同义词。解决方法是用以下的SQL*Plus命令创建一个脚本文件,运行这个脚本文件可以获得一个重建seapark所属对象的全部公共同义词的可执行脚本,然后在目标数据库上运行该脚本就可重建同义词了。

SET LINESIZE 132 SET PAGESIZE 0 SET TRIMSPOOL ON SPOOL c:\\seapark.syn

SELECT 'Create public synonym '||synonym_name ||' for '||table_owner||'.'||table_name||';' FROM dba_synonyms

WHERE table_owner = 'SEAPARK' AND owner = 'PUBLIC'; SPOOL OFF

5. 导出一个或多个指定表

exp seapark/seapark file=tank log=tank tables=tank exp system/manager file=tank log=tank tables=seapark.tank

exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)

6. 估计导出文件的大小 全部表总字节数:

第 2 页 共 7 页

SELECT sum(bytes) FROM dba_segments

WHERE segment_type = 'TABLE';

seapark用户所属表的总字节数: SELECT sum(bytes) FROM dba_segments WHERE owner = 'SEAPARK' AND segment_type = 'TABLE';

seapark用户下的aquatic_animal表的字节数: SELECT sum(bytes) FROM dba_segments WHERE owner = 'SEAPARK' AND segment_type = 'TABLE'

AND segment_name = 'AQUATIC_ANIMAL';

7. 导出表数据的子集(oracle8i以上) NT系统:

exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type file=fruit log=fruit UNIX系统:

exp system/manager query=\\\salad_type=\\'FRUIT\\'\\\tables=amy.salad_type file=fruit log=fruit

8. 用多个文件分割一个导出文件 exp system/manager

file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) log=paycheck, filesize=1G tables=hr.paycheck

9. 使用参数文件

exp system/manager parfile=bible_tables.par bible_tables.par参数文件:

#Export the sample tables used for the Oracle8i Database Administrator's Bible. file=bible_tables log=bible_tables tables=(

第 3 页 共 7 页