关于用户,表空间,表的参数详解

用户:

 

SYS@db1> select  dbms_metadata.get_ddl('USER','HR') from dual;

 

DBMS_METADATA.GET_DDL('USER','HR')

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

 

  CREATE USER "HR" IDENTIFIED BY VALUES '4C6D73C3E8B0F0DA'

     DEFAULT TABLESPACE "USERS"

     TEMPORARY TABLESPACE "TEMP"

创建用户的相关信息可以通过dba_users视图来查看

selectUSERNAME,USER_ID,PASSWORD,DEFAULT_TABLESPACE from dba_users where username='HR'

create USER user identified by password 通过口令方式创建用户,DEFAULTTABLESPACE 指定为用户分配的是USERS表空间,临时表空间为TEMP

 

表空间:

SYS@db1> select  dbms_metadata.get_ddl('TABLESPACE','SYSAUX')from dual;

 

DBMS_METADATA.GET_DDL('TABLESPACE','SYSAUX')

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

 

 CREATE TABLESPACE "SYSAUX" DATAFILE

 '/u01/app/oracle/oradata/db1/sysaux01.dbf' SIZE 125829120

 AUTOEXTEND ON NEXT 10485760 MAXSIZE 32767M

 LOGGING ONLINE PERMANENT BLOCKSIZE 8192

 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO

  ALTER DATABASE DATAFILE

 '/u01/app/oracle/oradata/db1/sysaux01.dbf' RESIZE 283115520

 

 

 

 

 

 

 

 

创建后表空间的属性可以通过dba_tablespaces视图查询

Select TABLESPACE_NAME,BLOCK_SIZE,CONTENTS,EXTENT_MANAGEMENT,ALLOCATION     _TYPE,SEGMENT_SPACE_MANAGEMENT fromdba_tablespaces

 

AUTOEXTEND 文件的自动扩展属性。可以通过dba_data_files视图来查询

selectTABLESPACE_NAME,AUTOEXTENSIBLE,INCREMENT_BY,MAXBYTES from dba_da     ta_files;

MAXSIZE 能为该表空间分配的最大空间。

LOGGING指定表,视图,索引等的logging 属性。该属性不行应用与undo 和temporary表空间。在表空间级别设置的logging属性可以被表等对象自身的属性覆盖。

PERMANEN该选项主要用于指定指定表空间的类型,permanent表示永久的,如果是其他类型,则写temporary或者undo。如果是创建SYSAUX表空间,则必须指定extentmanagent 类型和segmentspace management 类型。

BLOCKSIZE 为表空间指定分配的块大小。默认设置为8k。

EXTENT MANAGEMENT指定这是一个本地化管理的表空间,根据表空间中区的管理方式不同,表空间可以分为数据字典管理(Dictionarymanaged)与本地化管理(Local Managed)类型。

在数据字典管理表空间中,区大小由参数:

initial,next,minextents,maxextents,pctincrease决定。

在本地化管理中,区大小设置方式分为uniform 及autoallocate两种类型。

Uniform:区的大小相同。如果设置了uniform则pctincrease自动为0。

Autoallocate:区大小oracle自动分配。

Oracle9i之前的,通常是数据字典管理。Oracle9i及以后,通常使用本地化管理表空间。

SEGMENTSPACE MANAGEMENT定义段空间的管理方式,这个段管理仅适用于对永久性的,本地的表空间管理方式。其分为automanual方式。

RESIZE  重新指定表空间的大小,若果指定一个大文件,那么通常只要空间足够大并且未超过操作系统的权限的限制,是很简单的,但是如果需要收缩一个文件,可能会遇到如下提示。

Flashback_mode  为表空间保存闪回数据

默认为Flashback on

 

表:

SYS@db1> select dbms_metadata.get_ddl('TABLE','EMPLOYEES','HR') from dual;

 

DBMS_METADATA.GET_DDL('TABLE','EMPLOYEES','HR')

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

 

 CREATE TABLE "HR"."EMPLOYEES"

  (    "EMPLOYEE_ID"NUMBER(6,0),

       "FIRST_NAME" VARCHAR2(20),

       "LAST_NAME" VARCHAR2(25) CONSTRAINT"EMP_LAST_NAME_NN" NOT NULL ENABLE,

       "EMAIL" VARCHAR2(25) CONSTRAINT "EMP_EMAIL_NN" NOTNULL ENABLE,

       "PHONE_NUMBER" VARCHAR2(20),

       "HIRE_DATE" DATE CONSTRAINT "EMP_HIRE_DATE_NN" NOTNULL ENABLE,

       "JOB_ID" VARCHAR2(10) CONSTRAINT "EMP_JOB_NN" NOTNULL ENABLE,

       "SALARY" NUMBER(8,2),

       "COMMISSION_PCT" NUMBER(2,2),

       "MANAGER_ID" NUMBER(6,0),

       "DEPARTMENT_ID" NUMBER(4,0),

       "DEPARTMENT_NAME" VARCHAR2(20),

        CONSTRAINT "EMP_SALARY_MIN" CHECK (salary > 0) ENABLE,

        CONSTRAINT "EMP_EMAIL_UK" UNIQUE ("EMAIL")

 USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOLOGGING COMPUTESTATISTICS

 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645

 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)

 TABLESPACE "EXAMPLE" ENABLE,

        CONSTRAINT"EMP_EMP_ID_PK" PRIMARY KEY ("EMPLOYEE_ID")

 USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOLOGGING COMPUTESTATISTICS

 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645

 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)

 TABLESPACE "EXAMPLE" ENABLE,

        CONSTRAINT "EMP_MANAGER_FK" FOREIGN KEY("MANAGER_ID")

         REFERENCES "HR"."EMPLOYEES"("EMPLOYEE_ID") ENABLE,

        CONSTRAINT "EMP_JOB_FK" FOREIGN KEY ("JOB_ID")

         REFERENCES "HR"."JOBS" ("JOB_ID") ENABLE,

        CONSTRAINT "EMP_DEPT_FK" FOREIGN KEY("DEPARTMENT_ID")

         REFERENCES "HR"."DEPARTMENTS"("DEPARTMENT_ID") ENABLE

   )PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS NOLOGGING

 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645

 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)

 TABLESPACE "EXAMPLE"  

NOT NULL ENABLE   约束性条件   不允许该列属性为空值。

CONSTRAINT "EMP_SALARY_MIN" CHECK(salary > 0) ENABLE约束性条件,salary>0.

CONSTRAINT "EMP_EMAIL_UK" UNIQUE("EMAIL")    约束性条件  EMP_EMAIL_UK必须唯一

CONSTRAINT "EMP_EMP_ID_PK"PRIMARY KEY ("EMPLOYEE_ID") 约束性条件

EMPLOYEE_ID为表employees的主键。

 Pctfree:默认值是10,如果数据块的使用率高于pctfree的值,则该数据块从freelist中移出。

 Pctused:默认值是40,如果数据块的使用率小于pctused的值,则该数据块重新加入到fresslist中。Pctfree,Pctused是互相消涨的, 其和不能超过100

 

 Initrans:默认值1,该参数表示在单一块中最初活动的交易事务数。

 Maxtrans:默认值是255,表示在单一块中最大交易事务数。

NOLOGGING 指定该表的logging属性。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值