Oracle基本管理

来源:互联网 发布:淘宝好评订单能修改吗 编辑:程序博客网 时间:2024/05/29 10:22

1:添加Oracle用户haha,密码123,并为其授予超级权限。先在控制台下执行:
   sqlplus / as sysdba
   进入sqlplus,然后依次输入:
   create user haha identified by 123;
   grant dba to haha;(部署时一般只需要授予connect和resource角色的权限)

2:从Oracle中备份数据到本地文件。在控制台下执行:
   exp haha/123@orcl file='d:\test.dmp' full=y
   将Oracle数据库中数据备份到文件d:\test.dmp中

3:导入数据到Oracle中。在控制台下执行:
   imp haha/123@orcl file=E:/test.dmp full=y
   将数据库备份文件E:/test.dmp的内容导入到Oracle数据库中

4:删除某用户及其所有数据。先在控制台下执行:
   sqlplus / as sysdba
   进入sqlplus,然后依次输入:
   DROP USER haha CASCADE;

5:按照当前日期时间自动备份:
set date0=%date:~0,10%
set time0=%time:~0,8%
set dttm=%date0:-=%%time0::=%

exp haha/123@orcl file='d:\bak\haha%dttm%.dmp' owner=haha
exp haha/123@orcl file='d:\bak\all%dttm%.dmp' full=y

6: 开启归档模式:
1)SQL> conn / as sysdba (以DBA身份连接数据库)   
2)SQL> shutdown immediate; (立即关闭数据库)   
3)SQL> startup mount (启动实例并加载数据库,但不打开)   
4)SQL> alter database archivelog; (更改数据库为归档模式)   
5)SQL> alter database open; (打开数据库)   
6)SQL> alter system archive log start; (启用自动归档)   
7)SQL> exit (退出)

7: 关闭归档模式:
1)SQL>SHUTDOWN NORMAL/IMMEDIATE;   
2)SQL>STARTUP MOUNT;   
3)SQL>ALTER DATABASE NOARCHIVELOG;   
4)SQL>ALTER DATABASE OPEN;

8:增量备份:
首先确保开启了归档模式。然后用rman实现。
1)将备份文件存储到指定路径:
首先必须确保保存备份文件的文件夹存在,然后在rman中通过下列脚本实现:
configure channel device type disk format 'e:\haha\%d_db_%T_%U';
2)增量备份:
增量备份分为累积和差异两种
backup incremental level 0 database; --这是一个0级备份
backup incremental level 1 database; --差异1级
backup incremental level 2 database; --差异2级
backup incremental level 1 cumulative database; --累积1级
backup incremental level 2 cumulative database; --累积2级
一般来说只用差异备份,周一凌晨跑一个0级,二三凌晨各跑1个差异2级,周四凌晨跑1一个差异1级,周五周六各跑1个差异2级,周日凌晨跑一个2级或者不跑。如果要定时备份,可用at增加计划任务,然后执行脚本,脚本内容可类似如下:
echo backup incremental level 0 database; | rman target /
3)增量恢复:
rman target /
RMAN> connect target /
set dbid 1274918132#dbid号可通过查看备份文件得到或者select dbid from v$database
RMAN> startup nomount;
RMAN> restore spfile from '/db/bak/ctf/ORCL_ctf_bak_c-1274918132-20110506-02';#控制文件备份地
RMAN> shutdown immediate;
RMAN> startup nomount;
RMAN> restore controlfile from '/db/bak/ctf/ORCL_ctf_bak_c-1274918132-20110506-02';#备份控制文件路径
RMAN> alter database mount;
RMAN> restore database;
RMAN> recover database;
RMAN>alter database open resetlogs;

原创粉丝点击