Oracle学习笔记之七(用户管理、角色与权限、导入导出等)
下面这些基本的SQL语句应该熟悉,能够灵活运用。最好在不查资料的情况下,能够写出如下的任何代码。
1. 用户操作
--create user username identified by password
--[default tablespace tablespace_default]
--[temporary tablespace tablespace_temp]
--[profiles profilename]
--[account lock|account unlock] --创建用户
create user df identified by pass1
default tablespace users
temporary tablespace temp; --修改用户配额
alter user df quota 20m on users; --修改用户密码
alter user df identified by pass2; --解锁用户
alter user df account unlock; --删除用户
drop user df cascade; --授权
--grant sys_privi|role to user|role|public with admin option
grant connect to mytest;
grant resource to mytest;
grant dba to mytest;
grant exp_full_database to mytest;
grant imp_full_database to mytest; --回收权限
--revoke sys_privi|role from user|role|public
revoke dba from mytest; --对象授权
--grant obj_privi|all column on schema.object to user|role|public [with grant option]|[with hierarchy option]
grant select,insert,delete,update on BBS.BBSDETAIL to MYTEST; --回收对象授权
--revoke obj_privi|all on schema.object from user|role|public cascade constraints
revoke delete,update,insert,select on BBS.BBSDETAIL from MYTEST;
2. 角色与权限
表1:部分常用预定义角色的权限说明
| 角色名 | 包含权限 |
| CONNECT |
ALTER SESSION CREATE CLUSTER CREATE DATABASE LINK CREATE SEQUENCE CREATE SESSION CREATE SYNONYM CREATE TABLE CREATE VIEW |
|
CREATE CLUSTER CREATE INDEXTYPE CREATE OPERATOR CREATE PROCEDURE CREATE SEQUENCE CREATE TABLE CREATE TRIGGER CREATE TYPE |
|
| DBA | 所有权限,不受限制 |
| EXP_FULL_DATABASE |
SELECT ANY TABLE BACKUP ANY TABLE EXECUTE ANY PROCEDURE EXECUTE ANY TYPE ADMINS RESOURCE MANAGER |
| IMP_FULL_DATABASE |
EXECUTE_CATALOG_ROLE SELECT_CATALOG_ROLE |
3. EXPDP和IMPDP
数据泵导出包括导出表、导出模式、导出表空间和导出全部数据库4种模式。EXPDP工具只能将导出的转储文件存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录。因此,使用EXPDP工具时,必须首先建立DIRECTORY对象,并且需要为数据库用户授予使用使用DIRECTORY对象的权限。
示范:
create directory DUMP_DIR as 'F:\dpdump';
grant read,write on directory DUMP_DIR to MYTEST;
其中,我这里的F盘为移动硬盘,数据库存放目录与DUMP目录不在一个物理盘上,保证了导出与导入的速度。
3.1 EXPDP导出命令
expdp mytest/test001@orcl directory=DUMP_DIR dumpfile=mytest_s.dmp schemas=MYTEST
EXPDP命令参数:
1). CONTENT
该参数用于指定要导出的内容,默认值为ALL,语法如下:
content=[all|data_only|metadata_pnly]
2). QUERY
该参数用于指定过滤导出数据的WHERE条件,语法如下:
query=[schema.][table_name:]query_clause
expdp mytest/test001@orcl directory=DUMP_DIR dumpfile=mytest_s.dmp tables=DEPT query='where DEPTNO=10'
3). DIRECTORY
该参数指定转储文件和日志文件所在的目录,语法如下:
directory=directory_object
4). DUMPFILE
该参数用于指定转储文件的名称,默认名称为expdat.dmp,语法如下:
dumpfile=[directory_object:]file_name[,...]
5). FULL
该参数用于指定数据库模式导出,默认为n,语法如下:
full={y|n}
6). LOGFILE
该参数用于指定导出日志文件的名称,默认名称为export.log,语法如下:
logfile=[directory_object:]file_name
7). STATUS
该参数用于指定显示导出作业进程的详细状态,默认值为0,语法如下:
status=integer
integer用于指定显示导出作业状态的时间间隔,单位为秒。指定该参数后,每隔特定时间间隔会显示作业完成的百分比。
8). TABLES
该参数用于指定表模式导出,语法如下:
tables=[schema.]table_name[:partition_name][,...]
9). TABLESPACE
该参数用于指定要导出表空间列表。
10). COMPRESSION
减少转储文件大小。
有效的关键字值为: ALL, DATA_ONLY, [METADATA_ONLY] 和 NONE。
11). ENCRYPTION
加密某个转储文件的一部分或全部。
有效的关键字值为: ALL, DATA_ONLY, ENCRYPTED_COLUMNS_ONLY, METADATA_ONLY 和 NONE
12). ENCRYPTION_MODE
生成加密密钥的方法。
有效的关键字值为: DUAL, PASSWORD 和 [TRANSPARENT]。
13). ENCRYPTION_PASSWORD
用于在转储文件中创建加密数据的口令密钥。
综合示范(将数据库模式为mytest下面内容导出到mytest_s.dmp文件,压缩,加密):
expdp mytest/test001@orcl compression=ALL directory=DUMP_DIR dumpfile=mytest_s.dmp
encryption=ALL encryption_mode=PASSWORD encryption_password=yourpasshere schemas=MYTES
3.2 IMPDP导入命令
impdp mytest/test001@orcl directory=DUMP_DIR dumpfile=mytest_s.dmp schemas=MYTEST
IMPDP命令参数:
1). REMAP_SCHEMA
将一个方案中的对象加载到另一个方案。语法如下:
remap_schema=source_schema:target_schema
2). REMAP_TABLESPACE
将表空间对象重新映射到另一个表空间。语法如下:
remap_tablespace=source_tablespace:target_tablespace
3). SQLFILE
可以从DMP文件中提取对象的 SQL DDL 语句,写入指定的文件,以便之后使用。
4). TABLE_EXISTS_ACTION
导入对象已存在时执行的操作。
有效的关键字为: APPEND, REPLACE, [SKIP] 和 TRUNCATE。
5). TRANSPORT_DATAFILES
按可传输模式导入的数据文件的列表。示范(向当前数据库中导入test.dbf数据文件):
impdp system/1qaz2wsx directory=DUMP_DIR dumpfile=tran_datafiles.dmp transport_datafile='d:\OracleData\test.dbf'
综合示范(导入加密的文件):
impdp mytest/test001@orcl directory=DUMP_DIR dumpfile=mytest_s.dmp encryption_password=yourpasshere schemas=MYTEST
Oracle学习笔记之七(用户管理、角色与权限、导入导出等)的更多相关文章
- PostgreSQL学习笔记(九) 用户、角色、权限管理
PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数 ...
- mongodb 学习笔记05 --用户管理
csdn的markdown编辑器真有够烂的,这篇文章又给弄丢了 启用认证 mongod 启动默认没有开启权限,你须要指定 –auth 启动.或者在配置文件里设置security.authorizati ...
- 吴裕雄--天生自然ORACLE数据库学习笔记:用户管理与权限分配
create user mr identified by mrsoft default tablespace users temporary tablespace temp; create user ...
- linux —— 学习笔记(用户管理与权限控制)
目录:1.用户的创建和管理 2.组的创建和管理 3.文件执行权限的控制 4.不用密码执行sudo 1.用户的创建和管理 用户的创建和管理: useradd.usermod . userdel . ...
- oracle学习笔记一:用户管理(2)创建删除用户
本文主要介绍如何创建和删除用户,当然里面牵涉很多知识,慢慢道来. 1,创建用户 需求:假设你是oracle管理员,当一个同事入职,你需要分配给一个账号. 创建用户,一般需要有相应权限的用户才可以创建用 ...
- Oracle用户及角色的权限管理[Oracle基础]
1.查看全部用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角 ...
- Oracle学习笔记—数据字典和常用命令(转载)
转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...
- oracle 学习笔记(一)
1. 数据库原理 1.1. 数据库简介 1.1.1. 文件存储 对数据的存储需求一直存在.保存数据的方式,经历了手工管理.文件管理等阶段,直至数据库管理阶段. 文件存储方式保存数据的弊端: 缺乏对数据 ...
- Oracle学习笔记(二)
2.Oracle用户管理 (1)创建用户:create user 用户名 identified by 密码(需要dba权限); sql>create user yzw identified by ...
随机推荐
- Discuz常见大问题-如何允许用户插入视频-如何允许用户在编辑帖子的时候带标签,允许用户插入视频
在用户-用户组中,切换到会员用户组或系统用户组,可以勾选批量编辑前面的方框,然后点击批量编辑 点击论坛相关-帖子相关(默认是基本设置,你可以在这里设置所有用户的所有权限),然后把你要设置允许的用户的组 ...
- ZH奶酪:C语言中malloc()和free()函数解析
1.malloc()和free()的基本介绍 (1)函数原型及说明 void *malloc(long NumBytes) 该函数分配了NumBytes个字节,并返回了指向这块内存的指针.如果分配失败 ...
- 解决pl/sql 查询数据中文显示成?
解决方法: 1.打开 PLSQL Developer 安装目录下,看到有PLSQLDev.exe的目录, 在PLSQL Developer文件夹内新建“PLSql_run.bat”文件,在该文件中输入 ...
- uva 696 - How Many Knights
题目链接:uva 696 - How Many Knights 题目大意:给出一个n * m的网格,计算最多可以放置几个国际象棋中的骑士. 解题思路:分成三类来讨论: 1)min(n, m) == 1 ...
- java面试第十四天
包名.类名和属性可以被序列化,方法和构造器不会被序列化的. 静态属性不会被序列化的. 属性会被递归序列化的,也就是一个类中有引用类型的属性,如果这个属性对应的类实现了Serializable接口,在对 ...
- PHP MySQL 连接数据库
PHP连接MySQL的小实例 <?php /*时间:2014-09-14 *作者:葛崇 *功能:PHP连接MySQL小实例 * */ /* SQL 脚本.直接贴到命令行运行. DROP ...
- faster rcnn测试VOC2012的问题
Traceback (most recent call last): File "./tools/test_net.py", line 90, in test_net(net, i ...
- oracle 建表时显示ORA-00984: 列在此处不允许
oracle 建表时显示ORA-00984: 列在此处不允许 CreationTime--2018年7月19日16点10分 Author:Marydon 1.情景展示 使用plsql建表时,报错 ...
- spring aop的两种写法aspect和advisor
本文转自:https://www.cnblogs.com/leiOOlei/p/3709607.html 首先看个例子,如下 接口代码: package com.lei.demo.aop.schema ...
- JSON 接口如何实现 RSA 非对称加密与签名
代码地址如下:http://www.demodashi.com/demo/14000.html 一.概述 1. 数字签名的作用:保证数据完整性,机密性和发送方角色的不可抵赖性,加密与签字结合时,两套公 ...