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

    xiaoxiao2021-03-25  66

    一、管理数据库的用户主要是: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

    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

    转载请注明原文地址: https://ju.6miu.com/read-34232.html

    最新回复(0)