精华内容
下载资源
问答
  • exp数据事,设置参数full=y时,需要具有dba权限,若没有此权限,则会提示报错,信息如下:E:\PowerCmd>exp scott/roylau file=c:\s.dmp full=y;Export: Release 11.1.0.6.0 - Production on Sun Apr 18 02:43:...

    在exp数据事,设置参数full=y时,需要具有dba权限,

    若没有此权限,则会提示报错,信息如下:

    E:\PowerCmd>exp scott/roylau file=c:\s.dmp full=y;

    Export: Release 11.1.0.6.0 - Production on Sun Apr 18 02:43:42 2010

    Copyright (c) 1982, 2007, Oracle.  All rights reserved.

    Connected to: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production

    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    EXP-00023: must be a DBA to do Full Database or Tablespace export

    (2)U(sers), or (3)T(ables): (2)U >

    内容提示为必须dba方可去exp整个数据库或表空间

    除此之外,可以通过给用户授予exp_full_database的方式,通过以下语句实现:

    grant exp_full_database to scott;

    system 虽没有sysdba的权限,但拥有dba的权限,所以可以exp整个数据库;

    拓展延伸内容:

    Oracle sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别

    延伸一:sysdba 和sysoper为系统权限,

    Oracle提供哪些系统权限可以通过查看:select name from sys.system_privilege_map

    sys和system用户区别

    1)最重要的区别,存储的数据的重要性不同

    sys所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。

    system用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。

    2)其次的区别,权限的不同

    system用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限。

    sys用户具有“SYSDBA”或者“SYSOPER”系统权限,登陆em也只能用这两个身份,不能用normal。

    以sys用户登陆Oracle,执行select * from V_$PWFILE_USERS;可查询到具有sysdba权限的用户,如:

    SQL> select * from V$PWFILE_USERS;

    USERNAME SYSDBA SYSOPER

    SYS TRUE TRUE

    Sysdba和sysoper两个系统权限区别

    normal 、sysdba、 sysoper有什么区别

    normal 是普通用户

    另外两个,你考察他们所具有的权限就知道了

    sysdba拥有最高的系统权限,登陆后是 sys

    sysoper主要用来启动、关闭数据库,sysoper 登陆后用户是 public

    sysdba和sysoper属于system privilege,也称为administrative privilege,拥有例如数据库开启关闭之类一些系统管理级别的权限sysdba和sysoper具体的权限可以看下表:

    系统权限sysdbasysoper

    区别Startup(启动数据库)startup

    Shutdown(关闭数据库)shutdown

    alter database open/mount/backupalter database open/mount/backup

    改变字符集none

    create database(创建数据库)None不能创建数据库

    drop database(删除数据库)none

    create spfilecreate spfile

    alter database archivelog(归档日志)alter database archivelog

    alter database recover(恢复数据库)只能完全恢复,不能执行不完全恢复

    拥有restricted session(会话限制)权限拥有restricted session权限

    可以让用户作为sys用户连接可以进行一些基本的操作,但不能查看用户数据

    登录之后用户是sys登录之后用户是public

    system如果正常登录,它其实就是一个普通的dba用户,但是如果以as sysdba登录,其结果实际上它是作为sys用户登录的,这一点类似Linux里面的sudo的感觉,从登录信息里面我们可以看出来。因此在as sysdba连接数据库后,创建的对象实际上都是生成在sys中的。其他用户也是一样,如果 as sysdba登录,也是作为sys用户登录的,看以下实验:

    SQL> create user strong identified by strong;

    用户已创建。

    SQL> conn strong/strong@magick as sysdba;

    已连接。

    延伸二:这个地方有一点得强调一下,此情况前提条件是 sqlnet.ora 文件(和tnsnames.ora,listener.ora的路径一致,在我的机子上为:C:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN)中必须有如下设置 SQLNET.AUTHENTICATION_SERVICES= (NTS),即操作系统认证模式

    SQL> show user;

    USER 为 "SYS"

    SQL> create table test(a int);

    表已创建。

    SQL> select owner from dba_tables where table_name='test';

    未选定行 //因为创建表时oracle自动转为大写,所以用小写查的时候是不存在的;

    SQL> select owner from dba_tables where table_name='TEST';

    OWNER

    ------------------------------

    SYS

    dba和sysdba的区别

    dba、sysdba这两个系统角色有什么区别呢

    在说明这一点之前我需要说一下oracle服务的创建过程

    创建实例→·启动实例→·创建数据库(system表空间是必须的)

    启动过程

    实例启动→·装载数据库→·打开数据库

    sysdba,是管理oracle实例的,它的存在不依赖于整个数据库完全启动,只要实例启动了,他就已经存在,以sysdba身份登陆,装载数据库、打开数据库。只有数据库打开了,或者说整个数据库完全启动后,dba角色才有了存在的基础!

    确切的说 sysdba应该为系统权限,dba为一角色

    延伸三:

    oracle中查看用户权限

    1.查看所有用户:

    select * from dba_users;

    select * from all_users;

    select * from user_users;

    2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):

    select * from dba_sys_privs;

    select * from user_sys_privs;

    3.查看角色(只能查看登陆用户拥有的角色)所包含的权限

    sql>select * from role_sys_privs;

    4.查看用户对象权限:

    select * from dba_tab_privs;

    select * from all_tab_privs;

    select * from user_tab_privs;

    5.查看所有角色:

    select * from dba_roles;

    6.查看用户或角色所拥有的角色:

    select * from dba_role_privs;

    select * from user_role_privs;

    7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)

    select * from V$PWFILE_USERS

    注意:

    1、以下语句可以查看Oracle提供的系统权限

    select name from sys.system_privilege_map

    2、查看一个用户的所有系统权限(包含角色的系统权限)

    select privilege from dba_sys_privs where grantee='DATAUSER'

    union

    select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='DATAUSER' );

    展开全文
  • 采用oracle创建用户并授予dba权限  打开plsql 命令窗口 1)创建用户: create user username identified by username;   2)授予dba权限 grant connect,resource,dba to username; 注:username为你注册的...

    采用oracle创建用户并授予dba权限

     打开plsql 命令窗口

    1)创建用户: create user username identified by username;

     

    2)授予dba权限  grant connect,resource,dba to username;

    注:username为你注册的用户名
     

    Oracle数据导入dmp文件可以是“某个用户下的数据库”,也可以是“某张表”,这里以导入数据库为例说明 :

    <方法1:  使用客户端Enterprise Manager Console>

    1.用SYS用户名,以DBA的身份在ie中登入到数据库(ORACLE客户端Enterprise Manager Console)

     

    2.在方案->用户与权限->用户

      新建用户

      同时给该用户授予“角色”:

      CONNECT,DBA,EXP_FULL_DATABASE,IMP_FULL_DATABASE,RESOURCE

      授予系统权限:

      ALTER USER,COMMENT ANY TABLE,CREATE ANY VIEW,CREATESESSION,

      CREATE USER,DELETE ANY TABLE,DROP ANY VIEW,DROP USER,

      UNLIMITED TABLESPACE

     

    3.在命令行下执行:(一定完全按照以下步骤)

    $imp 用户名/口令  回车

    填写导入文件路径:EXPDAT.DMP>c:\a.dmp

    输入插入缓冲区大小:默认不填 回车

    只列出导入文件的内容:   回车

    忽略创建错误:yes

    导入权限:yes

    导入表数据:yes

    导入整个导出文件:yes

    等待……

    成功终止导入,但出现警告。

    例如:

     

    4.打开PLSQL  Developer,用新建的用户名和口令,以normal身份登录

    5.在tables中可以查看导入到表

    6.到此结束(这个问题折腾了一上午)

     

    导出:

    exp username/password@服务名 file=文件路径及文件名

    服务器名的获取:

    1、 先登录conn 用户名/密码

    2、 执行下列sql命令:select name from v$database

    例:我的数据库pcms的用户名和密码都是mmis,服务名为pcms 我要导出到D盘下的pcms.dmp文件,可以这样写:

    exp mmis/mmis@pcms file=d:\pcms.dmp

    SQL> $exp 用户名/密码@服务名 file=路径+文件名

    如下图所示:

     $exp gengjingzhen/********@XE file=d:grains.dmp

     

    大家知道Colb吗?

    CLOB定义

      数据库中的一种保存文件所使用的类型。

      Character Large Object

      SQL 类型 CLOB 在 JavaTM 编程语言中的映射关系。SQL CLOB 是内置类型,它将字符大对象 (Character Large Object) 存储为数据库表某一行中的一个列值。默认情况下,驱动程序使用 SQL locator(CLOB) 实现 Clob 对象,这意味着 CLOB 对象包含一个指向 SQL CLOB 数据的逻辑指针而不是数据本身。Clob 对象在它被创建的事务处理期间有效。

      在一些数据库系统里,也使用Text 作为CLOB的别名,比如SQL Server

    CLOB和BLOB的区别

      CLOB使用CHAR来保存数据。 如:保存XML文档。

      BLOB就是使用二进制保存数据。 如:保存位图。

    JAVA里面对CLOB的操作

      在绝大多数情况下,使用2种方法使用CLOB

      1 相对比较小的,可以用String进行直接操作,把CLOB看成字符串类型即可

      2 如果比较大,可以用 getAsciiStream 或者 getUnicodeStream 以及对应的 setAsciiStream 和 setUnicodeStream 即可

      读取数据

      ResultSet rs = stmt.executeQuery("SELECT TOP 1 * FROM Test1");

      rs.next();

      Reader reader = rs.getCharacterStream(2);

      插入数据

      PreparedStatement pstmt = con.prepareStatement("INSERT INTO test1 (c1_id, c2_vcmax) VALUES (?, ?)");

      pstmt.setInt(1, 1);

      pstmt.setString(2, htmlStr);

      pstmt.executeUpdate();

      更新数据

      Statement stmt = con.createStatement();

      ResultSet rs = stmt.executeQuery("SELECT * FROM test1");

      rs.next();

      Clob clob = rs.getClob(2);

      long pos = clob.position("dog", 1);

      clob.setString(1, "cat", len, 3);

      rs.updateClob(2, clob);

    rs.updateRow();       

    Ok,教程就到这里了,这也是今天额收获。

    展开全文
  • 共三个步骤-- 1 导出某个用户的所有表和数据exp system/manager@TEST file=d:/daochu.dmp owner=zggf-- 2 用sys用户登录后,执行 start E:/xxxx/create_tablespace_and_user.sql 创建表空间和用户,并授予dba权限-- 3...

    共三个步骤

    -- 1 导出某个用户的所有表和数据exp system/manager@TEST file=d:/daochu.dmp owner=zggf

    -- 2 用sys用户登录后,执行 start E:/xxxx/create_tablespace_and_user.sql 创建表空间和用户,并授予dba权限

    -- 3 导入用户必须有dba权限,在导入之前必须创建表空间和用户,执行导入

    imp zggf/zggf@zggf file=F:/ftp/zggf_user.dmp full=y ignore=y

    create_tablespace_and_user.sql 内容如下:

    -- 创建临时表空间 unlimited是不受限制 可以指定大小 如2048M

    create temporary tablespace zggf_temp

    tempfile 'F:/oracle/product/10.1.0/oradata/zggf/tablespace/zggf_temp_tablespace.dbf'

    size 10m

    autoextend on

    next 10m maxsize unlimited

    extent management local;

    -- 创建数据表空间

    create tablespace ZGGF

    logging

    datafile 'F:/oracle/product/10.1.0/oradata/zggf/tablespace/zggf_data_tablespace.dbf'

    size 10m

    autoextend on

    next 10m maxsize unlimited

    extent management local;

    -- 创建用户并使用表空间

    create user zggf identified by zggf

    default tablespace ZGGF

    temporary tablespace zggf_temp;

    -- 授予 dba权限

    grant dba to zggf;

    --退出exit;

    展开全文
  • 本文主要向大家介绍了Oracle数据库之Oracle的用户权限及其管理操作,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。权限执行特定命令或访问数据库对象的权利Oracle的用户权限分两种:1.系统权限:...

    本文主要向大家介绍了Oracle数据库之Oracle的用户权限及其管理操作,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。

    权限

    执行特定命令或访问数据库对象的权利

    Oracle的用户权限分两种:

    1.系统权限:针对系统安全性,执行数据库操作,如登录,创建表表空间。

    2.对象权限:针对数据安全性,对某一特定对象(如表,视图等)执行的特定操作。如分配表的SELECT,UPDATE权限。

    角色

    一组相关权限的组合,可以将权限授予角色,再把角色授予用户,以简化权限管理。

    授权语法

    GRANT 系统权限名 TO 用户名|角色名|PUBLIC

    可以一次性为多用户授权,多个用户有逗号隔开

    常用系统权限

    create session:连接到数据库

    create an procedure:能创建,修改,删除或执行任何存储过程,程序包和函数

    create any table:能在自己的模式中创建,修改,删除或查询任何表

    create table, create view, create type:开发人员需要的权限

    撤销系统权限语法

    REVOKE 系统权限名 FROM 用户名/角色/PUBLIC;

    授予对象权限语法

    GRANT 对象权限名 ON 对象名 TO 用户名|角色|PUBLIC

    常用的权限:

    对象权限  使用对象  允许操作

    SELECT  表,视图,序列  查询

    UPDATE  表,视图或其中的字段  更新操作

    DELETE  表和视图  删除行

    INSERT  表,视图或其中的字段  插入行

    EXECUTE  存储过程,存储行数与程序包  执行PL/SQL,存储对象

    INDEX  表  在表上建立索引

    REFERENCES  表或其中的字段  在其他表中创建的外部键能饮用表或表中的字段

    ALTER  表或序列  修改表或序列的结构

    利用角色进行权限管理

    角色是系统权限和对象权限的一个集合,可以将角色授予用户,被授予角色的用户会自动拥有角色所具有的权限。

    如果修改了角色所拥有的权限,则被授予角色的用户的权限也会随之自动修改。

    预定义角色

    在数据库安装后,系统自动创建的一些常用的角色。

    CONNECT角色:

    主要应用在临时用户,特别是那些不需要建表的用户。

    CONNECT是使用Oracle的简单权限,拥有CONNECT角色的用户,可以与服务器建立连接会话。

    RESOURCE角色:

    应用于更可靠和正式的数据库用户。

    RESOURCE角色提供给用户另外的权限以创建他们自己的表、序列、过程、出发器、索引。

    DBA角色:

    DBA角色拥有所有的系统权限,包括无限制的空间限额和给其他用户授予各种权限的能力。用户SYSTEM拥有DBA角色。

    EXP_FULL_DATABASE角色:

    主要用于数据库的逻辑备份工具export

    IMP_FULL_DATABASE角色:

    主要用于数据库的逻辑备份工具import

    角色授予语法

    GRANT 角色名 TO 用户名;

    查看用户信息

    SELECT  FROM DBA_USERS;

    SELECT  FROM ALL_USERS;

    SELECT * FROM USER_USERS;

    查看所有角色信息

    SELECT * FRIM dba_roles;

    自定义角色

    CREATE ROLE 角色名;

    给角色授权

    GRANT 权限 TO 角色名;

    使用角色授权

    GRANT 角色名 TO 用户名;

    数据库默认的概要文件

    口令管理

    账户锁定

    FAILED_LOGIN_ATTEMPTS  锁定账户前登录失败的次数

    PASSWORD_LOCK_TIME  达到制定的登录失败次数后,锁定的天数

    终止口令

    PASSWORD_LIFE_TIME  口令的有效时间,天为单位,超过后必须重新设置口令

    PASSWORD_GRACE_TIME  口令失效后从第一次唱功登录算起的更改口令的宽限期

    口令历史

    PASSWORD_REUSE_TIME 一个失效口令要经过多少天,用户才可以重新使用该口令

    PASSWORD_REUSE_MAX  可以重新使用口令的最多次数

    口令检验

    PASSWORD_VERIFY_FUNCTION  PL/SQL函数,可在分配口令前检查口令复杂性

    资源限制

    限制会话资源

    CUP_PER_SESSION  每个会话可占用CPU时间达到限制之后,用户就不能在会话中执行任何操作了,必须重新建立连接。

    SESSIONS_PER_USER  每个用户的最大并发数

    CONNECT_TIME  会话的最大连接时间

    IDLE_TIME  会话的最大空闲时间

    LOGICAL_READS_PER_SESSION

    本文由职坐标整理并发布,希望对同学们学习Oracle有所帮助,更多内容请关注职坐标数据库Oracle数据库频道!

    展开全文
  • ORACLE使用EXP导出dmp文件注意事项

    万次阅读 2018-01-20 13:25:24
    Oracle 中用 imp 和 exp 命令导入导出数据库(附问题及解决办法) 用 imp 和 exp 命令导入导出数据库 (转自:http://blog.csdn.net/dong001687/article/details/73064843,尊重原创,本人备忘) 注: 在splplus...
  • 这里将介绍Oracle修改用户权限的实现过程,包括一些权限管理方面的东西。希望通过本文能对大家...2. 1 ORACLE数据库安全策略建立系统级的安全保证系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特...
  • OracleExp、Imp(二)

    2013-03-01 14:27:12
    Oracle中的Exp和Imp在使用中是最多的,它支持从一个表空间导入到另外一个表空间,具体的实现如下: 1、利用操作系统认证连接Oracle数据库 [oracle@localhost ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2....
  • oracle使用exp/imp导入导出(用户)

    万次阅读 2014-12-19 15:46:36
    如果本机nxgy用户已经存在(数据没用,可以删除),级联删除用户所有对象 ...使用exp命令,逐步根据提示操作(因为导出用户,用该用户登录即可),在填写完导出文件路径后,选择U(即(2)U(用户)可以导出用户的所
  • 一、用户与模式用户:对数据库的访问,需要以适当用户身份通过验证,并具有相关权限来完成一系列动作SYS用户,缺省始终创建,且未被锁定,拥有数据字典及其关联的所有对象SYSTEM用户,缺省始终创建,且未被锁定,...
  • 除非你对它授予了sysdba的系统权限或者syspoer系统权限。sys用户具有“SYSDBA”或者“SYSOPER”权限,登陆em也只能用这两个身份,不能用normal。--最重要的区别,存储的数据的重要性不同sys所有oracle的数据字典的...
  • Oracle的对象权限、角色权限、系统权限 一、用户与模式 用户:对数据库的访问,需要以适当用户身份通过验证,并具有相关权限来...
  • create user username identified by password default tablespace users quota unli mited on users; GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW , ... DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FU...
  • Oracle exp/imp

    2018-11-07 14:23:00
    Oracle exp/imp:三思笔记 Export/import导出导入数据 进行数据迁移,具备跨版本,跨平台,跨字符集的数据迁移, 1 exp Cmd 》exp,imp,文件保存在执行该命令的机器上。 1.1示例 Exp导出中,可以先获得客户端...
  • 给用户增加导入数据权限的操作 第一,启动sql*puls 第二,以system/manager登陆 第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以...CREATE ANY VIEW , DROP ANY VIEW,EXP_FULL_DATABASE...
  •  例2-1: (授权) 给左右邻近同学(用户)授予在表Student上的SELECT权限,并使这两个用户具有给其他用户授予相同权限权限。  例2-2: (授权) 给邻近同学(用户)授予Teach表上的所有权限。  例2-3: ...
  • Oracle 用户和权限

    2017-04-27 15:22:45
    Oracle 用户和权限  Oracle中,一般不会轻易在一个服务器上创建多个数据库,在一个数据库中,不同的项目由不同的用户访问,每一个用户拥有自身创建的数据库对象,因此用户的概念在oracle中非常重要。 用户管理 ...
  • Oracle查询用户权限

    2019-09-27 03:26:13
    Oracle查询用户权限 -- 确定角色的权限select * from role_tab_privs ; 包含了授予角色的对象权限select * from role_role_privs ; 包含了授予另一角色的角色select * from role_sys_privs ; 包含了授予角色的系统...
  • ORACLE数据库用户与权限管理ORACLE是多用户系统,它允许许多用户共享系统资源。为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。2. 1 ORACLE数据库安全策略建立系统级的安全保证...
  • ORACLE EXP/IMP

    2013-02-24 16:33:31
    Oracle 的导出导入是一个很常用的迁移工具。 在Oracle 10g中,Oracle 推出了数据泵(expdp/impdp). 它可以通过使用并行,从而在效率上要比exp/imp 要高。... 在Oracle 10g和11g的官方文档里没有搜到有关exp/im
  • ORACLE EXP/IMP 说明

    2013-11-17 23:46:09
       Oracle 的导出导入是一个很常用的迁移工具。 在Oracle 10g中,Oracle 推出了数据泵(expdp/impdp). 它可以通过使用并行,从而在效率上要比exp/imp 要高。  在Oracle 10g和11g的
  • Oracle基本操作(登陆、用户、表空间、exp/imp、权限) 1. 登陆 (在windows上CMD下执行) 1.1. 登陆sys帐户 SQLPLUS sys AS SYSDBA 1.2. 登陆普通用户 SQLPLUS 用户名/密码 SQLPLUS 用户名/密码@111.111.111.111:...
  • oracle权限

    2016-03-29 09:01:00
    oracle权限 Oracle 权限权限允许用户访问...这些权限可以授予给用户、特殊用户public或角色,如果授予一个权限给特殊用户"Public"(用户public是oracle预定义的,每个用户享有这个用户享有的权限),...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,960
精华内容 1,984
关键字:

oracle授予exp权限