Oracle学习笔记,SQLSEENCOREVE本田CR-V文件组误脱机后什么联合

数据库的操作:

场景:在学习文件组的恢复过程中,通过

sqlserver里对数据库文件的管理比较简单,主要的概念有:

  1. 对数据文件的操作(添加,删除,修改文件的初始大小,最大大小,步长)

  2. 数据库文件的收缩

  3. 数据库的只读/读写 read_only只读 read_write可读写 read_only表示只读
    read_write表示可读可写

  4. 数据库的限制访问(单用户,多用户,限制用户模式)

ALTER DATABASE TEST MODIFY FILE(NAME = SUBF,OFFLINE)

  1.文件组。数据库对象的存储分配单位
。目的是为了容纳更多的数据库文件、扩展空间

5.数据库脱机/联机 offline 脱机 alter database love set offline online
联机 alter database love set online

把文件组给弄脱机了。这时却发现脱机之前忘记备份了。

  2.文件。文件组的成员,有空间分配是否自动增长的管理

  1. 数据库附加/分离。 sp_attach_db 附加 SP_detach_db 分离 附加
    sp_attach_db 分离 sp_detach_db offline 脱机 online 联机

这时该如何恢复该脱机的文件组呢?

  3.默认文件组

本文重点给大家介绍SQL server数据库创建代码
filegroup文件组修改,实例代码详解如下所示:

 

  4.只读文件组。这是在sqlserver2005后才有的概念,sqlserver2000没有!

以下示例在 SQL Server
实例上创建了一个数据库。该数据库包括一个主数据文件、一个用户定义文件组和一个日志文件。主数据文件在主文件组中,而用户定义文件组包含两个次要数据文件。ALTER DATABASE语句将用户定义文件组指定为默认文件组。然后通过指定用户定义文件组来创建表。

同样的命令没有ONLINE选项:

  5.master、tempdb数据库。用于基本的字典、临时空间管理

USE master;GO-- Create the database with the default data-- filegroup and a log file. Specify the-- growth increment and the max size for the-- primary data file.CREATE DATABASE MyDBON PRIMARY( NAME='MyDB_Primary',FILENAME='c:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLdataMyDB_Prm.mdf',SIZE=4MB,MAXSIZE=10MB,FILEGROWTH=1MB),FILEGROUP MyDB_FG1( NAME = 'MyDB_FG1_Dat1',FILENAME ='c:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLdataMyDB_FG1_1.ndf',SIZE = 1MB,MAXSIZE=10MB,FILEGROWTH=1MB),( NAME = 'MyDB_FG1_Dat2',FILENAME ='c:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLdataMyDB_FG1_2.ndf',SIZE = 1MB,MAXSIZE=10MB,FILEGROWTH=1MB)LOG ON( NAME='MyDB_log',FILENAME ='c:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLdataMyDB.ldf',SIZE=1MB,MAXSIZE=10MB,FILEGROWTH=1MB);GOALTER DATABASE MyDB MODIFY FILEGROUP MyDB_FG1 DEFAULT;GO-- Create a table in the user-defined filegroup.USE MyDB;CREATE TABLE MyTable( cola int PRIMARY KEY,colb char(8) )ON MyDB_FG1;GO
ALTER DATABASE TEST MODIFY FILE(NAME = SUBF,ONLINE)

oracle里对数据库文件的管理就比较复杂了,基本的概念:

总结

消息 155,级别 15,状态 1,第 1 行
‘ONLINE’ 不是可以识别的 CREATE/ALTER DATABASE 选项。

  1.表空间

以上所述是小编给大家介绍的SQL server数据库创建代码
filegroup文件组修改,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

 

  2.表空间的数据文件成员

修改数据库脱机,联机后,脱机的文件组还是脱机状态。

  3.默认表空间

ALTER DATABASE TEST SET OFFLINE
ALTER DATABASE TEST SET ONLINE

  4.只读表空间

 

  5.脱机表空间

分离数据库再附加数据库,脱机的文件组也仍然是脱机状态。

  6.脱机表空间数据文件成员

 ———————————————————————————

  7.system、sysaux、undo、temporary表空间专门作为数据自动、undo、临时空间存在

其实,把文件恢复就可以了(哪怕没有备份也可以执行):

  8.bigfile文件

RESTORE DATABASE TEST FILE='SUBF' WITH RECOVERY

  9.对空间进行[logging|nologging|force logging]

 ———————————————————————————

从上的基本对比中:

补充另一个由桦仔提供的文件替换大法:

  1.oracle的空间管理有sqlserver所没有的许多特性

  1. 将数据库分离 ( sp_detach_db ‘xx’)

  2. 将数据库的所有文件移个位置

  3. 按照原来的文件颁创建一个同名空库

  4. 将空库 OFFLINE ( alter database xx set offline )

  5. 将步骤2移走的文件移回来,替换掉步骤3创建的空库产生的对应文件

  2.oracle的管理变得复杂了。其实某些特性完全可以依赖于os,也许这就是oracle为了平台无关所做的妥协吧

北京pk赛车官网下载,6. 将数据库 online ( alter database xx set online ), 如果不能 online, 可以试试先设置为 emergency 状态

 

以上方法已经测试过能通过。

oracle表空间的基本要素

 

  1.性质:用户的永久表空间、undo表空间、temporary表空间

  2.是否使用bigfile特性

  3.名称

  4.表空间文件成员,如果使用bigfile特性,只能使用一个文件成员:datafile、tempfile

  5.是否记录日志:logging、nologging、force
logging。不能用户temporary、undo表空间上

  6.是否联机:noline、offline

  7.数据块尺寸:blocksize
{2k、4k……}。必须要相应配置db_nk_cache_size初始化参数。且值不能小于os的块大小!temporary表空间不能使用非标准的数据块!

  8.扩展区管理模式:extent management {dictionary|local
[autoallocate|uniform [size n[m|k|g..]]
]}。注意temporary、undo表空间各有特殊要求!

  9.段管理模式:segment space management
{auto|manual}。不能用户temporary、undo表空间上

  10.闪回特性是否打开:flashback
{on|off}。不能用户temporary、undo表空间上

  11.闪回保留模式:retention {guarantee|noguarantee}

oracle的和表空间相关的基本操作

  0.注意:

    1.temporary表空间只能使用add tempfile file-spec一个语句

    2.undo表空见可以修改的地方也十分有限

    3.system表空间不允offline 和 read

    ……

  1.增加表空间:create [bigfile] tablespace tbs_name datafile
file-spec,..

  2.修改表空间:增加、删除文件:alter tablespace tbs_name
{add|drop} {datafile|tempfile}file-spec,..

  3.修改表空间:移动、重命名文件:alter tablespace tbs_name rename
datafile  file-spec,.. to file-spec,..

  4.修改表空间:联机、脱机文件:alter tablespace tbs_name 
{datafile|tempfile}{online|offline}

  5.修改表空间:表空间名称:alter tablespace tbs_name rename to
new_tabs_name

  6.修改表空间:日志模式:alter tablespace tbs_name
{logging|nologging|[no] force logging}

  7.修改表空间:表空间联机、脱机模式:alter tablespace tbs_name
{online|offline}

  8.修改表空间:修改读、写模式:alter tablespace tbs_name read
{only|write}

  9.修改表空间:修改闪回模式:alter tablespace tbs_name flashback
{on|off}

  10.修改表空间:修改闪回数据保留模式:alter tablespace tbs_name
retention{guarantee|noguarantee}

  11.修改表空间:修改bigfile文件的尺寸:alter tablespace tbs_name
resize n{k|m|g|t}

  12.修改表空间:修改bigfile文件的区自动扩展模式:alter tablespace
tbs_name autoextend {off|on [next n maxsize [m|unlimited] ]}

  13.修改表空间:修改temporary空间的组模式:alter tablespace tbs_name
group {group_name|‘’}

  14.修改表空间:在permanent 和 temporary模式间转换:alter tablespace
tbs_name
{permanent|temporary}。转化前需要考虑temporay表空间的诸多限制,否则不会成功

  15.修改表空间:修改是否在线backup模式:alter tablespace tbs_name
{begin|end} backup

  16.修改表空间:修改读、写模式:alter tablespace tbs_name read
{only|write}

  17.设置默认表空间:alter database set default [temporary]
tablespace tbs_name

  18.删除表空间:drop tablespace tbs_name [including contents
[{and|keep} datafiles]]  [cascade contraints]

  19.omf管理方式。只要设置db_create_file_dest即可。并且可以和用户定义方式混合使用

  20.查询表空间的基本信息:select * from dba_tablespaces;select *
from v$tablespace;

  21.查询表空间数据文件的基本信息:select * from
dba_data_files;select * from v$datafile;

  22.查询temporary表空间、数据文件的基本信息:select * from
dba_temp_files;select * from v$tempfile;select * from
dba_tablespace_groups;

 

  23.修改数据库:修改数据、临时文件的大小:alter database
{datafile|tempfile} file-spec,.. resize
n{k|m|g|t}。不限于bigfile或smallfile。

  24.修改数据库:修改数据、临时文件的区自动扩展模式:alter database
{datafile|tempfile} file-spec,.. autoextend {off|on [next n
maxsize [m|unlimited] ]}。不限于bigfile或smallfile。

  25.修改数据库:移动、重命名文件:alter database rename file 
file-spec,.. to file-spec,..

  26.修改数据库:联机、脱机文件:alter database {datafile|tempfile}
file-spec,..{online|offline}。如果是datafile offline 可以 选择 for
drop

  27.修改数据库:删除tomporay文件:alter database tempfile
file-spec,.. drop  [including datafiles]

  28.修改数据库:创建datafile文件:alter database create datafile  {
file-spec,.. | newfilenumber} as {file-spec,.. | new

  29.修改数据库:重命名redo文件:alter database rename
redo-file-spec,.. to redo-file-spec,..

  30.修改数据库:创建redo文件组:alter database add [standby]
logfile [group n]  redo-file-spec,..

  31.修改数据库:创建redo文件组成员:alter database  add [standby]
logfile member redo-file-spec,… to group n

  32.修改数据库:删除redo文件组:alter database  drop [standby]
logfile { redo-file-spec|group n

  33.修改数据库:删除redo文件组成员:alter database  drop [standby]
logfile member redo-file-spec,…

  34.修改数据库:创建物理、逻辑 standby controlfile文件:alter
database  create [logical|physical] standby controlfile as
ctlfilespec [reuse]

  35.修改数据库:备份controlfile到指定的全路径文件:alter database
backup controlfile to   ctlfilespec [reuse]

  36.修改数据库:备份controlfile到指定的、或默认的跟踪文件:alter
database backup controlfile to trace [as ctlfilespec ] [reuse]
[{resetlogs|noresetlogs}]

  37.修改数据库:删除redo文件组成员:alter database 

 

 

附记:oracle数据库文件的管理

  oracle的数据库文件,用在以下语句上:

    1.create database

    2.alter database

    3.create controlfile

    4.create tablespace

    5.alter tablespace

  oracle的数据库文件主要有两种类型:datafile_tempfile、redo_logfile。其主要区别在于:redo_logfile文件不能自动autoextend!

  指定数据库文件的主要规范如下:

    ‘full_path_filename’  [size n]  [reuse]  [autoextend
{off|on next maxsize {unlimited|m}}]

    注意:

      size
可以有多种文字单位{k|m|g|t|p|..},但是如果不指定单位,就是byte字节

      对于undo表空间的文件,必须指定size。其他的表空间如果文件已经存在
或者 使用 omf 可以不指定size     

      如果忽略autoextend :

                对于omf,如果指定了size
则禁止扩展;否则自动扩展

                对于用户定义的文件,禁止

      ……………………….苍天啊、大地啊,默认全部都是自动多好啊!!!…………………………………..

 

 

 

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注