文档视界 最新最全的文档下载
当前位置:文档视界 › Oracle12C用户创建与表空间分配

Oracle12C用户创建与表空间分配

Oracle12C用户创建与表空间分配
Oracle12C用户创建与表空间分配

Oracle 12C用户创建与表空间分配

数据库安装完成后,首先用系统用户链接数据库容器(CDB),

在数据库容器(CDB)中创建表空间‘imei’

SQL>create tablespace iemi datafile'E:\Oracle_DB\ cdb_iemi.dbf'size 10240m autoextend on next 200m;

表空间已创建。

接下来在Oracle 12C数据库中创建用户时会报ORA-65096错误。SQL> create user imei identified by imei default tablespace imei temporary tablespace imei_temp;

*

ERROR at line 1:

ORA-65096: invalid common user or role name

ORA-65096:公用用户名或角色名无效

以前没见过这个错误,通用用户(common user)是什么?之前的版本可是没这概念啊,上网搜索看到了下面的图片,原来和common user 对应的还有local user。

这个common user 和local user是和oracle 12c的新特性pluggable database(PDB)有关。在PDB中创建的用户就是local user。从上图可以看出,common user必须以大写或小写的c##开头,尝试建立以c##开头的common user。

SQL> create user c##imei identified by imei default tablespace imei temporary tablespace imei_temp;;

User created.

SQL> grant dba to c##imei;

Grant succeeded.

每个PDB都是独立的单元,有自己的用户(local user)、表空间、数据文件,每个local user只能访问自己的PDB,而common user只要权限足够,可以访问任意PDB。

Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB)。CDB全称为Container Database,中文翻译为数据库容器,PDB全称为Pluggable Database,即可插拔数据库。在ORACLE 12C之前,实例与数据库是一对一或多对一关系(RAC):即一个实例只能与一个数据库相关联,数据库可以被多个实例所加载。而实例与数据库不可能是一对多的关系。当进入ORACLE 12C后,实例与数据库可以是一对多的关系。下面是官方文档关于CDB与PDB的关系图。

CDB组件(Components of a CDB)

一个CDB数据库容器包含了下面一些组件:

ROOT组件

ROOT又叫CDB$ROOT, 存储着ORACLE提供的元数据和Common User,元数据的一个例子是ORACLE提供的PL/SQL包的源代码,Common User 是指在每个容器中都存在的用户。

SEED组件

Seed又叫PDB$SEED,这个是你创建PDBS数据库的模板,你不能在Seed中添加或修改一个对象。一个CDB中有且只能有一个Seed.

PDBS

CDB中可以有一个或多个PDBS,PDBS向后兼容,可以像以前在数据库中那样操作PDBS,这里指大多数常规操作。

这些组件中的每一个都可以被称为一个容器。因此,ROOT(根)是一个容器,Seed(种子)是一个容器,每个PDB是一个容器。每个容器在CDB中都有一个独一无二的的ID和名称。

用户名改好了,我们再次执行创建用户的语句

SQL> create user imei identified by imei default tablespace imei temporary tablespace imei_temp;

*

第一行出现错误:

ORA-65048: 在可插入数据库PDBORCL中处理当前DDL语句时出错ORA-00959: 表空间’imei’不存在

再上网查询,得知CDB容器数据库创建新用户并分配表空间时必须在没有PDB的情况下进行或PDB与CDB有相同表空间的时候进行,否则

会报错。如果是在PDB与CDB有相同表空间的情况下给CDB用户分配表空间,则会分配CDB的表空间给用户PDB的表空间并不受影响。首先看第一种情况,是在没有PDB的情况下创建用户“C##imei”并分配表空间(系统自带的表空间)。

SQL> create user imei identified by imei default tablespace SYSTEM temporary tablespace TEMP;

用户已创建。

SQL>grant dba to c##imei;

授权成功。

下来看第二种:

先用系统用户链接数据库容器(CDB),切换到PDB。

SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;

CON_ID DBID

NAME OPEN_MODE ---------- ---------- ------------------------------

----------

2 4048821679

PDB$SEED READ ONLY

3 3313918585

PDBORCL MOUNTED SQL> alter PLUGGABLE database PDBORCL open;

Pluggable database 已启动.

SQL> alter session set container=PDBORCL;

会话已更改。

SQL> show con_name;

CON_NAME

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

PDBORCL

SQL>create tablespace iemi datafile'E:\Oracle_DB\ pdb_iemi.dbf'size 10240m autoextend on next 200m;

表空间已创建。

再次用系统用户链接数据库容器(CDB),执行创建用户语句

create user c##imei2 identified by imei default tablespace imei temporary tablespace imei_temp;

用户已创建。

SQL>grant dba to c##imei2;

基础概念:Oracle数据库、实例、用户、表空间、表之间的关系

基础概念:Oracle数据库、实例、用户、表空间、表之间的关系 数据库: Oracle数据库是数据的物理存储。这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。其实Oracle数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是Oracle就只有一个大数据库。 实例: 一个Oracle实例(Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。一个数据库可以有n个实例。 用户: 用户是在实例下建立的。不同实例可以建相同名字的用户。 表空间: 表空间是一个用来管理数据存储逻辑概念,表空间只是和数据文件(ORA或者DBF文件)发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。 数据文件(dbf、ora): 数据文件是数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。 注: 表的数据,是有用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。由于oracle的数据库不是普通的概念,oracle是有用户和表空间对数据进行管理和存放的。但是表不是有表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表!这里区分就是用户了! 关系示意图:

创建临时表空间(精)

/创建临时表空间 create temporary tablespace test_temp tempfile 'E:\oracle\product\10.2.0\oradata\testserver\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; //创建数据表空间 create tablespace test_data logging datafile 'E:\oracle\product\10.2.0\oradata\testserver\test_data01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; //创建用户并指定表空间 create user testserver_user identified by testserver_user default tablespace test_data temporary tablespace test_temp; //给用户授予权限 grant connect,resource to testserver_user; (db2:指定所有权限) 导入导出命令: Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于在oracle 8i 中安装目录ora81BIN被设置为全局路径, 该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。 SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。 下面介绍的是导入导出的实例。 数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中 exp system/manager@TEST file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:daochu.dmp owner=(system,sys) 3 将数据库中的表inner_notify、notify_staff_relat导出 exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出

oracle创建用户及权限说明文档

Oraclec创建用户 一、命令行创建用户具体步骤如下: 1.以管理员身份登录系统并创建一个新的表空间,操作如下: 操作如下: 2. Next 5M maxsize 100M ;----每次扩大5M,但最大为100M

3. Temporary tablespace test1_temp; ----设置临时表空间为test1_temp 4. 操作如下 5. 操作如下 6.最后提交即可。Commit 二、表空间的增删改查 1. 2. 如下操作,其中标示出来的路径即为查询到的要更改的表空间的具体路径,将该路径加到语句2中的单引号处即可。

3. 4.

四、权限的设置 1.权限的分类: 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 2.系统权限管理 DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。 RESOURCE: 拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。 CONNECT: 拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。 对于普通用户:授予connect, resource权限。 对于DBA管理用户:授予connect,resource, dba权限。 3.系统权限授权命令及用户管理。 [系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)] 授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...; [普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys 用户相同的权限,system用户的权限也可以被回收。] 例: SQL> connect system/manager SQL> Create user user50 identified by user50; SQL> grant connect, resource to user50; 查询用户拥有哪里权限: SQL> select * from dba_role_privs; SQL> select * from dba_sys_privs; SQL> select * from role_sys_privs; 删除用户:SQL> drop user 用户名cascade; //加上cascade则将用户连同其创建的东西全部删除。 4.给新建的用户分配只有连接以及对某些表和视图的查询权限: oracle授权对视图的查询.docx 5.用户管理: 1)、创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_ATTEMPTS 3 //指定锁定用户的登录失败次数 PASSWORD_LOCK_TIME 5 //指定用户被锁定天数 PASSWORD_LIFE_TIME 30 //指定口令可用天数 2)、创建用户 SQL> Create User username Identified by password Default Tablespace tablespace Temporary Tablespace tablespace Profile profile Quota integer/unlimited on tablespace; 6.用户密码过期问题: 首先,查看系统中有哪些用户:

Oracle tablespace创建参数

Oracle tablespace创建参数 ORACLE中,表空间是数据管理的基本方法,所有用户的对象要存放在表空间中,也就是用户有空间的使用权,才能创建用户对象.否则是不充许创建对象,因为就是想创建对象,如表,索引等,也没有地方存放,Oracle会提示:没有存储配额.因此,在创建对象之前,首先要分配存储空间. 分配存储,就要创建表空间: 创建表空间示例如下: CREATE TABLESPACE "SAMPLE" LOGGING DATAFILE 'D:\ORACLE\ORADATA\ORA92\LUNTAN.ora' SIZE 5M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO 上面的语句分以下几部分: 第一: CREATE TABLESPACE "SAMPLE" 创建一个名为 "SAMPLE" 的表空间. 对表空间的命名,遵守Oracle 的命名规范就可了. ORACLE可以创建的表空间有三种类型: (1)TEMPORARY: 临时表空间,用于临时数据的存放; 创建临时表空间的语法如下: CREATE TEMPORARY TABLESPACE "SAMPLE"...... (2)UNDO : 还原表空间. 用于存入重做日志文件. 创建还原表空间的语法如下: CREATE UNDO TABLESPACE "SAMPLE"...... (3)用户表空间: 最重要,也是用于存放用户数据表空间 可以直接写成: CREATE TABLESPACE "SAMPLE" TEMPORARY 和 UNDO 表空间是ORACLE 管理的特殊的表空间.只用于存放系统相关数据. 第二: LOGGING 有 NOLOGGING 和 LOGGING 两个选项, NOLOGGING: 创建表空间时,不创建重做日志. LOGGING 和NOLOGGING正好相反, 就是在创建表空间时生成重做日志. 用NOLOGGING时,好处在于创建时不用生成日志,这样表空间的创建较快,但是没能日志,数据丢失后,不能恢复,但是一般我们在创建表空间时,是没有数据的,按通常的做法,是建完表空间,并导入数据后,是要对数据做备份的,所以通常不需要表空间的创建日志,因此,在创建表空间时,选择NOLOGGING,以加快表空间的创建速度. 第三: DATAFILE 用于指定数据文件的具体位置和大小. 如: DATAFILE 'D:\ORACLE\ORADATA\ORA92\LUNTAN.ora' SIZE 5M

linux下创建oracle用户表空间

linux下创建oracle用户表空间 就是在已有的数据库实例上创建一个新的帐号,访问一些新的表 操作步骤如下: 1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户) 2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba" 3、查看我们常规将用户表空间放置位置:执行如下sql: select name from v$datafile; 上边的sql一般就将你的用户表空间文件位置查出来了。 4、创建用户表空间: CREATE TABLESPACE NOTIFYDB DATAFILE '/oracle/oradata/test/notifydb.dbf' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; 5、创建用户,指定密码和上边创建的用户表空间 CREATE USER hc_notify IDENTIFIED BY hc_password DEFAULT TABLESPACE NOTIFYDB; 6、赋予权限 grant connect,resource to hc_notify; grant unlimited tablespace to hc_notify; grant create database link to hc_notify; grant select any sequence,create materialized view to hc_notify; 经过以上操作,我们就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了 续: 创建临时表空间: create temporary tablespace test_temp tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf' size 32m autoextend on

Oracle 创建用户

Oracle 创建用户 创建一个新的数据库用户是使用CREATE USER 语句完成的,该语句一般是由DBA 用户来执行;如果要以其他用户身份创建用户,则要求用户必须具有CREATE USDER 系统权限。 每个用户在连接到数据库时,都需要进行身份验证。身份验证可以通过操作系统进行,也可以通过数据库进行,或者通过独立的网络服务器进行。数据库验证是指使用数据库来检查用户、密码以及连接用户的身份,该方式也是最常用的用户验证方式,因此本书重点介绍数据库验证方式。采用数据库验证具有如下优点: ● 用户账号及其身份验证全部由数据库控制,不需要借助数据库外的任何控制。 ● 当使用数据库验证时,Oracle 提供了严格的密码管理机制,加强了密码的安全性。 如果使用数据库验证,则创建用户时必须提供连接密码,并且密码必须是单字节字符。例如,下面的语句创建了一个用户ATG ,并为该用户指定了登录密码、默认表空间、临时表空间: SQL> connect system/password 已连接。 SQL> create user developer 2 identified by developer 3 default tablespace user01 4 quota 10m on user01 5 temporary tablespace temp; 用户已创建。 在上面的语句中,创建了一个名为DEVELOPER 的用户。其中,子句IDENTIFIED BY 指定用户密码,该密码是用户的初始密码,在用户登录到数据库后可以对其进行修改。DEFAULT TABLESPACE 子句为用户指定默认表空间,这样在建立数据库对象(表、索引和簇)时,如果不指定TABLESPACE 子句,Oracle 会自动在默认表空间上为这些对象分配空间。TEMPORARY TABLESPACE 子句用于为用户指定临时表空间,当用户所执行的SQL 语句需要进行排序操作时,若临时数据尺寸超过PGA 工作区,则会在该表空间上建立临时段。QUOTA 子句为用户指定表空间配额,即用户对象在表空间上可占用的最大空间。 在创建用户时需要注意,Oracle 不允许使用其他类型的表空间作为临时表空间使用,同样,也不允许使用临时表空间作为默认表空间。否则会出现如下所示的错误: SQL> create user developer02 2 identified by developer 3 default tablespace USER01 4 quota 128m on users 5 temporary tablespace USERS; create user atg02 注 意 使用过Oracle 10g 以及早期版本的用户需要注意,11g 中的用户密码是区分大小的。

Oracle如何创建表空间-2012年5月1日

oracle创建表空间 SYS用户在CMD下以DBA身份登陆: 打开黑窗口 在CMD中打sqlplus /no log 然后再 conn / as sysdba // 分为四步 //第1步:创建临时表空间,路径自己换 create temporary tablespace user_temp tempfile 'E:\AProgramMy\Oracle11g\tablespace\user_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; //第2步:创建数据表空间,路径自己换 create tablespace user_data logging datafile 'E:\AProgramMy\Oracle11g\tablespace\user_data.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; (删除表空间: DROP TABLESPACE user_data INCLUDING CONTENTS AND DATAFILES; )

//第3步:创建用户并指定表空间 create user yzk identified by yzk default tablespace user_data temporary tablespace user_temp; (删除用户: drop user yzk cascade; ) //第4步:给用户授予权限,没有create sessio n权限就不能登录! grant connect,resource,create sessio n,create table to yzk; (撤销权限: revoke connect,resource,create session,create table from yzk; ) 查看已创建的表空间:select tablespace_name,status from dba_tablespaces; 这样就可以用此用户登录了,登录后是没有表的(如果管理员登录会有很多乱七八糟的表看着十分不爽,都不知道哪个是自己创建的)因为用户和表空间都是新的所以什么也没,此时就可以新建表了,终于解决了我的疑问,爽! --------------------------------------------------------------------------------- //以后以该用户登录,创建的任何数据库对象都属于user_temp 和user_data 表空间, 这就不用在每创建一个对象给其指定表空间了 查看创建的表空间的名称和状态: select tablespace_name,status from dba_tablespaces; 撤权: revoke 权限... from 用户名; 删除用户命令 drop user user_name cascade; 删除表空间 DROP TABLESPACE data01 INCLUDING CONTENTS AND

NC57创建用户、表空间、授权sql语句实例

NC57创建表空间和用户、授权实例 创建表空间6个 create tablespace nnc_index01 datafile'E:\app\Administrator\oradata\NC57\nnc_index01.dbf' size 500m autoextend on next 50m extent management local uniform size 128k; create tablespace nnc_index02 datafile'E:\app\Administrator\oradata\NC57\nnc_index02.dbf' size 500m autoextend on next 50m extent management local uniform size 128k; create tablespace nnc_index03 datafile'E:\app\Administrator\oradata\NC57\nnc_index03.dbf' size 500m autoextend on next 50m extent management local uniform size 128k; create tablespace nnc_data01 datafile'E:\app\Administrator\oradata\NC57\nnc_data01.dbf' size 500m autoextend on next 50m extent management local uniform size 256k; create tablespace nnc_data02 datafile'E:\app\Administrator\oradata\NC57\nnc_data02.dbf' size 500m autoextend on next 50m extent management local uniform size 256k; create tablespace nnc_data03 datafile'E:\app\Administrator\oradata\NC57\nnc_data03.dbf' size 500m autoextend on next 50m extent management local uniform size 256k; 创建用户及授权 create user nc57 identified by nc57 default tablespace nnc_data01 temporary tablespace temp grant connect,dba to nc57; 删除表空间 drop tablespace csmbus including contents cascade constraints;

如何在Linux下创建oracle数据库的表空间和用户

如何在Linux下创建oracle数据库的表空间和用户 数据库实例名:db_for_ck 用户名:ck 密码:ck123456 一、使用:secureCRT 工具连接到到Linu操作系统 二、了解一些linux常用命令 1、\cd /返回根目录 2、ls 查看当前目录下的内容 3、ls -al 是查看当前目录下当前用户的操作权限 4、cd database 进到database目录 5、mkdir db_for_ck 创建db_for_ck目录 6、lsnrctl start 启动Oracle监听器 7、lsnrctl status 检查监听器状态 8、sqlplus / as sysdba 打开SQL语句输入 三、创建表空间 secureCRT 连接10.10.1.66 oracle/redpass#66 lsnrctl start sqlplus / as sysdba 或PL/SQL连接数据库 1、创建临时表空间 CREATE TEMPORARY TABLESPACE db_for_ck_temp TEMPFILE '/home/oracle/database/db_for_ck/db_for_ck_temp01.dbf' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; 2、创建用户表空间 CREATE TABLESPACE db_for_ck_data LOGGING DA TAFILE '/home/oracle/database/db_for_ck/db_for_ck_data01.dbf' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; 3、创建用户并指定表空间

Oracle 11g表空间——创建和扩展(永久)表空间

Oracle 11g表空间——创建和扩展(永久)表空间 本文内容 创建(永久)表空间 查看表空间 扩展表空间 创建(永久)表空间 Oracle 按照区和段空间进行管理表空间。 区管理方式 - 针对区的分配方式的不同,有两种方式:字典管理方式 (dictionary-managed tablespace,DMT)和本地管理方式(local-managed tablespace,LMT)。Oracle 10g 开始强烈建议使用 LMT 方式。从 Oracle 9i 开始,创建表空间时默认使用 LMT。 其中,LMT 区的分配方式: 统一(UNIFORM)- 统一分配。指定表空间中所有区的大小都相同。默认值是 1MB。自动(AUTOALLOCATE 或 SYSTEM)- 自动分配。指定有 Oracle 系统来自动管理区的大小。这是默认设置。 段管理方式– LMT 方式,除了可以指定区的分配方式外,还可以指定段的管理方式。段空间管理方式主要是指 Oracle 用来管理段中已用数据块和空闲数据块的机制。分为两种: 手动(MANUAL)- Oracle 将使用空闲列表(free list)管理段的已用数据块和空闲数据块。这是传统的段空间管理方式,为了与以前的版本兼容。 自动(AUTO)- Oracle 将使用位图(bitmap)来管理段的已用数据块和空闲数据块。通过位图中单元的取值判断段中的数据块是否可用。 字典管理方式没有段管理。 下面示例演示用本地管理方式创建表空间。这是 Oracle 推荐的方式。 示例 1:使用 AUTOALLOCATE 区分配方式。创建表空间 mytbs01,数据文件是 D:\oracledata\mytbs01_1.dbf,大小为 2M,并指定区分配方式为 AUTOALLOCATE。create tablespace mytbs01 datafile 'D:\oracledata\mytbs01_1.dbf' size 2M

EDB用户创建流程

EDB数据库创建用户流程 1.创建用户 创建用户mu并指定用户。 CREATE USER mu PASSWORD '***' ; 2.创建表空间 创建表空间的同时可以指定表空间的所有者。 创建表空间 CREATE TABLESPACE mu_dat owner mu LOCATION '/opt/app/edbdata/mu_dat'; 注: 1.表空间的目录不能为空,并且拥有enterprisedb用户的读写权限。 2.创建表空间的用户具有superuser的权限。 3.创建对象时要加上tablespace xxx 来指定数据存储的位置。 3.创建数据库 创建数据库指定属主为mu,字符集和最大连接数等信息。 CREATE DATABASE mu WITH OWNER = mu ENCODING = 'UTF8' TEMPLATE = template0 TABLESPACE = mu_dat LC_COLLATE = 'en_US.utf8' LC_CTYPE = 'en_US.utf8' CONNECTION LIMIT = -1; 4.创建模式 创建mu模式以及拥有该模式的用户名,只有superuser才可以指定非自身的拥有者,其它用户建立的模式默认拥有者为自身。 登录mu数据库 ./psql -d mu -U enterprisedb 创建模式 CREATE SCHEMA mu AUTHORIZATION mu; 注:

在postgres数据库中最好建立一个和用户(mu)同名的模式,这样用该用户建立的对象会默认存在同名的模式下,否则会存在public模式下面。 5.创建角色 CREATE ROLE r_selmu; CREATE ROLE r_updmu; 6.创建维护账户并赋予权限 CREATE USER p_yaohy PASSWORD 'yaohy'; 赋予用户权限: GRANT usage ON SCHEMA mu TO p_yaohy; GRANT r_selmu TO p_yaohy; GRANT r_updmu TO p_yaohy; 注: 需要对维护账户赋予usage权限,用来访问mu模式。 7.导入数据并调整权限 指定目标库,导入文件,导入所用用户,数据库端口信息,其中mu.sql是由pg_dump导出的: ./psql -d mu -f /enterprise/control/mu.sql -U enterprisedb -p 5445 修改表和序列对象的owner和schema: alter table t1 owner to mu; alter table t1 set schema mu; 赋予对应表的权限给维护用户,序列只赋予查询权限即可: GRANT select ON mu.t TO r_selmu; GRANT insert,update,delete ON mu.t TO r_updmu; 对数据库进行vacuum和分析: -bash-4.1$ ./psql -d mu -U enterprisedb -c vacuum -bash-4.1$ ./psql -d mu -U enterprisedb -c analyze

oracle 创建删除用户、角色、表空间和导入导出数据

Oracle 创建删除用户、角色、表空间、导入导出数据库总结 创建新的用户必须以system 或者sysman( 这二者的权限最大) 的身份登录后才可创建,创建用户前须先建好临时表空间和数据表空间两个表空间。 1、创建临时表空间 create temporary tablespace nimeng_temp tempfile D:/oracle/oradata/neusoft/nimeng_temp.dbf' size 100 m autoextend on next 32 m maxsize 2048 m extent management local ; 说明: 1 、nimeng_temp 表空间的名字 2 、D:/oracle/oradata 存放数据库文件的地方,一般是安装数据库后有控制文件,数据文件和日志文件的文件夹, 再加上要创建表空间的名字+dbf( 数据文件) 3 、100M 表空间的初始大小 4 、32M 表空间自动增长的大小 5 、2048M 表空间最大的大小 2、创建数据表空间 create tablespace nimeng logging datafile 'D:/oracle/oradata/neusoft/nimeng.dbf'' size 100 m autoextend on next 32 m maxsize 2048 m extent management local ; 3、创建用户:create user 用户名identified by 密码 例如:create user nim identified by nim ; 创建完成后,必须分配权限,否则连不上数据库和sqlplus 。 4、分配权限:grant connect,resource,dba to nim ; 这样数据库就可以通过nim / nim 连上了。那些select, update ,delete,insert 的权限就不必分配了,因为每个用户默认都有这些基本权限。 5、创建用户并指定表空间 create user zfmi identified by zfmi default tablespace zfmi temporary tablespace zfmi_temp; 完成。 6、删除用户以及用户所有的对象 drop user zfmi cascade; cascade 参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数 删除oracle 用户nim 出现下面的错误: SQL> drop user nim cascade; drop user nim cascade * ERROR 位于第1 行: ORA-00604: 递归SQL 层1 出现错误 ORA-24005: 必须使用DBMS_AQADM.DROP_QUEUE_TABLE 删除队列表 处理方式:先执行这条语句:alter session set events'10851 trace name context forever,level 2';

表空间创建与删除完整步骤

Oracle 10g表空间创建的完整步骤 当在数据库中创建用户时,基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间。 1.创建表空间 不论是Lnux环境,还是Wndows环境,都要首先创建好表空间的存放路径,根据自己的情况修改。如: /opt/oracle/oradata/cocis 或D:\oracle\oradata\cocis 若事先不创建该目录路径,则在创建表空间的时候会出错。 通过pl/sql登录到Oracle数据库上,然后执行菜单:文件/新建/命令窗口,打开一个命令窗口然后在该命令窗口中执行脚本创建和删除表空间 引用 创建表空间 Sql>create tablespace histdb datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' size 200m autoextend on next 10m maxsize unlimited; Sql>alter database datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' autoextend on; 1) DATAFILE: 表空间数据文件存放路径 2) SIZE: 起初设置为200M 3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k 4) 空间名称histdb 与数据文件名称histdb.dbf 不要求相同,可随意命名. 5) AUTOEXTEND ON/OFF 表示启动/停止自动扩展表空间 6) alter database datafile ' D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf ' resize 500m; //手动修改数据文件大小为500M 删除表空间 DROP TABLESPACE histdb INCLUDING CONTENTS AND DATAFILES; 表空间已创建。 2.为应用创建用户 创建用户的同时,为用户指定缺省的永久表空间和临时表空间。 SQL> create user cocis identified by cocis

Oracle11g NC63创建表空间及用户及授权

Oracle11g NC63创建表空间及用户及授权 在cmd中运行 sqlplus /nolog conn /as sysdba 2--建表空间及用户 CREATE TABLESPACE NNC_DATA01 DATAFILE 'F:\app\oradata\nnc_data01.dbf' SIZE 2048M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ; CREATE TABLESPACE NNC_DATA02 DATAFILE 'F:\app\oradata\nnc_data02.dbf' SIZE 50M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ; CREATE TABLESPACE NNC_DATA03 DATAFILE 'F:\app\oradata\nnc_data03.dbf' SIZE 2048M AUTOEXTEND ON NEXT 100M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K ; CREATE TABLESPACE NNC_INDEX01 DATAFILE 'F:\app\oradata\nnc_index01.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ; CREATE TABLESPACE NNC_INDEX02 DATAFILE 'F:\app\oradata\nnc_index02.dbf' SIZE 2048M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ; CREATE TABLESPACE NNC_INDEX03 DATAFILE 'F:\app\oradata\nnc_index03.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;

oracle创建表空间命令

eclipse+webservice开发实例 spring mvc数据绑定 oracle11g 创建表空间和用户授权 2013-01-27 10:54:18| 分类:默认分类| 标签:|举报|字号大中小订阅 *分为四步*/ /*第1步:创建临时表空间*/ create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; /*第2步:创建数据表空间*/ create tablespace AKJY_DATA logging datafile 'E:\oracleDATA\akjy_data.dbf' size 50m autoextend on next 50m maxsize 2048m extent management local; eclipse+webservice开发实例 spring mvc数据绑定 create tablespace DATA datafile 'D:\Program Files\oracle11g\DATA.dbf’size 1G autoextend on next 50m maxsize 20480m oracle11g 创建表空间和用户授权 2013-01-27 10:54:18| 分类:默认分类| 标签:|举报|字号大中小订阅 *分为四步*/ /*第1步:创建临时表空间*/ create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; /*第2步:创建数据表空间*/

Oracle12C用户创建与表空间分配

Oracle 12C用户创建与表空间分配 数据库安装完成后,首先用系统用户链接数据库容器(CDB), 在数据库容器(CDB)中创建表空间‘imei’ SQL>create tablespace iemi datafile'E:\Oracle_DB\ cdb_iemi.dbf'size 10240m autoextend on next 200m; 表空间已创建。 接下来在Oracle 12C数据库中创建用户时会报ORA-65096错误。SQL> create user imei identified by imei default tablespace imei temporary tablespace imei_temp; * ERROR at line 1: ORA-65096: invalid common user or role name ORA-65096:公用用户名或角色名无效 以前没见过这个错误,通用用户(common user)是什么?之前的版本可是没这概念啊,上网搜索看到了下面的图片,原来和common user 对应的还有local user。

这个common user 和local user是和oracle 12c的新特性pluggable database(PDB)有关。在PDB中创建的用户就是local user。从上图可以看出,common user必须以大写或小写的c##开头,尝试建立以c##开头的common user。 SQL> create user c##imei identified by imei default tablespace imei temporary tablespace imei_temp;; User created. SQL> grant dba to c##imei; Grant succeeded. 每个PDB都是独立的单元,有自己的用户(local user)、表空间、数据文件,每个local user只能访问自己的PDB,而common user只要权限足够,可以访问任意PDB。

oracle数据库建表空间语句汇总

建立表空间和用户的步骤: 用户 建立:create user 用户名identified by "密码"; 授权:grant create session to 用户名; grant create table to 用户名; grant create tablespace to 用户名; grant create view to 用户名; 表空间 建立表空间(一般建N个存数据的表空间和一个索引空间): create tablespace 表空间名 datafile ' 路径(要先建好路径)\***.dbf ' size *M tempfile ' 路径\***.dbf ' size *M autoextend on --自动增长 --还有一些定义大小的命令,看需要 default storage( initial 100K, next 100k, ); 用户权限 授予用户使用表空间的权限: alter user 用户名quota unlimited on 表空间; 或alter user 用户名quota *M on 表空间; --表空间 CREATE TABLESPACE deej DA TAFILE 'E:\database\deej.dbf' size 2G EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; --索引表空间 CREATE TABLESPACE sdt_Index DA TAFILE 'F:\tablespace\demo' size 512M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; --2.建用户 create user deej identified by deej default tablespace deej; --3.赋权

相关文档
相关文档 最新文档