【无标题】

一、修改表空间中数据文件的状态

1.任务场景:在数据应用过程中,总会碰到短期不的数据。那么我们需要站在释放资源角度,将这些数据进行归档。在数据中就是管理数据温江状态。

2.分类

online:在线,数据文件可用

offline:离线,数据文件不可用,运行在归档状态下

offline drop:数据文件不可用,运行在非归档状态下

3.格式

alter database

datafile file_name online|offline|offline drop

4.实践

例如:修改myspace02.dbf 文件状态为offline drop状态。

alter database

database 'E:\class\oracle\datafile2\myspace02.dbf' offline drop;

例如:修改myspace02.dbf数据文件状态online。

alter database

datafile 'E:\class\oracle\datafile2\myspace02.dbf' online;

通过运行测试我们可以看出,运行在非归档模式下的数据文件不可用状态是

无法直接切换成online状态的。我们需要进行介质回复才可以京数据文件状态再次切换为online状态。

第一步使用recover datafile可以进行介质恢复

recover datafile 'E:\class\oracle\datafile2\myspace02.dbf';

第二步切换状态

alter database

datafile 'E:\class\oracle\datafile2\myspace02.dbf' online;

二、移动表空间数据文件

1.任务场景在软件使用过程中会碰到数据迁移的需求,这个时候需要移动数据文件

2.步骤

第一步切换表空间的状态offline

第二步移动数据文件位置,并修改文件名

第三步给表空间说明数据文件存放位置

第四步切换表空间的状态online

3.实践

例如:移动表空间myspace02.dbf的位置。

第一步切换表空间的状态offline

alter tablespace myspace offline;

第二步移动数据文件位置(在d盘创建一个d:data),并修改文件名为myspace02.dbf

第三步给表空间说明数据文件存放位置

alter tablespace myspace

rename datafile 'E:\class\oracle\datafile2\myspace02.dbf' 

to 'E:\class\data\myspace03.dbf'

第四步切换表空间的状态online

alter tablespace myspace online;

三、表空间的删除

1.格式

drop tablespace tablespace_name

[including contents and datafiles]

2.实践

例如:删除myspace表空间以及他的数据文件

drop tablespace myspace including contents and datafiles;

四、临时表空间

1.任务场景:在使用软件的过程中因查询、订单统计产生数据也需要有暂存表空间,这个表空间就成为临时表空间。

2.格式

create temporary tablespace tablespace_name

tempfile'文件存放路径,文件名'

size

autoextend [on|off]next k|m

maxsize k|m

3.实践

例如:

创建一个临时表空间mytemp。

create temporary tablespace mytemp

tempfile  'E:\class\oracle\datafile3\mytemp.dbf'

size 10M

autoextend on next 2M

maxsize 20M;

二、创建与管理临时表空间

1.格式

create temporary tablespace tablespace__name

tempfile '文件存放路径,文件名'

size

autoextend [on|off] next k|m

maxsize k|m

tablespace group group_name;

2.实践

例如:创建临时表空间temp1、temp2,并将他们所在的组都指定为group1

create temporary tablespace temp1

 tempfile  'C:\datafile\temp1.dbf'

size 2M

tablespace group group1;

create temporary tablespace temp2

 tempfile  'C:\datafile\temp2.dbf'

size 2M

tablespace group group1;

查看临时表空间的组

 select group_name,tablespace_name

from dba_tablespace_groups

where group_name='GROUP1';

10月13日

一、移动临时表空间

1.格式

alter tablespace tablespace_name group group_name;

2.实践

例如:尝试将temp1移动到group2

alter tablespace temp1 tablespace group group2;

查看临时表空间的组

 select group_name,tablespace_name

from dba_tablespace_groups

where group_name='GROUP1';

查看临时表空间的组

 select group_name,tablespace_name

from dba_tablespace_groups

where group_name='GROUP2';

二、大文件表空间

1.任务场景

随着数量变多,更多数据块要求能够存储更多的数据。因此我们需要通过大文件表空间创建满足大数据块的需求。

普通数据块最大4M,而大文件表空间数据块4G.

2.格式

create bigfile tablespace tablespace_name

datafile 'datafile_name'

size

autoextend [on|off] next k|m

maxsize k|m

3.实践

例如:创建一个大文件表空间mybigspace.

create bigfile tablespace mybigspace

datafile  'C:\datafile\mybigspace.dbf'

size 10m;

三、非标准数据块表空间

1.任务场景:在数据存储的过程中我们会碰到数据存储容量大小个性化的需求,那么在这种情况下我们可以自行设置数据块满足我们数据存放的要求。

2.查看标准数据块大小

show parameter db_block_size;

3.数据块参数和大小对照

block        db_nk_cache_size

2kb           db_nk_cache_size

4kb           db_nk_cache_size

8kb            b_nk_cache_size

16kb          db_nk_cache_size

32kb           db_nk_cache_size

4.实践

例如:创建一个非标准数据块表空间nostandard,数据块设置为16kb。

create tablespace nostandard

datafile 'c:\datafile\nostandard.dbf'

size 5m

blocksize 16k;

通过测试我们发现,当创建非标准数据块表空间的时候如果没有提前设置数据块,他会提示报错不让完成非标准数据块表空间的创建。

第一步查看db_16k_cache_size数据块大小

show parameter db_16k_cache_size;

第二步使用设置数据完成非标准数据块大小的指定

alter system set db_16k_cache_size=20m;

第三步查看db_16k_cache_size数据块大小

show parameter db_16k_cache_size;

第四步完成非标准数据块表空间的创建

creat tablespace nostandard

datafile 'c:\datafile\nostandard.dbf'

size 5m

blocksize 16k;

10月13 日

一、设置默认表空间

1.任务场景:在安装Oracle数据库的时候,系统会自动的将users和temp设置为默认的永久表空间和临时表空间。如果用户需要将自己设置的表空间指定可用表空间,需要进行设置。

2.格式

alter database default [temporary] tablespace tablespace_name;

3.实践

例如:尝试将myspace设置为默认的永久空间,myspace设置为默认临时表空间。

第一步查看目前系统默认的永久表空间和临时表空间。

select property_name,property_value,description

from database_properties
 where property_name
 in('DEFAULT_PERMANENT_TABLESPACE','DEFAULT_TEMP_TABLESPACE');

第二步指定myspace设置为默认的永久表空间,mytemp设置为默认临时表空间

alter database default tablespace myspace;

alter database default temporary tablespace myspace;

第三步查看目前系统默认的永久表空间和临时表空间。

select property_name,property_value,description

from database_properties
 where property_name
 in('DEFAULT_PERMANENT_TABLESPACE','DEFAULT_TEMP_TABLESPACE');

二、撤销表空间

1.任务场景:在软件使用过程中,我们会碰到数据恢复的需求。即没修改的数据需要有暂时存放的空间,这个空间被我们称之为撤销表空间。

2.格式

create UNDO tablespace tablespace_name

datafile 'datafile_name'

size

autoextend [on|off] next k|m

maxsize k|m

3.实践

例如:创建一个名为myundo撤销表空间。

create UNDO tablespace myundo

datafile 'c:\datafile\myundo.dbf'

size 10m;

三、切换撤销表空间p67

1.任务场景:在数据库中可以创建很多表空间,那么哪个撤销表空间是我们目前正在使用的撤销表空间呢?

可以由数据库管理员完成切换设置。

2.格式

alter system set undo_tablespace=tablespace_name

3.实践

例如:尝试设置myundo为正在使用的撤销表空间

第一步查看目前正在使用的默认撤销表空间

show parameter undo_tablespace;

第二步设置myundo为正在使用的撤销表空间

alter system set undo_tablespace='myundo';

第三步查看目前正在使用的默认撤销表空间

show parameter undo_tablespace;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值