上篇介绍了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:\test\data01.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’

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

Oracle基础(三)数据库管理的更多相关文章

  1. 第三周博客之一---Oracle基础知识

    一.数据库的定义.作用介绍 1.定义:按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库. 2.数据库的发展历史: 2.1.在1962年数据库一词出现在系统研发的公司的技术备忘录中 2. ...

  2. Oracle基础学习2--Oracle登录与三种验证机制

    首先,Oracle安装完毕有三个默认用户 Ø  Sys:数据库对象的拥有者.权限最高.password在安装的时候(口令管理)能够改变 Ø  System:数据库管理员,password为manage ...

  3. Oracle基础 表分区

    Oracle基础 表分区 一.表分区 (一)表分区的分类 1.范围分区(range) 2.散列分区(hash) 3.列表分区(list) 4.复合分区:范围-哈希(range-hash).范围-列表( ...

  4. Oracle基础学习笔记

    Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...

  5. ORACLE| ORACLE基础语法汇总

    创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库]   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  6. Oracle打怪升级之路一【Oracle基础、Oracle查询】

    前言 背景:2021年马上结束了,在年尾由于工作原因接触到一个政府单位比较传统型的项目,数据库用的是Oracle.需要做的事情其实很简单,首先从大约2000多张表中将表结构及数据导入一个共享库中,其次 ...

  7. Oracle基础知识汇总一

    Oracle基础知识 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720759.html oracle工具: SQ ...

  8. Python全栈开发【基础三】

    Python全栈开发[基础三]  本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...

  9. Bootstrap <基础三十二>模态框(Modal)插件

    模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用  ...

  10. Bootstrap <基础三十一>插件概览

    在前面布局组件中所讨论到的组件仅仅是个开始.Bootstrap 自带 12 种 jQuery 插件,扩展了功能,可以给站点添加更多的互动.即使不是一名高级的 JavaScript 开发人员,也可以着手 ...

随机推荐

  1. SQL Server CASE语句中关于Null的处理

    问: 从数据表中选择一个字段“field”,如果“field”值是1或NULL就赋值为1,其它情况为0,该怎么写啊?这样写对不对啊?(CASE fieldWHEN '1' THEN '1'WHEN N ...

  2. java匿名内部类之RocketMQ中的应用

    匿名内部类在spring中没怎么见用,在RocketMQ中有大量的应用. 确实可以提高开发效率.这可能代表两种写代码的态度吧. 匿名内部类简单来说就是直接在函数中实现接口方法,不需要声明一个接口实现类 ...

  3. [转]mysql 常用命令集锦[绝对精华]

    测试环境:mysql 5.0.45 [注:可以在mysql中通过mysql> SELECT VERSION();来查看数据库版本] 一.连接MYSQL. 格式: mysql -h主机地址 -u用 ...

  4. iOS key value coding kvc在接收json数据与 model封装中的使用

    iOS key value coding  kvc在接收json数据与 model封装中的使用 使用 kvc 能够极大的简化代码工作,及以后的接口维护工作: 1:先创建MovieModel类.h和 . ...

  5. vue vue-router 使用注意事项

    1.$router和$route区别 this.$router 访问路由器,实现路由的跳转等功能. this.$route 实现访问当前路由,$route.query (如果 URL 中有查询参数). ...

  6. vscode Gitlens插件 查看代码提交

    GitLens

  7. 尚学堂 hadoop

    mr spark storm 都是分布式计算框架,他们之间不是谁替换谁的问题,是谁适合做什么的问题. mr特点,移动计算,而不移动数据. 把我们的计算程序下发到不同的机器上面运行,但是不移动数据. 每 ...

  8. CSS3使用Animation为同一个元素添加多个动画效果

    本篇文章由:http://xinpure.com/css3-animation-for-the-same-element-multiple-animation-effects/ CSS3 Animat ...

  9. 动态创建 Log4net 实例

    动态创建log4net 实例 根据业务类型,动态的创建日志实例,将日志写到不同目录.常见的配置文件中统一配置,不能满足需求. 引用log4net nuget安装命令: Install-Package ...

  10. 微信公共服务平台开发(.Net 的实现)4-------语音识别

    语音识别这个功能属于高级功能,必须微信实名认证后才能实现,认证费用300元/年,如果你作为开发者可以申请测试帐号,也是可以的.首先建立一个微信消息类,这个类比之前多了一个属性. class wxmes ...