创建数据库时数据文件和日志文件需要设置的参数有哪些?(6个)

创建数据库时数据文件和日志文件需要设置的参数有哪些?(6个),第1张

--修改数据库文件增量

USE master

GO

Alter DATABASE Test

MODIFY FILE

(NAME = test,

-- SIZE = 1000MB,

--MAXSIZE = 10000MB,

FILEGROWTH = 100MB)

GO

--修改数据库日志文件增量

USE master

GO

Alter DATABASE Test

MODIFY FILE

(NAME = test_log,

-- SIZE = 1000MB,

--MAXSIZE = 10000MB,

FILEGROWTH = 100MB)

GO

参考以下内容:

[c-sharp]view plaincopyprint?

/*

一般的虚拟主机上,附送的sql server数据库都是限制了大小,比如100M。当你的数据库空间达到了指定的100M时,插入新数据就会报错:

未能为数据库 'a1116173958' 中的对象 'fc_Info' 分配空间唤昌,因为文件组 'PRIMARY' 已满

其实,有些主机商的数据库大小是可以自己修改的。当然,修改之前你需要知道数据库名(这里是逻辑名称),一般的这个名称是很容易知道的,就是数据库名称。

你可以尝试下在自己编亩帆写的程序中,或空间的管理后台中等可以执行sql语句的地方试一下下面的语句:

Alter DATABASE 数据库名

modify FILE

( NAME = 数据库名,

MAXSIZE = 200MB,

FILEGROWTH = 5MB)

如果执行成功,那么恭喜你了。

========我是分割线============================================

下面是Alter DATABASE的一些参考资料,详细可以查看sql server帮助。

在数据库中添加或删除文件和文件组。也可用于更改文件和文件组的属性,例如更改文迅链雹件的名称和大小。Alter DATABASE 提供了更改数据库名称、文件组名称以及数据文件和日志文件的逻辑名称的能力。

Alter DATABASE 支持数据库选项的设置。在早期版本的 Microsoft® SQL Server™ 中,这些选项可以通过 sp_dboption 存储过程来设置。在此次发布的版本中,SQL Server 继续支持 sp_dboption存储过程,但在未来版本中可能不再支持。可使用 DATABASEPROPERTYEX 函数检索数据库选项的当前设置。

语法

Alter DATABASE database

{ ADD FILE <filespec >[ ,...n ] [ TO FILEGROUP filegroup_name ]

| ADD LOG FILE <filespec >[ ,...n ]

| REMOVE FILE logical_file_name

| ADD FILEGROUP filegroup_name

| REMOVE FILEGROUP filegroup_name

| MODIFY FILE <filespec >

| MODIFY NAME = new_dbname

| MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name }

| SET <optionspec >[ ,...n ] [ WITH <termination >]

| COLLATE <collation_name >

}

<filespec >::=

( NAME = logical_file_name

[ , NEWNAME = new_logical_name ]

[ , FILENAME = 'os_file_name' ]

[ , SIZE = size ]

[ , MAXSIZE = { max_size | UNLIMITED } ]

[ , FILEGROWTH = growth_increment ] )

<optionspec >::=

<state_option>

| <cursor_option >

| <auto_option >

| <sql_option >

| <recovery_option >

<state_option >::=

{ SINGLE_USER | RESTRICTED_USER | MULTI_USER }

| { OFFLINE | ONLINE }

| { READ_ONLY | READ_WRITE }

<termination >::=

ROLLBACK AFTER integer [ SECONDS ]

| ROLLBACK IMMEDIATE

| NO_WAIT

<cursor_option >::=

CURSOR_CLOSE_ON_COMMIT { ON | OFF }

| CURSOR_DEFAULT { LOCAL | GLOBAL }

<auto_option >::=

AUTO_CLOSE { ON | OFF }

| AUTO_Create_STATISTICS { ON | OFF }

| AUTO_SHRINK { ON | OFF }

| AUTO_Update_STATISTICS { ON | OFF }

<sql_option >::=

ANSI_NULL_DEFAULT { ON | OFF }

| ANSI_NULLS { ON | OFF }

| ANSI_PADDING { ON | OFF }

| ANSI_WARNINGS { ON | OFF }

| ARITHABORT { ON | OFF }

| CONCAT_NULL_YIELDS_NULL { ON | OFF }

| NUMERIC_ROUNDABORT { ON | OFF }

| QUOTED_IDENTIFIER { ON | OFF }

| RECURSIVE_TRIGGERS { ON | OFF }

<recovery_option >::=

RECOVERY { FULL | BULK_LOGGED | SIMPLE }

| TORN_PAGE_DETECTION { ON | OFF }

5.1 创建数据文件大旁行塌小20M的表空间

>CREATE TABLESPACE usertbs1 datafile

'D:\tmp\usertbs1.DBF' SIZE 20M

5.2 区定制分配

>CREATE TABLESPACE usertbs1 datafile

'D:\tmp\usertbs1.DBF' SIZE 20M

EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K

5.3 每次自动扩展1M,最大值为100MB

>ALTER DATABASE DATAFILE

'D:\tmp\usertbs1.DBF'

AUTOEXTEND ON NEXT 1M MAXSIZE 100M

5.4 创建临时表空间

>CREATE TEMPORARY TABLESPACE temptbs TEMPFILE

'D:\tmp\带历temptbs.DBF' SIZE 20M

EXTEND MANAGEMENT LOCAL UNIFORM SIZE 10M

/*设置当前默认表空间*/

>ALTER DATABASE DEFAULT TABLESPACE temptbs

5.5 对表空间联机脱机

>ALTER TABLESPACE usertbs1 OFFLINE

>ALTER TABLESPACE usertbs1 ONLINE

5.9 为表空间添加数据文件

>ALTER TABLESPACE usertbs1 ADD DATAFILE

'D:\tmp\USERS05.DBF' SIZE 50M

10题与9题一样

5.12 数据文件更名

>ALTER TABLESPACE usertbs1 OFFLINE

手动改数据文件名为 USERS005.DBF

>ALTER TABLESPACE usertbs1 RENAME DATAFILE

'D:\tmp\USERS05.DBF' TO

'D:\tmp\USERS005.DBF'

>ALTER TABLESPACE usertbs1 ONLINE

5.14 添加重做日志组,包含redo5a.log和redo5b.log,大运圆小为5MB

>ALTER DATABASE ADD LOGFILE GROUP 4

('D:\tmp\redo5a.log', 'D:\tmp\redo5b.log')

SIZE 5M

5.15 添加日志文件成员

>ALTER DATABASE ADD LOGFILE MEMBER

'D:\tmp\redo5c.log' TO GROUP 4

5.16 切换归档模式且自动归档

>SHUTDOWN IMMEDIATE

>STARTUP MOUNT

>ALTER DATABASE ARCHIVELOG

>ALTER DATABASE OPEN

5.17 设置数据库归档路径

>ALTER SYSTEM SET db_recovery_file_dest="D:\ORACLE\BACKUP"

6.2 建表

>CREATE TABLE exer_class(

CNO NUMBER(2) PRIMARY KEY,

CNAME VARCHAR(20),

NUM NUMBER(3)

)

>CREATE TABLE exer_studnet(

SNO NUMBER(4) PRIMARY KEY,

SNAME VARCHAR(10) UNIQUE,

SAGE NUMBER,

SEX CHAR(2),

CNO NUMBER(2)

)

6.3 添加检查约束

>ALTER TABLE exer_studnet ADD

CONSTRAINT S_CK CHECK (SAGE BETWEEN 0 AND 100)

6.4 取值为M或F,默认M

>ALTER TABLE exer_studnet ADD

CONSTRAINT SEX_CK CHECK(SEX IN ('M','F'))

>ALTER TABLE exer_studnet MODIFY SEX DEFAULT 'M'

6.5 建立唯一索引

>CREATE UNIQUE INDEX class_name_index ON exer_class(CNAME)

6.6 创建视图

>CREATE VIEW cl_stu_view as

SELECT c.CNO, c.CNAME, s.SNO, s.SNAME FROM exer_class c, exer_studnet s

WHERE s.CNO=c.CNO

6.7 创建序列

>CREATE SEQUENCE no_seq START WITH 100000001 INCREMENT BY 1 NOCACHE NOCYCLE

6.8 表格分区

>CREATE TABLESPACE EXAMPLE DATAFILE

'D:\tmp\EXAMPLE.DBF' SIZE 50M

>CREATE TABLESPACE ORCLTBS1 DATAFILE

'D:\tmp\ORCLTBS1.DBF' SIZE 50M

>CREATE TABLESPACE ORCLTBS2 DATAFILE

'D:\tmp\ORCLTBS2.DBF' SIZE 50M

>CREATE TABLE exer_student_range(

SNO NUMBER(4) PRIMARY KEY,

SNAME VARCHAR(10) UNIQUE,

SAGE NUMBER,

SEX CHAR(2),

CNO NUMBER(2)

)

PARTITION BY RANGE(SAGE)(

PARTITION P1 VALUES LESS THAN (20) TABLESPACE EXAMPLE,

PARTITION P2 VALUES LESS THAN (30) TABLESPACE ORCLTBS1,

PARTITION P3 VALUES LESS THAN (MAXVALUE) TABLESPACE ORCLTBS2

)

6.9 按性别分区

>CREATE TABLE exer_student_list(

SNO NUMBER(4) PRIMARY KEY,

SNAME VARCHAR(10) UNIQUE,

SAGE NUMBER,

SEX CHAR(2),

CNO NUMBER(2)

)

PARTITION BY LIST(SEX)(

PARTITION male VALUES('M') TABLESPACE ORCLTBS1,

PARTITION female VALUES('F') TABLESPACE ORCLTBS2

)

6.10 本地分区索引

>CREATE INDEX student_local ON exer_student_range(SAGE) LOCAL

在Oracle数据库中,有一种日志文件叫做重做日志文件,他就是大家俗称的:redolog。在redolog中又分为两种:在线重做日志与归档日志。

ONLINE Redo log

在线重做日志(online redo log )主要用于:Oracle数据库所在服务器突然掉电、突然重启或者执行shutdown abort等命令使得在服务器重新启动之后,Oracle数据库没有办法正常的启动实例。此时,在线重做日志就派上了用场,Oracle会使用在线重做日志,把数据库恢复到服务器掉电前的那一个时刻,从而使得数据库能正常的启动起来 。

在Oracle数据库厅携中,默认情况下,至少会有两个重做日志组,而且每个组里面至少包含了一个重做日志文件。日志组不会自动增加陵轮,在一个写满之后,会自动去写下一个。在下一个被写满之后会又从第一个开始写起。

Archive redo log

归档日志(archive log)主要用于硬件级别的错误:磁盘的坏道导致无法读写、写入的失败、磁盘受损导致数据库数据丢失。这就要使用归档日志文件,通过归档日志文件,把数据尺伏信库恢复到归档日志所在的时间点上然后再通过在线重做日志文件把数据库恢复到当前的时间点上。

对于归档日志文件,可以理解为在线重做日志文件的备份。即当一个重做日志文件被填满了之后,归档日志文件就会把其备份保留一份。(因为上面说了,在线重做日志文件会自动的覆盖)所以,归档日志文件就是旧的在线日志文件的备份。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/bake/11974372.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存