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:用户指定执行导出操作员的用户名,口令,链接字符串

Tables:导出操作的表

Owner:导出操作的方法

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

Inctype:导出操作的增量类型

Rows :

Exp userid=scott/[email protected] myoraltables=(emo,dept) file=d:\e1.dmp

导出自己的方案

Exp scott/[email protected] owner= scottfile=d:\scott.dmp

导出其他的方案

Exp system/[email protected]=(system,scott) file=d:\system.dmp

导出数据库

Exp userid=system/[email protected] full=yinctype=complete file =x.dmp

导入自己表

Imp [email protected]tables=(emp) file =d:\xx.dmp

导入表到其他用户

Imp userid =system/[email protected]=(emp) file = d:\xx.demp rows =n

导入数据

Imp userid =scott/[email protected] 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=’用户名’

当前数据库的全称  :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’

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-23 14:16:16

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

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

首先,Oracle安装完毕有三个默认用户 ?  Sys:数据库对象的拥有者.权限最高.password在安装的时候(口令管理)能够改变 ?  System:数据库管理员,password为manager ?  Scott:一个普通用户,password为tiger 再看连接Oracle的三种验证机制 ?  操作系统验证(具体解释见以下) ?  password文件验证 ?  数据库验证 注:前两者适用于系统用户,比方:Sys.System等:最后一个适用于普通用户.比方:Scott. 再看Ora

【转载:Oracle基础知识】Oracle数据库体系结构

先来看张直观的图:                                            oracle 11g 体系结构图 理解Oracle体系结构要充分理解三个概念:数据库(database),数据库实例(instance),会话(session),一定不要把这三个概念弄混. 数据库的概念 (A)    物理存储结构由数据文件.控制文件.重做日志文件组成: 1.       数据文件(datafile) select * from dba_data_files; 数据文件包括存

Oracle基础 数据库备份和恢复

原文:Oracle基础 数据库备份和恢复 一.为什么需要数据备份 造成数据丢失的主要原因: 1.介质故障. 2.用户的错误操作. 3.服务器的彻底崩溃. 4.计算机病毒. 5.不可预料的因素. Oracle中故障类型分为以下4种. 1.语句故障: 执行SQL语句过程发生的逻辑故障可导致语句故障.如果用户编写的SQL语句无效,就会发生语句故障.Oracle可自我修复语句故障,撤销语句产生的而印象,并将控制权交给应用程序. 2.用户进程故障 当用户程序出错而无法访问Oracle数据库时,就会发生用户

Oracle基础知识笔记(11) 建表、更新、查询综合练习

有某个学生运动会比赛信息的数据库,保存了如下的表: 运动员sporter(运动员编号sporterid,运动员姓名name,运动员性别sex,所属系号department) 项目item(项目编号itemid,项目名称itemname,项目比赛地点location) 成绩grade(运动员编号id,项目编号itemid,积分mark) 请用SQL语句完成如下功能: 1.  建表,并在相应字段上增加约束: 定义各个表的主键和外键约束: 运动员的姓名和所属系别不能为空: 积分要第为空值,要么为6,4

Oracle基础及三层分页查询

一.数据库表空间和数据文件 解析:一个数据库下可以开N个表空间,一个表空间可以包含N个数据文件.表空间是逻辑概念. 二.关于listener.ora位置 修改该界面上的数据,会影响指定路径的监听配置文件 D:\app\asus\product\11.2.0\dbhome_2\NETWORK\ADMIN 三.数据库和实例的关系 数据库(database):物理操作系统文件或磁盘(disk)的集合.使用Oracle 10g的自动存储管理(Automatic Storage Management,AS

Oracle的三种高可用集群方案

Oracle的三种高可用集群方案 主要有三种: 1. RAC RAC,  Real Application Clusters 多个Oracle服务器组成一个共享的Cache,而这些Oracle服务器共享一个基于网络的存储.这个系统可以容忍单机/或是多机失败. 不过系统内部的多个节点需要高速网络互连,基本上也就是要全部东西放在在一个机房内,或者说一个数据中心内.如果机房出故障,比如网络不通,那就坏了.所以仅仅用RAC还是满足不了一般互联网公司的重要业务的需要,重要业务需要多机房来容忍单个机房的事故

Python全栈开发【基础三】

Python全栈开发[基础三]  本节内容: 函数(全局与局部变量) 递归 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 1 def 函数名(参数): 2 3 ... 4 函数体 5 ... 6 返回值 函数的定义主要有如下要点: def:表示函数的关键字 函数名:函数的名称,日后根据函数名调用函数 函数体:函数中进行一系列的逻辑计算 参数:为函数体提供数据 返回值:当函数执行完毕后,可以给调用者返回数据. 总结使用函数的好处: 1.减少代码重用 2.保持一致性,易维护

Oracle学习(三):单行函数

1.知识点:可以对照下面的录屏进行阅读 SQL> --字符函数 SQL> --字符串的转换 SQL> select lower('hellO WORld') 转小写,upper('hellO WORld') 转大写,initcap('hello world') 首字母大写 2 from dual; SQL> --substr(a,b) 从a中,第b位开始取,取右边所有的字符 SQL> select substr('Hello World',4) from dual; SQL&

JS基础三

1.delete删除对对象的属性和方法的定义.强制解除对它的引用,将其设置为 undefined delete 运算符不能删除开发者未定义的属性和方法. 2.void 运算符对任何值返回 undefined.该运算符通常用于避免输出不应该输出的值,没有返回值的函数真正返回的都是 undefined. 3.前增量运算符,就是数值上加 1,形式是在变量前放两个加号(++): var iNum = 10; ++iNum; 第二行代码把 iNum 增加到了 11,它实质上等价于: var iNum =

Oracle基础实训

一.Oracle基础SQL练习 班级表:班级编号(主键.标识列).班级名称.班主任.开班日期老师表:老师编号(主键.标识列) .姓名.性别(默认值‘男’).身份证号(必须是18位数字).联系电话学生表:学号(主键.固定五位数字) .班级编号.姓名.性别.出生日期.联系电话.家庭地址成绩表:编号(主键.标识列) .学号.科目名称.分数 1.表格创建 create table();语法 CREATE TABLE [schema.]table (column datatype [DEFAULT exp