oracle--dba和表的备份与恢复
数据库管理员
每个oracle数据库应该至少有一名数据库管理员(dba),对于一个小的数据库,一个dba就够了,但是对于一个大的数据库可能需要多个dba分别担负不同的管理职责,那么一个数据库管理员的主要工作是什么呢?
dba的职责:
1、安装和升级oracle数据库
2、建库、表空间、表、视图、索引...
3、制定并实施备份与恢复计划
4、数据库权限管理,调优,故障排除
5、对于高级dba,要求能参与项目开发,会编写sql语句、存储过程、触发器、规则、约束、包
管理数据库的用户主要是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用户登录的,这一点类似linux里面的su的感觉,从登录信息里面我们可以看出来。
sysdba和sysoper权限区别
sysdba和sysoper具体的权限可以看下表:
|
系统权限 |
sysdba |
sysoper |
|
区别 |
startup(启动数据库) |
startup |
|
shutdown(关闭数据库) |
shutdown |
|
|
alter database open/mount/backup |
alter database open/mount/backup |
|
|
改变字符集 |
none |
|
|
create database(创建数据库) |
none不能创建数据库 |
|
|
drop database(删除数据库) |
none |
|
|
create spfile |
create spfile |
|
|
alter database archivelog(归档日志) |
alter database archivelog |
|
|
alter database recover(恢复数据库) |
只能完全恢复,不能执行不完全恢复 |
|
|
拥有restricted session(会话限制) |
拥有restricted session权限 |
|
|
可以让用户作为sys用户连接 |
可以进行一些基本的操作,但不能查看用户数据 |
|
|
登录之后用户是sys |
登录之后用户是public |
dba权限的用户
dba用户是指具有dba角色的数据库用户。特权用户可以执行启动实例,关闭实例等特殊操作,而dba用户只有启动数据库后才能执行各种管理工作。
数据库管理员--管理初始化参数
管理初始化参数
初始化参数用于设置实例或是数据库的特征,oracle10g提供了200多个初始化参数,并且每个初始化参数都有默认值。
显示初始化参数命令
show parameter
如何修改参数
需要说明的如果你希望修改这些初始化的参数,可以到文件:
盘符:\oracle目录\admin\数据库实例\pfile\init.ora文件中去修改。
数据库(表)的逻辑备份与恢复--介绍
逻辑备份是指使用工具export将数据对象的结构和数据导出到文件的过程;
逻辑恢复是指当数据库对象被误操作而损坏后使用工具import利用备份的文件把数据对象导入到数据库的过程。
物理备份即可在数据库open的状态下进行也可在关闭数据库后进行;
但是逻辑备份和恢复只能在open的状态下进行。
原理图(所有数据库一样,只是使用的工具不一样而以。)
数据库(表)的逻辑备份与恢复--导出
导出具体的分为:导出表、导出方案、导出数据库三种方式。
导出使用exp命令来完成的,该命令常用的选项有:
userid:用于指定执行导出操作的用户名、口令、连接字符串;
tables:用于指定执行导出操作的表;
owner:用于指定执行导出操作的方案;
full=y:用于指定执行导出操作的数据库;
inctype:用于指定执行导出操作的增量类型;
rows:用于指定执行导出操作是否要导出表中的数据;
file:用于指定导出文件名。
导出表
1、导出自己的表
exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2,..) file=备份路径
例:exp userid=scott/tiger@orcl tables=(emp,dept) file=d:/scott_emp_dept.dmp
2、导出其它方案的表
如果用户要导出其它方案的表,则需要DBA的权限或是exp_full_database的权限,比如system就可以导出scott的表
exp useris=用户名/密码@数据库实例名 tables=(方案名.表名1,方案名.表名2,..) file=备份路径
例:exp userid=system/orcl@orcl tables=(scott.emp,scott.dept) file=d:/scott_emp_
dept2.dmp
特别说明:备份文件的后缀名一般是.dmp,但是这不是必须的。
3、导出表的结构
exp userid=用户名/密码@数据库实例名 tables(表名1,表名2,..) file=备份路径 rows=n
例:exp userid=system/orcl@orcl tables(scott.emp,scott.dept) file=d:/scott_em
p_dept.demp rows=n
4、使用直接导出方式
exp userid=用户名/密码@数据库实例名 tables(表名1,表名2,..) file=备份路径 direct=y
例:exp userid=system/orcl@orcl tables(scott.emp,scott.dept) file=d:/scott_em
p_dept.demp direct=y
这种方式比默认的常规方式速度要快,当数据量大时,可以考虑使用这样的方法。
这时需要数据库的字符集要与客户端字符集完全一致,否则会报错。
导出方案
导出方案是指使用export工具导出一个方案或是多个方案中的所有对象(表、索引、约束..)和数据,并存放到文件中。
1、导出自己的方案
exp 用户名/密码@数据库实例名 owner=所有者 file=备份路径
例:exp scott/tiger@orcl owner=scott file=d:/scott_owner.dmp
2、导出其它方案
如果用户要导出其它方案,则需要dba的权限或者exp_full_database的权限。例如system用户就可以导出任何方案
exp 用户名/密码@数据库实例名 owner=(所有者1,所有者2,..) file=备份路径
例:exp system/orcl@orcl owner=scott,system file=d:/system_scott_owner.dmp
特别注意:如果用户的权限够大,则可一次性导出多外用户的方案。比如system。
导出完整数据库
需要dba的权限或者exp_full_database的权限。
exp 用户名/密码@数据库实例名 full=y file=备份路径
例:exp system/orcl@orcl full=y file=d:/orcl_full.dmp
导入表
导入自身表
imp 用户名/密码@数据库实例名 file=备份路径 tables=(表名1,表名2,..)
例:imp scott/tiger@orcl file=d:/emp_dept.dmp
特别注意:如果目的地有相同的表,则导入不成功。
导入其它方案的表
需要有dba权限或者imp_full_database的权限。
imp 用户名/密码@数据库实例名 file=备份路径 tables=(表名1,表名2,..) fromuser=方案名 touser=system
例:imp system/orcl@orcl file=d:/scott_emp_dept.demp tables=emp,dept fromuser=scott touser=system
注意:提示成功,但警告,表示此对象有scott导出,而不是当前用户。
导入方案
导入自身方案
imp 用户名/密码@数据库实例名 file=备份路径
例:imp scott/tiger@orcl file=scott_owner.dmp
导入其它方案
需要有dba权限或者imp_full_database权限
imp 用户名/密码@数据库实例名 file=备份路径 fromuser=方案名 touser=system
例:imp system/orcl@orcl file=scott.dmp fromuser=scott touser=system
导入完整数据库
需要有dba权限或者imp_full_database权限
imp 用户名/密码@数据库实例名 file=备份路径 full=y
例:imp system/orcl@orcl file=orcl_full.dmp full=y
oracle--dba和表的备份与恢复的更多相关文章
- dba和表的备份与恢复
每个oracle数据库应该至少有一名数据库管理员(dba),对于一个小的数据库,一个dba就够了,但是对于一个大的数据库可能需要多个dba分别担负不同的管理职责.那么一个数据库管理员的主要工作是什么呢 ...
- oracle DBA 常用表和视图
☆dba_开头..... dba_users 数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 dba_objects 数 ...
- Oracle DBA面试突击题
一份ORACLE DBA面试题 一:SQL tuning 类 1:列举几种表连接方式 答: Oracle的多表连接算法有Nest Loop.Sort Merge和Hash Join三大类,每一类又可以 ...
- Oracle DBA常用查询
Oracle DBA常用查询 –1. 查询系统所有对象select owner, object_name, object_type, created, last_ddl_time, timestamp ...
- Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据
Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据 PRM 全称为ParnassusData Recovery Manager ,由 诗檀软 ...
- oracle学习之表空间
一.oracle当中的dual表 注意:sql语句一定要有一个 : 结尾,不然会报错. Oracle数据库内种特殊表DualDual表Oracle实际存表任何用户均读取用没目标表SelectDual表 ...
- oracle dba 职责, 及个人需要掌握内容
ORACLE DBA 职责, 基本相当于日常工作. 0. 数据库设计 1. 模式对象的创建与管理(table, index 等等) 2. 事物管理, 例如并发等 3. SQL 调优 只是针对SQL的 ...
- Oracle DBA 的常用Unix参考手册(二)
9.AIX下显示CPU数量 # lsdev -C|grep Process|wc -l10.Solaris下显示CPU数量# psrinfo -v|grep "Status of pr ...
- Oracle数据库用户数据完整备份与恢复
使用PLSQL-Developer工具可以快速便捷地完成Oracle数据库用户.表的备份恢复. Oracle数据库用户数据完整备份与恢复 1. 备份 1.1 PL/SQL->工具->导 ...
- (摘)ORACLE DBA的职责
ORACLE数据库管理员应按如下方式对ORACLE数据库系统做定期监控: (1). 每天对ORACLE数据库的运行状态,日志文件,备份情况,数据 库的空间使用情况,系统资源的使用情况进行检查,发现并解 ...
随机推荐
- mkfs -t ext3 错误/dev/sdxx is apparently in use by the system; 解决方法
在存储上共享了一个500G的空间,映射到Linux系统提供上,环境由2个节点组成. 一. 测试一: 直接mount 用fdisk 格式化之后如下: [root@rac1 u01]# fdisk ...
- 芝麻HTTP: Python爬虫利器之PyQuery的用法
前言 你是否觉得 XPath 的用法多少有点晦涩难记呢? 你是否觉得 BeautifulSoup 的语法多少有些悭吝难懂呢? 你是否甚至还在苦苦研究正则表达式却因为少些了一个点而抓狂呢? 你是否已经有 ...
- eclipse和android studio的目录结构分析
不管你喜不喜欢,愿不愿意,自从Google宣布正式停止对于eclipse的支持,要开发android的APP,你都得乖乖的用android studio(以下简称AS)了,不过也不是什么悲伤的故事,对 ...
- 自用公共js文件
// 加载配置文件var instance = axios.create({ baseURL: 'http://zy-shop.tincent.me/Wechat/', headers: { 'Con ...
- pat1101-1110
1101 #include<cmath> #include<map> #include<iostream> #include<cstring> #inc ...
- httpclient案例一(调用识别接口)
public Map<String, Object> pictureRecognition(String recotype, MultipartFile imageFile) { Stri ...
- SQL Server 扩展事件
SQL Server 扩展事件(Extended Event)是用于服务器的常规事件处理系统,是追踪SQL Server系统运行状态的神器,同时也是一个日志记录工具,扩展事件完全可以取代SQL追踪(S ...
- 【洛谷1541】【CJOJ1087】【NOIP2010】乌龟棋
题面 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌 ...
- HAproxy负载均衡
HAproxy 简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy特别适用于那些负载特大的web站点,这 ...
- ------ 开源软件 Tor(洋葱路由器,构建匿名网络的方案之一)源码分析——主程序入口点(二)------
---------------------------------------------------------- 第二部分仅考察下图所示的代码片段--configure_backtrace_han ...