oracle创建表空间(oracle创建表空间以及给用户授予权限)
本篇文章给大家谈谈oracle创建表空间,以及oracle创建表空间以及给用户授予权限对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、如何创建Oracle的表空间?
- 2、用sqlplus为oracle创建用户和表空间
- 3、oracle19c创建表空间特别慢
- 4、如何创建ORACLE大文件表空间
- 5、oracle怎样创建表空间?
- 6、oracle 创建表空间、创建用户
如何创建Oracle的表空间?
oracle创建表空间有多种方法,如下:薯歼
一、方法1:
代码创建,如下:
SQL edi
已写入 file afiedt.buf
1 create tablespace ts1
2 datafile 'F:\oracle\product\10.2.0\oradata\orcl\ts1.dbf' size 100M
3 autoextend on next 1M maxsize 1000M
4* extent management local
SQL /
表空间已创携薯建。
二辩手者、方法2
用sqlplus,如下:
sqlplus / as sysdba
SQLcreate tablespace tbsname datafile '文件路径及文件名' size 500m;
三、方法3
通过脚本创建,如下:
Create tablespace StartDB
datafile 'e:\database\oracle\StartDB.dbf'
size 32m
autoextend on
next 32m maxsize 1024m
extent management local。
[img]用sqlplus为oracle创建用户和表空间
桥雀 用Oracle i自带的企业管理器或PL/SQL图形化的方法创建表空间和用户以及分配权限是相对比较简单的 本文要介绍的是另一种方法 使用Oracle i所带的命令行工具 SQLPLUS来创建表空间 这个方法用起来更加简明快捷
假设 文章假设 如果您用的是Linux系统 那么Oracle用户名为oracle 同时 您是在oracle服务器上操作
如果是在Windows系统下 请先点击 开始 然后点 运行 输入cmd并点击 确定 打开命令行窗口
如果是知消弯在Linux的图形窗口 请右键点击桌面并点击 打开终端 然后输入 su oracl
做好上述准搭闷备工作以后 输入以下命令
sqlplus /nolog
回车后 将出现提示符 SQL
这时输入
conn / as sysdba
一般即可登录 如果失败的话 可以试一下用conn sys/sys用户的密码 as sysdba来重试一下
接下来 我们看看您当前的数据库文件一般都是放在哪里的
select name from v$datafile;
windows下可能看到的结果如下
SQL select name from v$datafile;
NAME
D:\oracle\oradata\orcl\system dbf
D:\oracle\oradata\orcl\undotbs dbf
D:\oracle\oradata\orcl\cwmlite dbf
D:\oracle\oradata\orcl\drsys dbf
D:\oracle\oradata\orcl\indx dbf
D:\oracle\oradata\orcl\tools dbf
说明您的数据文件是放在 D:\oracle\/oradata\orcl\ 这个目录下的
Linux下可能看到的结果如下
SQL select name from v$datafile;
NAME
/oracle/oradata/orcl/system dbf
/oracle/oradata/orcl/undotbs dbf
/oracle/oradata/orcl/cwmlite dbf
/oracle/oradata/orcl/drsys dbf
/oracle/oradata/orcl/indx dbf
/oracle/oradata/orcl/tools dbf
说明您的数据文件是放在 /oracle/oradata/orcl/ 这个目录下的
好 我们可以开始创建数据库表空间了 创建数据库表空间的命令格式如下
create tablespace 表空间名 datafile 对应的文件名 size 大小;
举例如下
对于上述的windows情况
create tablespace wbppcs datafile D:\oracle\oradata\orcl\wbppcs dbf size m;
m指的是 MB
对于上述的Linux的情况
create tablespace wbppcs datafile /oracle/oradata/orcl/wbppcs dbf size m;
至此 所需的表空间已建立
接下来我们开始创建用户 创建用户的命令格式如下
create user 用户名 identified by 密码 default tablespace 用户默认使用哪一个表空间;
修改用户的权限
grant 角色 角色 to 用户名;
举例如下
create user wbppcs identified by wbppcs default tablespace wbppcs;
grant dba connect to wbppcs;
lishixinzhi/Article/program/Oracle/201311/18086
oracle19c创建表空间特别慢
后台进程多。Oracle19c可以用贺陵于创建数据库与表空间,创建表空间特别慢是因为后台进程多,拉低进程速度导致的。表空间是数据库的逻辑划分,一个表空间只能属禅则戚于一个数据库。所有的数盯乱据库对象都存放在指定的表空间中。
如何创建ORACLE大文件表空间
如何创建ORACLE大文件表空间
SQLCREATE BIGFILE TABLESPACE 表名
datafile 'd:\ndo\ddo\表名.DBF‘
SIZE 500M AUTOEXTEND ON;
SQLCreate Bigfile tablespace bf_images_xp
datafile 'e:\datacenter\bf\bf_images_xp.dbf' size 500M Autoextend on;
//说明如下:
//创建一个大表空间,名称为:bf_images_xp,数据文件为e:\datacenter\bf\bf_images_xp.dbf
//初始化让慎罩大小为500M,且文件自动增长
SQLcreate bigfile tablespace bf_v_xp
datafile 'e:\datacenter\bf\bf_v_xp.dbf' size 500M autoextend on;
其中BIGFILE表示创建 的表空间是坦闹大文件表空间,
DATAFILE指定组成大文件表空间的大文件(上海硬盘数据恢复文件),
SIZE表示大文件的初始大小:
AUTOEXTED ON表示允许大文件自动扩张!
网友资孝态料:供参考!
发现表空间文件容量与DB_BLOCK_SIZE有关,
在初始建库时,DB_BLOCK_SIZE要根据实际需要,
设置为4K,8K、16K、32K、64K等几种大小,
ORACLE的物理文件最大只允许4194304个块(由操作系统决定),
smallfile tablespace表空间文件的最大值为 4194304×DB_BLOCK_SIZE/1024M。
即:
4k最大表空间为:16384M=16G
8K最大表空间为:32768M=32G
16k最大表空间为:65536M=64G
32K最大表空间为:131072M=128G
64k最大表空间为:262144M=256G
//---------------------------------------------------------------------
oracle bigfile tablespace 大文件表空间 ----------------------------
Oracle 10g 新增的表空间类型:大文件 (Bigfile) 表空间。
大文件表空间从某种角度来说提高了 Oracle 在 VLDB 上的管理能力。
只有自动段空间管理的 LMT (Locally Managed Tablespaces ) 支持 BIGFILE 表空间。
大文件表空间只能包含一个文件,但是文件可以达到 4G 个数据块大小。
(以下用 BFT 指代 BIGFILE Tablespace。BFT 可以和以下存储技术结合使用:
自动存储管理(ASM) LVM OMF
理论上的 BFT 可以达到下面所列的值:
数据块大小(单位:K) BFT 最大值(单位:T)
2k 8T
4k 16T
8k 32T
16k 64T
32k 128T
在实际环境中,这还受到操作系统的文件系统的限制。
BFT基本操作
10g 数据库在创建的时候,会指定默认的表空间类型。
如果不特殊指定的话,默认为 SMALLFILE 类型的表空间。
SQL SELECT * FROM database_properties WHERE property_name = 'DEFAULT_TBS_TYPE';
这种情况下,如果我们创建表空间的时候不指定类型,那么默认创建的都是 SMALLFILE 类型的表空间。
修改数据库默认的表空间类型
可以通过 ALTER DATABASE 命令来修改数据库默认的表空间类型:
SQL ALTER DATABASE SET DEFAULT bigfile TABLESPACE;
Database altered.
SQL SELECT * FROM database_properties WHERE property_name = 'DEFAULT_TBS_TYPE';
SQL
SQL ALTER DATABASE SET DEFAULT smallfile TABLESPACE;
创建 BIGFILE 类型的表空间,只需指定额外的一个参数 BIGFILE 即可,
其他和原有创建表空间语法类似:
CREATE BIGFILE TABLESPACE bftbs DATAFILE '/u01/app/oracle/oradata/DEMO/bftbs01.dbf' SIZE 5M;
DBA_TABLESPACES (USER_TABLESPACES)与 V$TABLESPACE 这两个视图可以查看 BIGFILE 表空间的相关信息。
先看看 DBA_TABLESPACES 在 10g 中有了什么变化:
SQL desc DBA_TABLESPACES
SQL
和 9i 相比,
DBA_TABLESPACES 视图多了两列:RETENTION 和 BIGFILE。
其中 BIGFILE 列说明该表空间是否为 BFT:
SQL SELECT tablespace_name, bigfile FROM dba_tablespaces;
8 rows selected. V$TABLESPACE 视图相对 9i 也增加了新的列:
SQL desc V$TABLESPACE Name
其中 FlASHBACK_ON 和 BIGFILE 列都是新增的。
BFT 属性
BFT有一些特有的属性。
1.每个表空间只能包含一个数据文件。如果试图添加新的文件,则会报告 ORA-32771 错误:
SQL ALTER TABLESPACE bftbs
ADD DATAFILE '/u01/app/oracle/oradata/DEMO/bftbs02.dbf' SIZE 5M;
ALTER TABLESPACE bftbs * ERROR at line 1:
ORA-32771: cannot add file to bigfile tablespace
2.只有自动段空间管理的 LMT (locally managed tablespaces ) 支持 BFT
SQL CREATE BIGFILE TABLESPACE bftbs02
DATAFILE '/u01/app/oracle/oradata/DEMO/bftbs02.dbf' SIZE 5M
EXTENT MANAGEMENT DICTIONARY;
CREATE BIGFILE TABLESPACE bftbs02 * ERROR at line 1:
ORA-12913: Cannot create dictionary managed tablespace
SQL CREATE BIGFILE TABLESPACE bftbs02
DATAFILE '/u01/app/oracle/oradata/DEMO/bftbs02.dbf' SIZE 5M
SEGMENT SPACE MANAGEMENT MANUAL;
CREATE BIGFILE TABLESPACE bftbs02 * ERROR at line 1:
ORA-32772: BIGFILE is invalid option for this type of tablespace
3.相对文件号(RELATIVE_FNO)为1024 ( 4096 on OS/390)
因为BFT只有一个数据文件,所以其相对文件号也是固定的:1024
SQL SELECT tablespace_name, file_id, relative_fno
FROM dba_data_files;
SQL
4.rowid的变化
在 BFT 上存储的表的 ROWID 与 smallfile 表空间上的 rowid 结构有些不同的。
要正确得到 rowid 信息,dbms_rowid 包增加了一个新的参数 ts_type_in 来解决这个问题。
参考这个范例:
SQL SELECT DBMS_ROWID.rowid_block_number (ROWID, 'BIGFILE')
FROM foo;
24
SQL
你可以创建多大的表空间?
我们在前面提及,BFT 还受到操作系统的文件系统的限制。
下面我们以 Linux 操作系统为例:
SQL SHOW parameters db_block_size
db_block_sizeinteger 8192
SQL
也就是说,理论上我们可以创建最大 32T
oracle怎样创建表空间?
建立表空间 \x0d\x0a建立表空间是使用crate tablespace命令完成的,需要注意的是,一般情况下,建立表空间是特权用户或是dba来执行的,如果用其它用户来唯汪创建表空间,则用户指物仔必须要具有create tablespace的系统权蚂改限。 \x0d\x0a 建立数据表空间 \x0d\x0a在建立数据库后,为便于管理表,最好建立自己的表空间 \x0d\x0acreate tablespace data01 datafile 'd:\test\dada01.dbf' size 20m uniform size128k; \x0d\x0a说明:执行完上述命令后,会建立名称为data01的表空间,并为该表空间建立名称为data01.dbf的数据文件,区的大小为128k
oracle 创建表空间、创建用户
用户有自宴基己的可操作表空间。
1、用sys用户创建表空间
sql语句:create tablespace WXY datafile 'D:\app\Administrator\oradata\orcl\WXY.DBF' size 15M autoextend on next 10M permanent online;
创建了一个WXY的表晌孙谨空间,语句执行成功后在D:\app\Administrator\oradata\orcl 这个位置会多一个WXY.DBF的文件。
2、创建用户:找到users --右击--new 右侧弹出create user 操作框。
输入想创建的用户名/密码;默认表空间选择上一步自己创建的表空间WXY;临时表空间选择TEMP;Profile 可以空着(默认为DEFAULT)或者选择DEFAULT。点击Apply。
在左侧users下面就会展示自己创建的user01 用户凯稿。
3、user01用户未分配权限的情况下用user01 用户登录会报错。
再用sys重新登录,给用户user01分配权限。
找到user01--右击--edit
在Role privileges 页签天剑connect 链接权限,点击应用之后重新用user01用户登录即可成功
关于oracle创建表空间和oracle创建表空间以及给用户授予权限的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。