`

Oracle 新建用户

阅读更多
应该定义它的表空间(default tablespace)。
否则,它会使用系统表空间(system tablespace)。这是应该避免的。

CREATE USER XXXXX IDENTIFIED BY xxxxx
PROFILE DEFAULT
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMPTS01
ACCOUNT UNLOCK;

CREATE TABLESPACE message
DATAFILE '/opt/oracle/oradata/surecomp/message01.dbf' size 200M
EXTENT MANAGEMENT local;


CREATE USER message IDENTIFIED BY message
DEFAULT TABLESPACE message;

GRANT connect, resource TO message;

CREATE TABLE userinfo (
id VARCHAR2(32) NOT NULL,
name VARCHAR2(32) NOT NULL,
password VARCHAR2(32) NOT NULL,
CONSTRAINT userinfo_pk PRIMARY KEY (id),
CONSTRAINT userinfo_unique_name UNIQUE ( name )
);

这里先是用SYSTEM用户创建了一个message表空间
然后创建一个用户message,使这个message用户默认使用message表空间
之后创建一个表USER,这个时候USER表是不是应该在SYSTEM的临时表空间里?
那下次用message登陆往USER表中插记录的时候记录是不是就存在message表空间中?
SYSTEM表空间是不是只存了USER表的逻辑?
概念不清请指教

当你用system创建了message表空间,和message用户后,如果你不从 system用户退出,再以message用户登陆,那么,运行以上创建表的指令,所创建的表userinfo,就会被system用户所拥有。所以,这个表应该在system表空间里。在这样的情况下,用户message与这张表没有任何关系。下次用message登陆时,message在一般情况下,不能往userinfo表里插记录,除非system给予message用户特别许可,(GRANT insert on system.userinfo TO message;)。如果system给予了这种许可,用户message所插的一切记录,都会储存在system表空间里,而不是在message表空间中。

显然,这是很糟糕的情况。一般情况下,应该避免让普通用户把数据储存在system表空间里。现有二种方法可以避免以上的情况:

1.从system用户退出,再以message用户登陆,然后运行以上创建表的指令。

2.依然是system用户登陆,修改上述创建表的指令。在表名前,加上用户名,并且在最后注明表空间名。请看下例:

CREATE TABLE message.userinfo
(
id VARCHAR2(32) NOT NULL,
name VARCHAR2(32) NOT NULL,
password VARCHAR2(32) NOT NULL,
CONSTRAINT userinfo_pk PRIMARY KEY (id),
CONSTRAINT userinfo_unique_name UNIQUE ( name )
)
TABLESPACE message;

用上述二种方法所创建的表userinfo,都会属于用户message。因此,message所插的一切记录,都会储存在message表空间中。

=====================================================
create temporary tablespace test_temp
tempfile 'd:\oracle\product\10.1.0\oradata\test\test_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;

//创建数据表空间
create tablespace test_data
logging
datafile 'd:\oracle\product\10.1.0\oradata\test\test_data01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;

//创建用户并指定表空间

CREATE USER test IDENTIFIED BY test
PROFILE DEFAULT
DEFAULT TABLESPACE test_data
TEMPORARY TABLESPACE test_temp
ACCOUNT UNLOCK;

GRANT connect, resource TO test;
grant create session to testr;
分享到:
评论

相关推荐

    oracle创建用户并附权限文档

    在“新建用户赋予权限”的文档中,可能会包含创建用户、设置密码、赋予权限的具体步骤,以及可能遇到的问题和解决方案。文档中的图片可能直观地展示了操作过程,这对于理解概念和操作流程非常有帮助。 总的来说,...

    oracle创建用户以及授权

    oracle创建用户以及授权命令,可在toad等工具下执行创建用户以及相应的权限设置。

    Oracle创建用户语句

    ### Oracle 创建用户语句详解 #### 一、概述 在Oracle数据库管理中,创建用户是一项基本而重要的操作。本文将详细介绍如何使用SQL语句在Oracle数据库中创建新用户,并为这些用户分配必要的权限和资源。这包括理解...

    oracle 创建用户和数据库

    ### Oracle 创建用户与数据库知识点详解 #### 一、Oracle创建表空间 在Oracle数据库管理中,**表空间**是逻辑存储单元,它由一个或多个数据文件组成,用于存储数据库对象(如表、索引等)。创建表空间是管理数据库...

    oracle创建用户详细流程

    ### Oracle 创建用户的详细流程 #### 一、概述 在Oracle数据库管理中,创建用户是一项基本且重要的操作。本文将详细介绍如何在Oracle环境中创建用户,并授予相应的权限,以便用户能够进行数据库的操作。 #### 二...

    Oracle创建用户权限全过程

    ### Oracle创建用户权限全过程 在Oracle数据库管理中,创建用户并赋予适当的权限是一项重要的任务。本文将详细介绍如何通过创建表来实现Oracle用户权限的管理,包括创建表空间、创建用户、给用户授权以及如何撤销...

    ORACLE创建用户、创建用户

    根据提供的文件信息,本文将详细解释Oracle数据库中创建用户的步骤及相关的知识点。 ### Oracle 创建用户 在Oracle数据库中,创建用户是一项重要的管理任务,它允许系统管理员为不同的应用程序或个人设置独立的...

    oracle 创建用户

    ### Oracle 创建用户详解 在Oracle数据库管理中,创建用户是一项基本但非常重要的任务。通过创建用户,可以有效地管理和控制对数据库资源的访问。本文将基于提供的文件信息,详细阐述如何在Oracle环境中创建用户...

    使用PLSQL 创建Oracle数据库用户并设置权限

    在 Oracle 数据库中,创建用户并设置权限是数据库管理员的基本任务之一。在本文中,我们将使用 PLSQL 创建 Oracle 数据库用户并设置权限,包括创建用户、设置权限和创建表。 一、创建用户 在 PLSQL Developer 中,...

    详解oracle创建用户.doc

    ### Oracle 创建用户及权限管理详解 #### 一、概述 在 Oracle 数据库中,创建用户是数据库管理员(DBA)的一项基本任务。用户账户是数据库安全的第一道防线,它定义了哪些人可以访问数据库以及他们能做什么。本文将...

    Oracle创建用户

    ### Oracle创建用户详解 #### 一、创建用户步骤概述 创建Oracle用户是数据库管理中的基础操作之一,主要用于分配资源和权限给不同的用户或应用程序。在创建用户的过程中,我们需要按照一定的步骤来确保用户能够...

    Oracle创建用户,并授权DBA权限

    ### Oracle 创建用户并授权 DBA 权限 在 Oracle 数据库管理系统中,用户管理与权限分配是维护数据库安全性和操作性的关键环节。本文将详细解析如何在 Oracle 中创建用户、分级授权以及对 DBA 权限的具体操作方法,...

    oracle创建用户及导入环境dmp

    根据给定的文件信息,我们可以总结出以下关于Oracle数据库中创建用户、导入环境DMP以及进行相关操作的知识点: ### 一、Oracle中创建与删除用户 #### 创建用户语法: 在Oracle中创建用户的基本语法是: ```sql ...

    Oracle创建用户[整理].pdf

    在Oracle数据库系统中,创建用户是管理数据库权限和资源分配的重要环节。这篇文档详细介绍了如何在Oracle环境中创建用户,包括必要的准备工作、创建表空间、创建临时表空间、创建用户以及授权用户的过程。以下是对...

    linux oracle创建用户,表空间 资料

    在Linux环境下操作Oracle数据库,创建用户和表空间是数据库管理员的常见任务。Oracle数据库系统是一个功能强大的关系型数据库管理系统,广泛应用于企业级数据存储和管理。以下将详细讲解如何在Linux上进行Oracle用户...

    oracle数据库导入数据以及创建用户

    以下是对标题"Oracle数据库导入数据以及创建用户"的详细解读: 1. 数据导入: - **SQL*Loader**:Oracle提供的一种强大的工具,能够快速地将大量数据从文本文件或CSV文件加载到数据库中。SQL*Loader读取控制文件,...

    完整ORACLE创建表空间、用户、设置用户权限脚本

    #### 二、创建用户 在Oracle数据库中,用户账户是访问数据库资源的基本单位。 ``` /*用户*/create user zoweenewerp identified by y13zowee /*newerp用户y13zowee。密码不同,此处仅为示例*/ default tablespace ...

    oracle创建用户

    oracle创建用户

    oracle数据库创建表空间和用户

    oracle数据库导入、导出数据、创建表空间、创建用户、用户授权等操作

Global site tag (gtag.js) - Google Analytics