zoukankan      html  css  js  c++  java
  • Oracle基础(三)数据库管理

    上篇介绍了Oracle数据库的基本操作指令:增、删、改、查以下针对数据库的管理进行介绍

    数据库角色介绍

    数据管理员:  至少有一个数据库管理员dba。

                职责:安装和升级oracel数据库

                建库,表空间,表。视图。索引

                制定并实施备份和恢复计划

                数据库权限管理,调优,故障排除

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

                Sys 和system差别

               1、  最重要。存储的数据的重要性不同

                Sys:全部oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的执行至关重要,有数据库自己维护,不论什么用户都不能手动更改。sys拥有dba,sysdba,sysoper角色或权限。是oracle权限的最高用户

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

                 2、 其次差别

                 Sys必须以as sysdba或as sysyoper形式登录。不能以normal方式登录数据库

                 System假设正常登录。事实上就是一个普通的dba,但假设以as sysdba登录。其结果实际上它是作为sys用户登录的。

                 数据库的逻辑备份和恢复

                 导出 导出表,导出方案,导出数据库

    使用exp命令完毕

                Userid:用户指定运行导出操作员的username,口令,链接字符串

                Tables:导出操作的表

                Owner:导出操作的方法

                 Full=y:导出操作的数据库

                 Inctype:导出操作的增量类型

                Rows :

                Exp userid=scott/tiger@ myoraltables=(emo,dept) file=d:e1.dmp

                导出自己的方案

                Exp scott/tiger@myoral owner= scottfile=d:scott.dmp

                导出其它的方案

                 Exp system/manager@myoralowner=(system,scott) file=d:system.dmp

                导出数据库

                 Exp userid=system/manager@myyoral full=yinctype=complete file =x.dmp

                 导入自己表

                  Imp userid=scott.tiger@myortables=(emp) file =d:xx.dmp

                 导入表到其它用户

                  Imp userid =system/manager@myortables=(emp) file = d:xx.demp rows =n

                  导入数据

                  Imp userid =scott/tiger@myor tables=(emp)file =d:xx.dmp igore=y

    数据字典和动态性能视图

                 Db 提供数据库的一些系统信息包含数据字典基表和数据字典视图。

                 动态性能视图:记载了例程启动后的相关信息

           管理表空间和数据文件    

                Sql>select table_name from user_tables 查询该用户建立的全部的全部表格

                All_tables 可訪问到的全部表

                Dba_tables 显示全部方案拥有的数据库表

                查询表

                Desc dba_users

                查询有多少汇总角色?

                Select* from dba_roles

                查询某个用户。具有如何的角色

                Select * from dba_role_privs wheregrantee=’username’

                当前数据库的全称  :Select * from global_name

         管理表空间和数据文件

                表空间:数据库的逻辑组成部分,物理上。数据库数据存放在数据文件里,逻辑上将,数据库则是存放在表空间中。表空间由一个或是多个数据文件组成

                数据库的逻辑结构包含表空间,段。区和块

                表空间:控制数据库占用的磁盘空间

                Dba 能够将不同数据类型部署到不同的位置,有利于提高I/O性能。有利于备份和恢复等管理操作

                建立表空间 create tablespace

                建立数据库表空间

               Create tablespace data01 datafile‘d: estdata01.dbf’ size 20m uniform size 128k

                使表空间脱机:Alter tablespace users offline

                 联机:Alter tablespace users online

                仅仅读为read only

        约束

                包含not null,unique,primay key ,foreign key ,check

                表跟表的关系 references

                删除约束:alter table 表名 drop primary key cascade.

         维护数据的完整性

            管理索引

                用于加速数据存取的数据对象。

                单列索引:Create index 索引名 on 表名(列名)

                复合索引:Create index emp_indes on emp(ename,job );

         缺点:

               占用硬盘和内存 1.2倍

                额外更新索引

                显示索引

                 Select index_name ,index_type formuser_indexes where table_name=’表名’

     管理权限和角色

          查询权限

               Select * from system_privilege_map order byname

               查询某个角色包含哪些权限

               Select * from dba_sys_privs wheregrantee=’DBA’

    以上主要介绍了数据库管理员的职责以及权限,数据库完整性中的添加索引的利弊等管理。这部分尽管每一个开发者都经常使用的到功能。可是作为数据库管理,项目开发的管理人员确实必需要考虑而且做好的一项重要职责。

  • 相关阅读:
    POJMatrix(二维树状数组)
    HD1556Color the ball(树状数组)
    闲的没事,自挂东南枝
    高端、洋气效果
    “绝对”妹纸~position
    float元素一定要闭合
    dw cs6激活码一枚
    shell 预定义变量
    ubuntu 安装docker
    Microsonf visual c++ 14+ 离线内网安装
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/6747442.html
Copyright © 2011-2022 走看看