开发者社区> 黎明的烬> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Oracle的数据库管理(一)——逻辑备份与恢复

简介: 一、管理数据库的用户主要是:sys、system (1)存储的数据的重要性 sys:所有oracle的数据库字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。
+关注继续查看

一、管理数据库的用户主要是:sys、system

(1)存储的数据的重要性

sys:所有oracle的数据库字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba(数据库管理员角色),sysdba(系统管理员),sysoper(系统操作员)角色或权限是oracle权限最高的用户

system:用于存放次一级的内部数据,如oracle的一些特性和工具的管理信息。system用户拥有dba,sysdba角色或系统权限

(2)权限不同

sys用户必须以as、  sysdba或 as sysoper形式登录,不能以normal方式登录

system如果正常登录,它其实就是一个普通的dba用户,但是如果以as  sysdba登录,其结果实际上它是作为sys用户登录的,从登录信息里面可以看出来。

例如;conn   sys/12345   as sysdba;


sys 、system、sysoper三种角色分析;

图1图1

dba权限的用户:

dba用户是指具有dbajuese的数据库用户,特权用户可以执行启动实例,关闭实例等特殊操作,而dba用户只有在启动数据库后才能执行各种管理工作。


conn  system/manager as sysdba;

shutdown;关闭数据库

startup;打开数据库

二、管理初始化参数

初始化参数用于这只实例或者是数据库特征。oracle9i提供了200多个初始化参数,并且每个初始化参数都有默认值。

  显示初始化参数

(1)show   parameter命令

如何修改参数?

D:\app\wangbing\admin\orcl\pfile\init.ora

三、数据库(表)的逻辑备份与恢复

------------------------导入和导出时,要到oracle的bin目录下------------------------------------------

逻辑备份是指使用工具export将数据对象的结构和数据导出到文件的过程,逻辑恢复是指当数据库对象误操作而损坏后使用工具import利用数据备份的文件把数据对象导入到数据库的过程。物理备份即可在数据库open的状态下进行,也可以在关闭数据库后进行,但是逻辑备份和回复只能在open的状态下进行。


----------------------------导出:三种(导出表、导出方案、导出数据库)--------------------------------------------

导出使用exp命令来完成,其选项有:

userid:用于指定执行导出操作的用户名,口令,连接字符串

tables:用于指定执行导出操作的表

owner:用于指定执行导出操作的方案

full=y:用于指定执行导出操作的数据库

inctype:用于指定执行导出操作的增量类型

rows:用于指定执行导出操作是否要导出表中的数据

file:用于指定导出文件名


导出表:

(1)导出自己的表

exp userid = scott/tiger @oracl  tables =(emp ,其他表名)  file = d:\e1.dmp;

(2)导出其他方案的表

如果用户要导出其他方案的表,则需要dba的权限或是exp_full_database的权限,比如system就是可以导出scott的表

exp userid = system/3142344 @oracl  tables =(scott.emp ,其他表名)  file = d:\e2.dmp

(3)导出表结构

exp userid = scott/tiger @oracl  tables =(emp ,其他表名)  file = d:\e3.dmp   rows =n;

(4)使用直接导出方式

exp userid = scott/tiger @oracl  tables =(emp ,其他表名)  file = d:\e4.dmp   direct  = y;

这种方式比常规的方式快,当数据量大时,可以考虑,【注:需要数据库的字符集要与客户端的字符集完全一致,否则会报错】


导出方案:

导出方案是指使用export工具导出一个方案或是多个方案中的所有对象(表,索引,约束...)和数据。并存放到文件中。

(1)导出自己的方案

exp  scott/tiger@tiger@orcl  owner = scott   file = d:\scott.dmp;

(2)导出其他方案

如果要导出其他方案,则需要dba的权限或是exp_full_database的权限,例如system用户就可以导出任何方案

expsystem/tiger@tiger@orcl  owner = (system,scott)  file = d:\scott.dmp;

表示:用system用户,导出scott 的方案!


导出数据库:

利用export导出所有数据库中的对象及数据,要求该用户具有dba权限或者exp_full_database权限

exp system/tiger@tiger@orcl  full =y   inctype = completefile =d:\scott.dmp;

增量备份!

---------------------------导入--------------------------------------------

导入就是使用工具import将文件中的对象和数据导入到数据库中,但是导入要使用的文件必须是export所到处的文件,同样有三种方式,导入表,导入方案,导入数据库。


imp  常用的选项;

userid:用于指定执行导入操作的用户名,口令,连接字符串

tables:用于指定执行导入操作的表

formuser:用于指定源用户

touser:用于指定目标用户

file:用于指定导入文件名

full= y:用于指定执行导入操作的增量类型

inctype:用于指定执行导入操作的增量类型

rows:指定是否要导入表行(数据)

ignore:如果表存在,则只导入数据


导入表:

(1)导入自己的表:imp userid =scott/tiger@myor    tables=(emp)  file = d:\a.dmp

(2)导入表到其他用户:要求该用户具有dba的权限,或者是imp_full_database

imp  userid=system/manerage@myor    tables = (emp)   file = d:\s.dmp  rows = n

(3)导入表的结构

只导入表的结构而不导入数据

imp  userid = scott/tiger@myor    tables =(emp)  file=d:\a.dmp  rows = n;

(4)导入数据

如果对象(比如表)已经存在可以导入表的数据

imp  userid =scott /tiger@myor   tables =(emp)   file =d:\da.dmp      ignore = y;


 导入方案:

导入方案是指使用inport工具将文件中的对象和数据导入到一个或者多个方案中,如果导入其他方案,要求该用户具有dba权限,或者imp_full_database

(1)导入自身方案

imp  userid  = scott  /tiger@myor    file=d:\a.bmp

(2)导入其他方案

要求该用户具有dba的权限

imp userid = system/tiger   file = d:\a.dmp  formuser = system  touser =scott;


导入数据库:

默认时 ,导入数据库,会导入所有对象结构和数据。

imp  userid=system/tiger   full=y   file=d:\a.dmp


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Oracle基础 数据库备份和恢复
原文:Oracle基础 数据库备份和恢复 一、为什么需要数据备份   造成数据丢失的主要原因:   1、介质故障。   2、用户的错误操作。   3、服务器的彻底崩溃。   4、计算机病毒。   5、不可预料的因素。
1136 0
+关注
66
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载