第7课 oracle数据库的管理及数据备份,恢复

原创 2013年06月18日 18:15:28

一般,每个数据库都应该至少有一名数据库管理员,但是现在由于成本等原因,只有大公司才会有专门的dba;

dba的职责:

1,安装和升级oracle数据库;

2,建立表空间,表,视图,索引等;

3,制定并实施数据库备份和恢复计划;

4,数据库的权限管理和调优,故障排除等;

5,对于高级dba,要求能参与项目刚开发,会编写sql语句,存储过程,触发器,规则,约束,包等;


Sys和system的区别:

  Sys是权限最高的用户,拥有dba,sysoper,sysdba权限,登入时必须as sysdba,或者assysoper登入;

   在oracle中,每个用户对用一个方案,在sys方案中,存储了基表,和动态视图;

  System拥有dba,sysdba权限:他的方案里也存放了一些很重要的操作数据;

这里的sysoper权限好像应用不大,很少用,下面是比较sysdba和sysoper的不同;

sysdba权利最大,该有的权利都有,sysoper有些权利没有:改变数据库字符集,创建,删除数据库,sysoper只能完全恢复数据库,不能执行部分恢复;不能查看用户数据,登陆后用户是public;

关闭启动数据库的两条命令为:startup,  shutdown,只有sysdba拥有这个权利;

高级的dba能够进行调优工作,主要是对数据库的配置参数进行调整,参数大约200多个,可以以sysdba身份用show paramter查看这些参数,

 也可以再D:\oracle\admin\myOra\pfile\ init.ora进行修改,当然也可在图形界面修改。


备份和恢复:

逻辑备份和物理备份:

1,  逻辑备份:(只能在数据库运行的状态)

导出:使用工具如export 等将数据对象的结构和数据导出到文件的过程;

导入:数据库损害后,用import利用备份文件把数据对象导入到数据库的过程。

2,物理备份:可以再数据库关闭的状态下进行。

导出分为:导出表,导出方案,导出数据库

导出命令:exp   这些都必须在控制台进行命令,oracle的bin目录下(因为这个目录下有exp.exe文件),我的安装在d盘:D:\oracle\ora92\bin


 导出表: 

第一种:导出自己的表:exp userid=scott/tiger@myora tables=(emp) file=d:\e1.dmp  导出多表,只需在括号内添加表名

第二种:sysdba导出别的用户的表:exp userid=system/xxxxxx@myora tables=(scott.emp) file=d:\e2.dmp

                  可否导出到别的文件,如d:\e1.txt   当然导出的表实际上没什么用处,只是为了恢复表吧

导出表结构:

有些时候我们对表的数据不感兴趣,只需导出表的结构,

     同样可以导出自己的表结构和别人的表结构:同导出表的区别是只需在后面加上 rows=n  :   rows=n/y  表示是否要导出表中数据;

 导出表及表结构其实还有一种很迅速的方式:在后面加上:direct =y ,这样在时间上会提高很多,至于为什么,我也不知道。

 如:exp userid=system/zpg7016893@myora tables=(scott.emp) file=d:\e2.dmpdirect =y  注意要oracle的字符集与客户端字符集完全一致才可以;

导出方案:

 导出方案,也很相识,只需把关键字table 改成owner,:如下:也可以导出多个方案:

exp userid=system/密码@myoraowner= scott file=d:\e5.dmp

导出数据库:

exp userid=system/密码@myora full=yinctype=complete  file=d:\e6.dmp  // inctype=complete表示增量发导出,下次导出时,速度就快很多;

以上就是数据库的不同层次上的备份操作,下面是恢复,也就是数据不同层次上的到入:


数据导入:

imp命令

1,导入表: imp  userid=scott/tiger@myora tables=(emp) file=d:\e1.dmp;   导入表到当前用户;

                         impuserid=scott/tiger@myora tables=(emp) file=d:\e1.dmp  touser=scott; 导入表到scott用户;

  imp userid=scott/tiger@myora tables=(emp) filed=”d:\e1.dmp   ignore=y”; ignore=y表示表结构存在了,就可以只导入数据:

2,导入表结构:imp userid=scott/tiger@myora tables=(emp) filed=”d:\e1.dmp  rows=n”;  rows=表示不导入数据行;


3,导入方案:

    导入自身导出的方案:Imp userid=scott/tiger file=d:\e6.dmp

   导入其他方案:imp userid=system/manager file=d:m6.dmp fromuser=systemtouser=scott;

4,导入数据库:

  Imp userid=system/manager full=yfile=d:\e6.dmp


 












Navicat工具进行Oracle数据库复制or备份、还原功能(由评教需要所谈)

GXPT是一个分布式系统,此系统暂时包含权限系统、基础系统、评教系统、考试系统,各个系统建有自己的oracle数据库。我们小组负责的是评教系统,而评教系统的正常需要借助于权限系统和基础系统,具体的业务...
  • u013380777
  • u013380777
  • 2017年03月15日 13:54
  • 376

大数据Spark “蘑菇云”行动前传第7课:零基础实战Scala面向对象编程及Spark源码解析

大数据Spark “蘑菇云”行动前传第7课:零基础实战Scala面向对象编程及Spark源码解析 1 spark 中面向对象鉴赏 2 scala中面向对象代码操作实战...
  • duan_zhihua
  • duan_zhihua
  • 2016年07月24日 21:19
  • 359

Oracle-->数据库备份与恢复-->数据库库归档模式

数据库可运行在两种模式下:ARCHIVELOG和NOARCHIVELOG模式。归档模式指明何时Redo Log文件可以被重用。 1.1.1   NOARCHIVELOG 1.     ...
  • snowfoxmonitor
  • snowfoxmonitor
  • 2014年07月04日 21:49
  • 891

实验四 数据库模式对象管理

一、实验目的 1)  掌握表、索引、索引化表的概念及管理 2)  掌握分区的概念及分区管理 3)  掌握外部表的概念及其管理 4)  了解簇、视图、序列、同义词、数据库链接等的管理 二、预习...
  • MJ813
  • MJ813
  • 2016年12月31日 20:26
  • 789

mysql备份/恢复策略

需要考虑的一些因素。 1.确定要备份的表的存储引擎是事务型还是非事务性,两种不同的存储引擎备份方式在处理数据一致性方面是不太一样的。 2.确定使用全备份还是增量备份。全备份的优点是备份保持最新...
  • Cym_summer
  • Cym_summer
  • 2016年10月12日 16:51
  • 1314

MongoDB数据备份与恢复

备份:mongodump     mongodump --help #命令帮助 mongodump  -h 192.168.0.1 -u "mydbuser" -p "123" -d myd...
  • seteor
  • seteor
  • 2013年09月05日 17:23
  • 8483

ORACLE数据库备份与还原命令

简介: 数据泵使用指南 10g开始引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中. 数据泵导出导入(EX...
  • RoWisdom
  • RoWisdom
  • 2013年05月30日 13:48
  • 6606

sybase备份恢复

1. 备份 1)  全量备份 2> dump database mydb2 to "E:\sybase\backup\mydb2-full.bak" 3> go 2)  增量备份 1> dump ...
  • duanbeibei
  • duanbeibei
  • 2015年07月29日 17:12
  • 752

CouchBase 备份与还原

备份的executedNew2可以还原到executedNew (它本身有数据也没事) cbbackup http://192.168.1.30:8091 E:\CouchBase_Backup ...
  • liuming690452074
  • liuming690452074
  • 2016年02月01日 17:00
  • 411

linux下mysql数据备份 恢复

比如我们要备份mysql中已经存在的名为linux的数据库,要用到命令mysqldump  命令格式如下:  [root@linuxsir01 root]# mysqldump -u root -...
  • yusiguyuan
  • yusiguyuan
  • 2013年08月30日 15:42
  • 968
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第7课 oracle数据库的管理及数据备份,恢复
举报原因:
原因补充:

(最多只允许输入30个字)