创建表空间语句
linux下创建oracle表空间
linux下创建oracle表空间1 、登录服务器2 、查看磁盘空间是否够⼤df -h-h更具⽬前磁盘空间和使⽤情况以更易读的⽅式显⽰ [root@rac1 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 2.9G 2.3G 521M 82% / none 209M 0 209M 0% /dev/shm /dev/sda2 4.5G 1.8G 2.5G 42% /u01 /dev/sde1 512M 80M 433M 16% /ocfs -H根上⾯的-h参数相同,不过在根式化的时候,采⽤1000⽽不是1024进⾏容量转换 [root@rac1 ~]# df -H Filesystem Size Used Avail Use% Mounted on /dev/sda1 3.1G 2.4G 546M 82% / none 219M 0 219M 0% /dev/shm /dev/sda2 4.8G 1.9G 2.7G 42% /u01 /dev/sde1 537M 84M 454M 16% /ocfs -k以单位显⽰磁盘的使⽤情况 [root@rac1 ~]# df -k Filesystem 1K-blocks Used Available Use% Mounted onsu - oracle 切换到oracle⽤户(linux的⼀个⽤户名)3 、在/home/oracle/oradata ⽬录下新建⼀个⽂件夹,后⾯创建表空间需要⽤到cd /home/oracle/oradatamkdir abc4 、 sqlplus / as sysdba (以dba⾝份登录数据库,系统的超级⽤户)5 、创建临时表空间创建⽤户前必须要先创建临时表空间和数据库表空间两个表空间,否则⽤系统默认的表空间不好。
create temporary tablespace abc_temp tempfile '/home/oracle/oradata/abc/abc_temp.dbf' size 512m autoextend on next 100m maxsize 1024m extent management local;说明:1)abc_temp 临时表空间名字2)/home/oracle/oradata/abc 存放数据库⽂件的地⽅,⼀般是安装数据库后有控制⽂件,数据⽂件和⽇志⽂件的⽂件夹,再加上要创建表空间的名字+dbf (数据⽂件)3)512m 表空间的初始⼤⼩4)100m 表空间的⾃动增长⼤⼩5)1024m 表空间最⼤的⼤⼩6 、创建数据表空间create tablespace abc logging datafile '/home/oracle/oradata/abc/abc.dbf' size 512m autoextend on next 100m maxsize 1024m extent management local;7 、创建⽤户并指定表空间create user abc identified by abc default tablespace abc temporary tablespace abc_temp;注:create standardtable.sql 创建表8 、给⽤户授予权限grant dba to abc; (给abc ⽤户授予了dba 所有权限)9 、删除⽤户以及⽤户所有的对象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';再执⾏:drop user nim cascade; 删除⽤户nim10、删除表空间前提:删除表空间之前要确认该表空间没有被其他⽤户使⽤之后再做删除drop tablespace nimeng including contents and datafiles cascade constraints ;including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,⽽未加此参数,表空间删不掉,所以习惯性的加此参数including datafiles 删除表空间中的数据⽂件cascade constraints 同时删除 tablespace 中表的外键参照如果在清除表空间之前,先删除了表空间对应的数据⽂件,会造成数据库⽆法正常启动和关闭。
oracle创建临时表空间、用户表空间语句
创建临时表空间CR EATETEMPO RARYTABLE SPACE test_tempTEMP FILE'D:\M yOrcl\orcl\test_temp01.db f'SI ZE 32MAUT OEXTE ND ONNEXT 32MMAXSI ZE 2048ME XTENT MANA GEMEN T LOC AL;创建用户表空间CREA TE TA BLESP ACE t est_d ataL OGGIN GDAT AFILE 'D:\MyOrc l\orc l\TES T_DAT A01.D BF' SIZE32M AUTOE XTEND ON NEXT32M M AXSIZ E 2048MEX TENTMANAG EMENT LOCA L;创建用户并制定表空间C REATE USER wjzIDENT IFIED BY t igerDEFAU LT TA BLESP ACE T EST_D ATAT EMPOR ARY T ABLES PACETEST_TEMP;给用户授予权限GRAN TCREAT E SES SION, CREA TE AN Y TAB LE, C REATE ANYVIEW,CREA TE AN Y IND EX, C REATE ANYPROCE DURE,AL TER A NY TA BLE,ALTER ANYPROCE DURE,DR OP AN Y TAB LE, D ROP A NY VI EW, D ROP A NY IN DEX,DROPANY P ROCED URE,SEL ECT A NY TA BLE,INSER T ANY TABL E, UP DATEANY T ABLE,DELE TE AN Y TAB LETO wj z;将ro le这个角色授与us ernam e,也就是说,使us ernam e这个用户可以管理和使用rol e所拥有的资源,前提是数据库内有role这个角色GRAN T rol e TOusern ame;查看所有用户SELE CT *FROMDBA_U SERS;SELE CT *FROMALL_U SERS;SELE CT *FROMUSER_USERS;查看用户系统权限SE LECT* FRO M DBA_SYS_PRIVS;SEL ECT * FROM USER_SYS_PRIVS;查看用户对象权限SE LECT* FRO M DBA_TAB_PRIVS;SEL ECT * FROM ALL_TAB_P RIVS;SELE CT *FROMUSER_TAB_P RIVS;查看所有用户SELEC T * F ROM D BA_RO LES;查看用户或角色所拥有的角色SELE CT *FROMDBA_R OLE_P RIVS;SELE CT *FROMUSER_ROLE_PRIVS;。
创建oracle数据库表空间,角色,用户的sql语句
创建oracle数据库表空间,角色,用户的sql语句创建oracle 数据库表空间,角色,用户的sql语句1.创建角色CREATE ROLE "QIUDINGROLE" NOT IDENTIFIED;GRANT "CONNECT" TO "QIUDINGROLE";GRANT "DBA" TO "QIUDINGROLE";GRANT "RESOURCE" TO "QIUDINGROLE";2.创建表空间create tablespace safetempdatafile'D:\oracle\product\10.1.0\oradata\localpower\safetemp01.dbf'size32m autoextend on next32m maxsize unlimited logging extent management local segment space management auto;CREATE SMALLFILE TABLESPACE "EXAM" DATAFILE'D:\Soft\oracle\product\10.2.0\oradata\qiuding\EXAM' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;BEGINDBMS_SERVER_ALERT.SET_THRESHOLD(9000,NULL,NULL,N ULL,NULL,1,1,NULL,5,' EXAM'); END;CREATE SMALLFILE TEMPORARY TABLESPACE "EXAM_TEMP" TEMPFILE'D:\Soft\oracle\product\10.2.0\oradata\qiuding\EXAM_tem p' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;BEGINDBMS_SERVER_ALERT.SET_THRESHOLD(9000,NULL,NULL,NULL,NULL,1,1,NULL,5,' EXAM_TEMP'); END;3.创建用户create userEXAMidentified by "PASSWORD123"default tablespace "EXAM"temporary tablespace "EXAM_TEMP"profile DEFAULTACCOUNT UNLOCK;grant QIUDINGROLE to EXAM;grant unlimited tablespace to EXAM;4.创建备份目录并且付相应权限create directory dump_dir as 'D:\Soft\oracle\backup';grant read,write on directory dump_dir to EXAM;。
Oracle常用DDL语句
Oracle常用DDL语句一、表空间管理CREATE [BIGFILE|SMALLFILE] [TEMPORARY] TABLESPACE tablespace name -- 表空间名字DATAFILE datafile spec | TEMPORARYFILE tempfile spec -- 数据文件/临时文件说明[MINIMUM EXTENT minimum extent size] -- 最小扩展空间[[BLOCKSIZE blocksize] DEFAULT STORAGE (defalut storage clause)] -- (锁空间大小)默认存储子句[LOGGING | NOLOGGING] -- 有无日志[FORCE LOGGING] -- 强制日志[ONLINE | OFFLINE] -- 在线/不在线[EXTENT MANAGEMENT DICTIONARY | LOCAL [AUTOALLOCATE | UNIFORM SIZE size]] -- 扩展管理字典/本地(自动定位/统一大小)[SEGMENT SPACE MANAGEMENT MANUAL | AUTO] -- 管理extent中的block(设置为自动最佳)[FLASHBACK ON|OFF] -- 删除文件是否可找回1、1、创建永久表空间例:CREATE TABLESPACE MYTABLESPACE LOGGINGDATAFILE'D:\oracle\product\10.1.0\oradata\MYDB\MYTABLESPACE.DBF' SIZE 10M REUSEAUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITEDEXTENT MANAGEMENT LOCAL1、2、创建临时表空间例:CREATE TEMPORARY TABLESPACE MYTEMP LOGGINGTEMPFILE'D:\oracle\product\10.1.0\oradata\MYDB\MYTEMP.DBF' SIZE 10M REUSEAUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITEDEXTENT MANAGEMENT LOCAL更改默认临时表空间alter database default temporary tablespace TEMP2;1、3 删除表空间1)强行删除表空间,包括数据文件drop tablespace mytemp including contents and datafiles cascade constraints2)表空间内无任何对象时才能删除drop tablespace mytemp1.4 为表空间增加文件alter tablespace users add datafile 'd:\oracle\oradata\....\users02.dbf' size 10m;1.5 默认临时表空间在创建用户时,如果没有指定临时表空间,则会使用系统表空间作为临时表空间,如果指定了默认临时表空间,则在未指定临时表空间的情况下使用默认的临时表空间。
Oracle tablespace (表空间)的创建、删除、修改、扩展及检查等
Oracle tablespace (表空间)的创建、删除、修改、扩展及检查等oracle 数据库表空间的作用1.决定数据库实体的空间分配;2.设置数据库用户的空间份额;3.控制数据库部分数据的可用性;4.分布数据于不同的设备之间以改善性能;5.备份和恢复数据。
--oracle 可以创建的表空间有三种类型:1.temporary: 临时表空间,用于临时数据的存放;create temporary tablespace "sample"......2.undo : 还原表空间. 用于存入重做日志文件.create undo tablespace "sample"......3.用户表空间: 最重要,也是用于存放用户数据表空间create tablespace "sample"......--注:temporary 和undo 表空间是oracle 管理的特殊的表空间.只用于存放系统相关数据.--oracle 创建表空间应该授予的权限1.被授予关于一个或多个表空间中的resource特权;2.被指定缺省表空间;3.被分配指定表空间的存储空间使用份额;4.被指定缺省临时段表空间。
select tablespace_name "表空间名称",status "状态",extent_management "区管理方式",allocation_type "磁盘扩展管理方式",segment_space_management "段管理方式" from dba_tablespaces;--查询各个表空间的区、段管理方式--1、建立表空间--语法格式:create tablespace 表空间名datafile '文件标识符' 存储参数[...]|[minimum extent n] --设置表空间中创建的最小范围大小|[logging|nologging]|[default storage(存储配置参数)]|[online|offline]; --表空间联机\脱机|[permanent|temporary] --指定该表空间是用于保存永久的对象还是只保存临时对象 |[...]--其中:文件标识符=’文件名’[size整数[k\m][reuse]--实例create tablespace data01datafile '/oracle/oradata/db/data01.dbf' size 500muniform size 128k; --指定区尺寸为128k,如不指定,区尺寸默认为64kcreate tablespace "test"loggingdatafile 'd:\oracle\oradata\oracle\sample.ora' size 5m,'d:\oracle\oradata\oracle\dd.ora' size 5mextent management localuniform segment space managementauto;--详解/*第一: create tablespace "sample"创建一个名为"sample" 的表空间.对表空间的命名,遵守oracle 的命名规范就可了. 第二: logging 有nologging 和logging 两个选项,nologging: 创建表空间时,不创建重做日志.logging 和nologging正好相反, 就是在创建表空间时生成重做日志.用nologging时,好处在于创建时不用生成日志,这样表空间的创建较快,但是没能日志,数据丢失后,不能恢复;但是一般我们在创建表空间时,是没有数据的,按通常的做法,是建完表空间,并导入数据后,是要对数据做备份的;所以通常不需要表空间的创建日志,因此,在创建表空间时,选择nologging,以加快表空间的创建速度.第三: datafile 用于指定数据文件的具体位置和大小.datafile 的文件是建立表空间后创建的,不过文件路径必须存在才是合法的datafile设置如: datafile 'd:\oracle\oradata\ora92\luntan.ora' size 5m说明文件的存放位置是'd:\oracle\oradata\ora92\luntan.ora' , 文件的大小为5m.如果有多个文件,可以用逗号隔开:如:datafile 'd:\oracle\oradata\ora92\luntan.ora' size 5m, 'd:\oracle\oradata\ora92\ dd.ora' size 5m但是每个文件都需要指明大小.单位以指定的单位为准如5m 或500k.对具体的文件,可以根据不同的需要,存放大不同的介质上,如磁盘阵列,以减少io竟争. 指定文件名时,必须为绝对地址,不能使用相对地址.第四: extent management local 存储区管理方法在字典中管理(dictionary):将数据文件中的每一个存储单元做为一条记录,所以在做dm操作时,就会产生大量的对这个管理表的delete和update操作.做大量数据管理时,将会产生很多的dm操作,严得的影响性能,同时,长时间对表数据的操作,会产生很多的磁盘碎片.本地管理(local):用二进制的方式管理磁盘,有很高的效率,同进能最大限度的使用磁盘.同时能够自动跟踪记录临近空闲空间的情况,避免进行空闲区的合并操作。
数据库创建表空间语句
数据库创建表空间语句2. 数据库创建表空间语句超有趣的哟!就好比给一群小动物划分各自的小窝。
拿MySQL来说,如果要创建个表空间,像“CREATE TABLESPACE new_space ADD DATAFILE 'new_file.ibd' ENGINE = InnoDB;”这语句,是不是感觉像在给数据宝宝们盖专属小房子呢?3. 数据库创建表空间语句可不能小瞧!这就如同在大森林里给不同的树木圈定地盘。
在SQL Server中,创建表空间类似这样“CREATE DATABASE mydb ON PRI MARY (NAME = mydb_data, FILENAME = 'c:\mydb.mdf', SIZE = 10MB) LOG ON (NAME = mydb_log, FILENAME = 'c:\mydb.ldf', SIZE = 1MB);”,你看,数据就各得其所啦。
4. 亲,你要是搞数据库,那创建表空间语句得好好学呀!它就像给士兵分配营房一样。
以PostgreSQL为例,“CREATE TABLESPACE my_tspace LOCATION'/path/to/directory';”这个语句一执行,数据就有地方住啦,是不是很神奇呢?5. 数据库创建表空间语句就像是给宝藏找个专门的藏宝库。
在DB2里,你要是想创建表空间,像“CREATE TABLESPACE myspace MANAGED BY DATABASE USING (FILE 'path/file' 100M) ”这样,就把数据宝贝们妥妥地安置好喽。
6. 哎数据库创建表空间语句真的是数据库世界里的魔法咒语呢!想象一下,你是个城堡的主人,要给不同的宝物划分房间。
在SQLite中,虽然没有传统意义上的表空间创建语句,但你可以类比理解为创建新的数据库文件来存放特定的数据,就像“CREATE DATABASE newdata.db;”这也是一种类似的概念呀。
oracle 重要语法(建表空间,用户,授权,拼接sql)
documentcount gdfs,--归档份数
f2 initunitname,--单位名称
AUTHOR author,--(作者) ,F9(扫描页数)。
F5 wjys,--文件页数
F3 lrrq,--(录入日期)
JDRQ jdrq,--(鉴定日期)。
(select substr(TZM ,1,(select INSTR(TZM ,'\',-1) from dual)-1 ) from dual ) FILE_PATH,--附件路径
alter system kill session 'sid,serial';
alter system kill session '7,19';
alter system kill session '9,11';
alter system kill session '70,13';
alter system kill session '72,348';
documentcount gdfs,--归档份数
f2 initunitname,--单位名称
AUTHOR author,--(作者) ,F9(扫描页数)。
F5 wjys,--文件页数
drop user dev cascade;
DROP TABLESPACE LIS INCLUDING CONTENTS AND DATAFILES;
Oracle如何断开用户连接 搜出该用户的session的SID,SERIAL码,然后kill掉
select sid,serial# from v$session where username='user_name';
Oracle数据库语句大全
Oracle数据库语句大全一.入门部分1.创建表空间create tablespace schooltbs datafile ‘D:\oracle\datasource\schooltbs.dbf’ size 10M autoextend on;2.删除表空间drop tablespace schooltbs[including contents and datafiles];3.查询表空间基本信息select *||tablespace_name from DBA_TABLESPACES;4.创建用户create user lihuaidentified by lihuadefault tablespace schooltbstemporary tablespace temp;5.更改用户alter user lihuaidentified by 123default tablespace users;6.锁定用户alter user lihua account lock|unlock;7.删除用户drop user lihua cascade;--删除用户模式8.oracle数据库中的角色connect,dba,select_catalog_role,delete_catalog_role,execute_catalo g_role,exp_full_database,imp_full_database,resource9.授予连接服务器的角色grant connect to lihua;10.授予使用表空间的角色grant resource to lihua with grant option;--该用户也有授权的权限11.授予操作表的权限grant select,insert on user_tbl to scott;--当前用户grant delete,update on er_tbl to scott;--系统管理员二.SQL查询和SQL函数1.SQl支持的命令:数据定义语言(DDL):create,alter,drop数据操纵语言(DML):insert,delete,update,select数据控制语言(DCL):grant,revoke事务控制语言(TCL):commit,savepoint,rollback2.Oracle数据类型字符,数值,日期,RAW,LOB字符型char:1-2000字节的定长字符varchar2:1-4000字节的变长字符long:2GB的变长字符注意:一个表中最多可有一列为long型Long列不能定义唯一约束或主键约束long列上不能创建索引过程或存储过程不能接受long类型的参数。
创建表空间
Create tablespace 表空间名[datafile 子句][minimum extent 正整数[K|M][blocksize 正整数[K]][logging|nologging][default 存储子句][online|offline][permanent|temporary][区段管理子句][段管理子句]表空间名:所要创建的表空间名.Datafileb子句:组成所要创建的表空间的文件说明. Minimum extent:表空间中所使用的每个EXTENT都必须是该参数所指定数的整数倍.Blocksize:为该表空间说明非标准决的大小.在使用这一子句之前,必须先设置DB_CACHE_SIZE和DB_nK_CACHE_SIZE参数,而且该子句中所说明的正整数一定与DB_nK_CACHE_SIZE参数的设定相对应.Logging:说明在该表空间中所有数据的变化都将写入重做日志文件中,这也是默认方式.Nologging:说明在该表空间中所有数据的变化不都写入重做日志文件中,nologging只影响一些DML和DDL命令.Default 存储子句:说明所有在该表空间中所创建的对象的默认存储参数.Offline:说明该表空间在创建后立即被置为脱机,即不能使用.在数据字典管理的表空间中所有的EXTENTS的管理都是在数据字典中进行的,而且每一个存储在同一个表空间中的段可以具有不同的存储子句。
在这种表空间的管理方法中可以按您的需要修改存储参数,所以存储管理比较灵活但系统的效率较低。
如果使用这种表空间的管理方法,有时需要合并碎片。
本地管理的表空间其空闲EXTENTS是在表空间中管理的,它是使用位图来记录空闲EXTENTS,位图中的每一位对应于一块或一组块,而每位的值批示空闲或分配。
当一个EXTENT 被分配或释放时,ORACLE服务器就会修改位图中相应位的值以反映该EXTENT的新的状态。
位图存放在表空间所对应的数据文件的文件头中。
oracle分区表的建立方法
oracle分区表的建立方法1.创建分区表前的准备工作在创建分区表之前,需要先创建一个分区表所依赖的分区表空间。
分区表空间是专门用于存储分区表数据的空间。
可以使用以下语句创建分区表空间:```sqlCREATE TABLESPACE tablespace_name DATAFILE'path_to_datafile' SIZE size;```其中,tablespace_name为分区表空间的名称,path_to_datafile为数据文件的路径和文件名,size为分区表空间的大小。
2.创建分区表在创建分区表之前,需要先确定表的结构和分区键。
分区键是用来确定数据如何在表的分区之间分布的关键字。
可以使用以下语句创建分区表:```sqlCREATE TABLE table_namecolumn1 datatype [DEFAULT expr ][column_constraint]...column_n datatype [DEFAULT expr ][column_constraint]PARTITION BY RANGE (column_name)PARTITION partition1 VALUES LESS THAN (value1),PARTITION partition2 VALUES LESS THAN (value2),...PARTITION partitionn VALUES LESS THAN (valuen)TABLESPACE tablespace_name;```其中,table_name为表的名称,column1到column_n为列的名称,datatype为列的数据类型,DEFAULT expr为列的默认值,column_constraint为列的约束条件,column_name为分区键的列名,partition1到partitionn为各个分区的名称,value1到valuen为分区键的取值范围,tablespace_name为分区表使用的分区表空间。
Oracle建表空间各种语句
Oracle建表空间各种语句第一篇:Oracle建表空间各种语句在创建用户之前,先要创建表空间:其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;如:SQL> create tablespace news_tablespace datafile 'F:oracleproduct10.1.0oradatanewsnews_data.dbf' size 500M;其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:oracleproduct10.1.0oradatanewsnews_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。
现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;如:SQL> create user news identified by news default tablespace news_tablespace;默认表空间'default tablespace'使用上面创建的表空间。
接着授权给新建的用户:SQL> grant connect,resource to news;--表示把connect,resource权限授予news用户SQL> grant dba to news;--表示把 dba权限授予给news用户授权成功。
ok!数据库用户创建完成,现在你就可以使用该用户创建数据表了!1.建表空间create tablespace hoteldata datafile 'D:javaOracleproduct10.1.0oradatazznorclhoteldata.dbf'size200m autoextend on next 10m maxsize unlimited;2.建用户create user hotel identified by hotel default tablespace hoteldataaccount unlock;//identified by 后面的是密码,前面的是用户名3.用户授权grant resource,connect,RECOVERY_CATALOG_OWNER to hotel;grant create table to hotel;alter user hotel quota unlimited ON OSDB;alter user hotel default tablespace hoteldata;4.删除表空间DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;5.删除用户DROP USER hotel CASCADE 6.删除表的注意事项在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。
建立新的表空间的命令
建立新的表空间的命令全文共四篇示例,供读者参考第一篇示例:建立新的表空间是在数据库中存储数据的一种重要方式,可以帮助用户更好地组织和管理数据库中的数据。
在Oracle数据库中,创建新的表空间需要使用一些特定的命令,下面将介绍如何使用SQL语句来创建新的表空间。
在Oracle数据库中,要创建一个新的表空间,需要使用CREATE TABLESPACE命令。
创建新表空间的命令语法如下:CREATE TABLESPACE tablespace_nameDATAFILE 'path_to_datafile' SIZE file_sizeAUTOEXTEND ONNEXT extent_sizeMAXSIZE max_size上面的命令中,tablespace_name是要创建的表空间的名称,path_to_datafile是表空间存储数据文件的路径,file_size是数据文件的初始大小,extent_size是每个数据文件的增长大小,max_size是数据文件的最大大小。
通过这条命令,就可以创建一个新的表空间。
在创建表空间时,还可以通过设置其他参数来指定一些特定的属性。
可以使用LOGGING指定是否启用表空间的日志记录,可以使用ONLINE指定表空间是否在线,可以使用DEFAULT指定创建的表空间是否为默认表空间。
这些参数可以根据实际需求来进行调整。
创建新的表空间是一个非常重要的操作,可以帮助用户更好地管理数据库中的数据。
通过上述介绍的命令和参数,用户可以根据实际需求来创建自己所需的表空间,并为其指定一些特定的属性和权限。
希望通过本文的介绍,读者对如何创建新的表空间有了更深入的了解。
希望本文对你有所启发,感谢阅读。
第二篇示例:在Oracle数据库中,表空间是用来存储数据库中的数据的逻辑概念,它是管理数据库的重要组成部分。
在数据库的运行过程中,有时候需要创建新的表空间来存储数据,以满足数据库的需求。
db2创建数据库及表空间语句
db2创建数据库及表空间语句1、⾸先在windows安装完DB2以后,打开DB2的命令⾏,然后依次执⾏下⾯代码.(下⾯有⼀句话脚本会提⽰你⼀个类似异常的信息,不予以理会,继续执⾏下⾯别的代码)1. db2 "CREATE DB TestDB using codeset UTF-8 territory us"2.3. db2 "UPDATE DB CFG FOR TestDB USING applheapsz 4096"4.5. db2 "UPDATE DB CFG FOR TestDB USING app_ctl_heap_sz 1024"6.7. db2 "UPDATE DB CFG FOR TestDB USING stmtheap 8192"8.9. db2 "UPDATE DB CFG FOR TestDB USING dbheap 2400"10.11. db2 "UPDATE DB CFG FOR TestDB USING locklist 1000"12.13. db2 "UPDATE DB CFG FOR TestDB USING logfilsiz 1000"14.15. db2 "UPDATE DB CFG FOR TestDB USING logprimary 12"16.17. db2 "UPDATE DB CFG FOR TestDB USING logsecond 20"18.19. db2 "UPDATE DB CFG FOR TestDB USING logbufsz 32"20.21. db2 "UPDATE DB CFG FOR TestDB USING avg_appls 5"22.23. db2 "UPDATE DB CFG FOR TestDB USING locktimeout 30"24.25. db2 CONNECT TO TestDB26.27. db2 "CREATE BUFFERPOOL icmsbuffer SIZE 1000 PAGESIZE 32K"28.29. db2 "CREATE TABLESPACE icmsspace PAGESIZE 32K MANAGED BY SYSTEM USING ('D:\db2admin\sqlt0003.0') BUFFERPOOL icmsbuffer"(根据实际情况确定是否是D盘下的db2admin\sqlt0003.0⽬录,如果没有,请先创建)30.31. db2 "CREATE SYSTEM TEMPORARY TABLESPACE ICMSBUF PAGESIZE 32 K MANAGED BY SYSTEM USING ('D:\db2admin\sqlt0004.0') BUFFERPOOL ICMSBUFFER"据实际情况确定是否是D盘下的db2admin\ sqlt0004.0⽬录,如果没有,请先创建)32.33. db2 "DISCONNECT icms"34.35. db2 "TERMINATE"下⾯说在linux下的创建⽅法:其实脚本⼀样数据库是从 DB2 命令界⾯创建的。
Oracle建表空间各种语句
在创建用户之前,先要创建表空间:其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;如:SQL> create tablespace news_tablespace datafile'F:\oracle\product\10.1.0\oradata\news\news_data.dbf' size 500M;其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:\oracle\product\10.1.0\oradata\news\news_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。
现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;如:SQL> create user news identified by news default tablespace news_tablespace;默认表空间'default tablespace'使用上面创建的表空间。
接着授权给新建的用户:SQL> grant connect,resource to news; --表示把 connect,resource权限授予news用户SQL> grant dba to news; --表示把 dba权限授予给news用户授权成功。
ok! 数据库用户创建完成,现在你就可以使用该用户创建数据表了!1.建表空间create tablespace hoteldata datafile'D:\java\Oracle\product\10.1.0\oradata\zznorcl\hoteldata.dbf'size200m autoextend on next 10m maxsize unlimited;2.建用户create user hotel identified by hotel default tablespace hoteldata account unlock;//identified by 后面的是密码,前面的是用户名3.用户授权grant resource,connect,RECOVERY_CATALOG_OWNER to hotel ;grant create table to hotel;alter user hotel quota unlimited ON OSDB;alter user hotel default tablespace hoteldata;4.删除表空间DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;5.删除用户DROP USER hotel CASCADE6.删除表的注意事项在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。
Oracle新建用户、角色,授权,建表空间的sql语句
Oracle新建⽤户、⾓⾊,授权,建表空间的sql语句oracle数据库的权限系统分为系统权限与对象权限。
系统权限( database system privilege )可以让⽤户执⾏特定的命令集。
例如,create table权限允许⽤户创建表,grant any privilege 权限允许⽤户授予任何系统权限。
对象权限( database object privilege )可以让⽤户能够对各个对象进⾏某些操作。
例如delete权限允许⽤户删除表或视图的⾏,select权限允许⽤户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。
每个oracle⽤户都有⼀个名字和⼝令,并拥有⼀些由其创建的表、视图和其他资源。
oracle⾓⾊(role)就是⼀组权限(privilege)(或者是每个⽤户根据其状态和条件所需的访问类型)。
⽤户可以给⾓⾊授予或赋予指定的权限,然后将⾓⾊赋给相应的⽤户。
⼀个⽤户也可以直接给其他⽤户授权。
Oracle创建⽤户的语法:Oracle创建⽤户(密码验证⽤户),可以采⽤CREATE USER命令。
CREATE USER username IDENTIFIED BY passwordOR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user'[DEFAULT TABLESPACE tablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK]其中,CREATE USER username:⽤户名,⼀般为字母数字型和“#”及“_”符号。
Oracle create tablespace语法详解
Oracle create tablespace语法详解CREATE [UNDO] TABLESPACE tablespace_name[DATAFILE datefile_spec1 [,datefile_spec2] ......[{MININUM EXTENT integer [k|m]|BLOCKSIZE integer [k]|logging clause | FORCE LOGGING|DEFAULT {data_segment_compression} storage_clause|[online|offline]|[PERMANENT|TEMPORARY]|extent_manager_clause|segment_manager_clause}]1、undo说明系统将创建一个回滚表空间。
在9i中数据库管理员可以不必管理回滚段,只有建立了undo表空间,系统就会自动管理回滚段的分配,回收的工作。
当然,也可以创建一般的表空间,在上面创建回滚段.不过对于用户来说,系统管理比自己管理要好很多.如果需要自己管理,请参见回滚段管理的命令详解.当没有为系统指定回滚表空间时,系统将使用system系统回滚段来进行事务管理。
//2、tablespace_name指出表空间的名称。
//3、datafile datefile_spec1指出表空间包含什么空间文件。
datefile_spec1是形如:['filename'] [SIZE integer [ K | M ]] [REUSE] [autoextend_clause][autoextend_clause]是形如:AUTOEXTEND { OFF | ON [ NEXT integer [ K | M ] ] [maxsize_clause] }其中filename是数据文件的路径名,可以是相对路径,也可以是绝对路径。
size是文件的大小,REUSE表示文件是否被重用.AUTOEXTEND表明是否自动扩展.OFF | ON 表示自动扩展是否被关闭.NEXT 表示数据文件满了以后,扩展的大小.maxsize_clause表示数据文件的最大大小.形如MAXSIZE { UNLIMITED | integer [ K | M ] }. UNLIMITED 表示无限的表空间.integer是数据文件的最大大小.DATAFILE 'D:"oracle"oradata"IMAGEDATA01.dbf' SIZE 2000M,'D:"oracle"oradata"IMAGEDATA02.dbf' SIZE 2000M//4、MININUM EXTENT integer [k|m]指出在表空间中范围的最小值。
oracle-sql语句-创建表空间、数据库
1、查看表空间的名称及大小select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name =d.tablespace_name group by t.tablespace_name;2、查看表空间物理文件的名称及大小select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;3、查看回滚段名称及大小select segment_name, tablespace_name,r.status,(initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent, max_extents, v.curext CurExtent From dba_rollback_segs r, v$rollstat v Where r.segment_id = n(+) order by segment_name ;4、查看控制文件select name from v$controlfile;获取创建表空间的sqlselectdbms_lob.substr(dbms_metadata.get_ddl('TABLESPACE',a.tablespace_name)) from dba_tablespaces a;SQL> select sid,serial# from v$session where username='TEST';alter system kill session '150,9019';查看被锁的表select object_name,machine,s.sid,s.serial#,s.event fromgv$locked_object l,dba_objects o,gv$session s wherel.object_id=o.object_id and l.session_id=s.sid;alter system kill session ‘sid,serial#’;5、查看日志文件select member from v$logfile;6、查看表空间的使用情况select sum(bytes)/(1024*1024) as free_space,tablespace_name fromdba_free_space group by tablespace_name;SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE, (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE" FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C WHEREA.TABLESPACE_NAME=B.TABLESPACE_NAME ANDA.TABLESPACE_NAME=C.TABLESPACE_NAME;Select b.tablespace_name as表空间名,b.bytes as字节数,(b.bytes-sum(nvl(a.bytes,0))) as已使用,sum(nvl(a.bytes,0)) as剩余空间,sum(nvl(a.bytes,0))/(b.bytes)*100 as 剩余百分比 fromdba_free_space a,dba_data_files b where a.file_id=b.file_id group by b.tablespace_name,b.file_id,b.bytes order by b.file_id;7、查看数据库库对象select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status;8、查看数据库的版本Select version FROM Product_component_version WhereSUBSTR(PRODUCT,1,6)='Oracle';9.查看某个表空间内所占空间大于某个值的段(表或索引):Select segment_name,bytes FROM dba_segments Where bytes>10000000 AND tablespace_name='tablespace_name';10.查看所有表空间的碎片程度(值在30以下表示碎片很多)select tablespace_name,sum(bytes),sum(free),sum(free)*100/sum(bytes) from (select b.file_idfile_ID, b.tablespace_nametablespace_name, b.bytesBytes, (b.bytes-sum(nvl(a.bytes,0)))used, sum(nvl(a.bytes,0))free, sum(nvl(a.bytes,0))/(b.bytes)*100 Per cent from dba_free_space a,dba_data_filesb where a.file_id=b.file_id group byb.tablespace_name,b.file_id,b.bytes order by b.file_id) group by tablespace_name order by sum(free)*100/sum(bytes);11.查看自上次数据库启动以来所有数据文件的读写次数select substr(,1,5) Drive, file_name, (fs.phyblkrd+fs.phyblkwrt) fromv$filestat fs,v$datafile df where df.file#=fs.file#;创建临时表空间://创建临时表空间create temporary tablespace mytest tempfile'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;//创建数据表空间create tablespace mytest_data logging datafile'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest_data.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;//创建用户并指定表空间create user testaccount identified by testpwd default tablespace mytest_data temporary tablespace mytest;//给用户授予权限grant connect,resource to testaccount; (db2:指定所有权限)12,创建一个用户:CREATE USER username IDENTIFIED BY password OR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user’[DEFAULT TABLESPACEtablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK];//查看数据库中的所有用户:select * from all_users;//orselect * from dba_users13查看oracle最大连接数:Select session_max,session_current,sessions_highwater,users_max from v$license;Select username,count(username) from v$session group by username; 加密存储过程WRAP INAME=D:\ORACLE\SOURCE\DATE.SQL ONAME=D:\ORACLE\SOURCE\DATA.PLD。
oracle创建表空间用户及授权查看权限
Oracle 创建表空间、创建用户以与授权、查看权限一、创建临时表空间# sqlplus / as sysdba;sql> CREATE TEMPORARY TABLESPACE test_tempTEMPFILE '/opt/oradata/test_temp.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;二、创建用户表空间sql> CREATE TABLESPACE test_dataLOGGINGDATAFILE '/opt/oradata/test_data.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;sql> select tablespace_name,block_size,extent_management,segment_space_managementfrom dba_tablespaceswhere tablespce_name like 'USER%';三、复原表空间sql> create undo tablespace user01_undodatafile '/u01/oracle/app/oracle/user01_undo.dbf'size 20M;sql> select tablespace_name,block_size,extent_management,segment_space_management from dba_tablespacesfrom tablespace_name like 'user01_%';sql> select tablespace_name,status,contentsfrom dba_tablespacesfrom tablespace_name like 'user01_%';四、创建用户并制定表空间sql> CREATE USER username IDENTIFIED BY passwordDEFAULT TABLESPACE TEST_DATATEMPORARY TABLESPACE TEST_TEMP;sql> GRANT role TO username;五、查看所有用户sql> SELECT * FROM DBA_USERS;sql> SELECT * FROM ALL_USERS;sql> SELECT * FROM USER_USERS;六、查看用户对象或角色权限sql> SELECT * FROM DBA_TAB_PRIVS;sql> SELECT * FROM ALL_TAB_PRIVS;sql> SELECT * FROM USER_TAB_PRIVS;七、查看所有角色sql> SELECT * FROM DBA_ROLES;八、查看用户或角色所拥有的角色sql> SELECT * FROM DBA_ROLE_PRIVS;sql> SELECT * FROM USER_ROLE_PRIVS;九、表空间脱机sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespce_name like 'user_%';sql> col name for a55sql> select file#,name,statusfrom v$datafilewhere file# >=8;设置脱机状态sql> alter tablespace user01 offline;sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespce_name like 'user01_%'; sql> select file#,name,statusfrom v$datafilewhere file# >= 8;设置联机状态sql> alter tablespace user01 online;十一、只读表空间设置只读表空间sql> alter tablespace user01 read only;sql> select tablespce_name,status,contents from dba_tablespaceswhere tablespace_name like 'user_%';可读可写sql> alter tablespace user01 read write;sql> select tablespace_name,status,contentsfrom dba_tablespacewhere tablespace_name like 'user%';十二、改变表空间的存储设置sql> alter tablespace user01 minimum extent 100K;sql> alter tablespace user01default storage ( initial 100 k next 100 k maxextents 200);sql> set line 120sql> col tablespace_name for a15sql> select tablespace_name,initial_extent,next_extent,max_extents,pct_increase,min_extentsfrom dba_tablespaceswhere tablespace_name like 'user01%';十三、重置表空间大小sql> col file_name for a40sql> set line 100sql> col tablespace_name for a15sql> select file_id,tablespace_name,file_name,autoextensible from dba_data_fileswhere file_id >= 8order by file_id;sql> alter database datafile' ' autoextend onnext 1M;sql> select file_id,tablespace_name,file_name,autoextensiblefrom dba_data_fileswhere file_id >= 8order by file_id;十四、手工重置数据文件的大小sql> select file_id,file_name,tablespace_name,bytes/(1024*1024) MBfrom dba_data_fileswhere tablespace_name LIKE 'USERS01%'order by tablespace_name;sql> alter database datafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf' resize 50M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;sql> alter tablespace use01add datafile '/u01/oracle/app/oracle/oradata/db243/use01_a.dbf'size 30M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;十五、移动数据文件的方法〔一〕、移动可以脱机的表空间# sqlplus / as sysdbasql> col file_name for a45sql> set line 120#查看数据库中数据文件的分布情况sql> select file_id,file_name,tablespace_name from dba_data_fileswhere file_name like '%ORADATA%'order by file_name;# 查看数据库表空间的状态sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespace_name not like '%USE%';# 使表空间脱机sql> alter tablespace use01 offline;# 查看更改有没有成功sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespace_name not like '%USE%';# CP 数据文件# cp /u01/oracle/app/oracle/oradata/db243/use01.dbf /u01/oracle/app/oradata#使用命令来重新命名表空间所对应的数据文件名sql> alter tablespace use01 renamedatafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf'to '/u01/oracle/app/oradata/use01.dbf';#表空间联机sql> alter tablespace use01 online;〔二〕、移动系统表空间Sql> shutdown immediatesql> startup mountsql> host cp /u01/oracle/app/oracle/oradata/db243/system01.dbf /u01/oracle/app/oradatasql> alter database renamefile '/u01/oracle/app/oracle/oradata/sb243/system01.dbf'to '/u01/oracle/app/oradata/system01.dbf';sql> alter database open;sql> select tablespace_name,status,contentsfrom dba_tablespaces;sql> select file_id,file_name,tablespace_namefrom dba_data_files;十六、迁移数据字典和本地管理的表空间Sql> connect sys/wuzihao as sysdba;sql> show user;#查看哪些表空间是数据字典管理的sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaceswhere tablespace_name like '%USE%';#将数据字典管理的表空间迁移到本地管理的表空间sql> execute dbms_space_admin.tablespace_migrate_to_local('use01');#将本地管理的表空间迁移到数据字典管理的表空间sql> execute dbms_space_admin.tablespace_migrate_from_local('use01');十七、删除表空间#查询所有创建的表空间sql> select file_id,file_name,tablespace_namefrom dba_data_fileswhere file_id > 5order by file_id;#控制文件指向的数据文件指针删除sql> drop tablespace use01;#操作系统文件也删除sql> drop tablespace use01 including contents and datafiles;#临时表空间sql> col file for a50sql> col tablespace for a15sql> set line 120#查询临时表空间sql> select f.file#,t.ts#, “File〞,t.n ame “Tablespace〞from v$tempfile f,v$tablspace twhere f.ts# = t.ts#;#删除临时表空间sql>drop tablespace use01_temp including contents and datafiles;十八、利用OMF来管理表空间# sqlplus / as sysdba#设定数据文件存放的目录sql> alter system setdb_create_file_dest = '/u01/oracle/app/oradata';sql> create tablespace test01;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_data_files;sql> alter tablespace test01 add datafile 50M;十九、应用实例#查询所有的表空间信息sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_data_files;#查看数据库表空间是数据字典管理,还是本地管理sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaces;#查询所有的临时表空间sql> select f.file#,t.ts#, “File〞, “Tablespace〞from v$tempfile f,v$tablespace twhere f.ts# = t.ts#;#创建数据表空间sql> create tablespace pioneer_datadatafile '/u01/oracle/app/oradata/pioneer_data.dbf'size 100 Mextent management localuniform size 1M;#创建索引表空间sql> create tablespace pioneer_indexdatafile '/u01/oracle/app/oradata/pionner_index.dbf'size 100Mextent management localuniform size 1M;#创建复原表空间sql> create tablespce pioneer_undodatafile '/u01/oracle/app/oradata/pioneer_undo.dbf'size 100Mextent management local;#创建临时表空间sql> create temporary tablespace pioneer_tempdatafile '/u01/oracle/app/oradata/pioneer_temp.dbf'size 50Mextent management localuniform size 2M;#验证表空间是否创建成功sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_tablespaceswhere tablespace_name like 'PION%';#验证临时表空间创建是否成功sql> select f.file#,t.ts#, “File〞, “Tablespace〞from v$tempfile f,v$tablespace twhere f.ts# = t.ts#and like 'PION%';#验证四个表空间是否本地管理,sql> select tablespace_name,block_size,extent_management, segment_space_management,min_extents,contents from dba_tablespaceswhere tablespace_name like 'PION%';。
达梦创建表空间语句
达梦创建表空间语句
达梦数据库的创建表空间语句如下:
```
CREATE TABLESPACE <表空间名>
DATAFILE '<数据文件路径>'
SIZE <初始大小>
AUTOEXTEND ON NEXT <自动扩展增量>
MAXSIZE <最大大小>;
```
其中,`<表空间名>`是要创建的表空间的名称,`<数据文件路径>`是要存储数据文件的路径,`<初始大小>`是数据文件的初始大小,`<自动扩展增量>`是数据文件的自动扩展增量,`<最大大小>`是数据文件的最大大小。
例如,以下语句会创建一个名为"MY_TABLESPACE"的表空间,存储在"/home/dm/data.dbf"路径下,初始大小为100M,自动扩展增量为100M,最大大小为2000M:
```
CREATE TABLESPACE MY_TABLESPACE
DATAFILE '/home/dm/data.dbf'
SIZE 100M
AUTOEXTEND ON NEXT 100M
MAXSIZE 2000M;
```。