SQL Server数据库管理:备份参数与系统数据库详解
需积分: 24 140 浏览量
更新于2024-08-15
收藏 1.5MB PPT 举报
"SQL SERVER数据库系统管理主要涵盖了数据库的创建、管理、备份和恢复等多个方面。DBA(数据库管理员)的角色至关重要,他们需要具备SQL Server、Windows操作系统、关系型数据库理论以及SQL语言等相关技能。在备份过程中,有一些关键的参数需要理解,如INIT和NOINIT选项,以及FORMAT选项。"
在SQL SERVER数据库系统管理中,备份过程中的参数是确保数据安全性和完整性的关键。`INIT`和`NOINIT`选项决定了备份文件如何处理:
1. **指定 INIT 或 NOINIT 选项**:`NOINIT`选项允许将新的备份追加到现有的备份文件中,这意味着你可以连续添加多个备份到同一个文件,形成一个备份集。而`INIT`选项则相反,它会清除媒体集上的所有现有数据,开始一个新的独立的备份集。
2. **使用 FORMAT 选项**:这个选项强制SQL Server重写现有的媒体和备份文件内容,创建全新的备份集。如果需要开始全新的备份,或者要改变备份的目标位置,就需要使用此选项。同时,`FORMAT`选项也可以用于拆分备份集,即创建不同的物理备份文件。
DBA的工作职责不仅限于备份和恢复,还包括但不限于:
- **安装和配置SQL Server**
- **设计和维护数据库架构**
- **修复数据库错误**
- **管理用户账户和权限**
- **定期执行备份和灾难恢复计划**
- **调度自动化任务**
- **监控服务器性能并进行调优**
- **管理SQL Server复制功能**
系统数据库是SQL Server的核心组成部分,包括:
- **master**:存储所有数据库的信息,包括系统数据库和用户数据库的元数据。
- **model**:作为所有新创建数据库的基础模板。
- **tempdb**:全局临时表和一些内部操作的临时存储。
- **msdb**:用于SQL Server代理和作业调度。
- **distribution**:在复制环境中存储分配信息。
创建数据库时,需要考虑以下因素:
- **权限**:只有sysadmin和dbcreator角色的成员默认有创建数据库的权限,但可以进一步授予其他用户。
- **所有权**:创建数据库的用户成为其所有者。
- **数量限制**:单个服务器上最多可创建32,767个数据库。
- **命名规则**:数据库名必须遵循SQL Server的标识符规则。
- **创建方式**:可以通过Transact-SQL命令、企业管理器或向导来创建。
创建数据库的Transact-SQL示例:
```sql
CREATE DATABASE Sample
ON PRIMARY
( NAME = SampleData,
FILENAME = 'c:\Program Files\..\..\Data\Sample.mdf',
SIZE = 10MB,
MAXSIZE = 15MB,
FILEGROWTH = 20%
)
LOG ON
( NAME = SampleLog,
FILENAME = 'c:\Program Files\..\..\Data\Sample.ldf',
SIZE = 3MB,
MAXSIZE = 5MB,
FILEGROWTH = 1MB
);
```
这个例子中,`Sample`是数据库名,`SampleData`和`SampleLog`分别代表数据文件和日志文件的逻辑名,而`FILENAME`指定实际的物理路径。`SIZE`定义初始大小,`MAXSIZE`设置最大大小,`FILEGROWTH`则是文件增长的百分比。
SQL SERVER数据库系统管理是一项涉及广泛技术和职责的任务,需要DBA具备深厚的专业知识和实践经验,以确保数据的安全、高效和可用性。
2021-10-02 上传
2023-02-27 上传
2023-04-24 上传
2023-11-03 上传
2021-06-29 上传
2011-12-15 上传
2008-01-31 上传
2016-07-11 上传
清风杏田家居
- 粉丝: 21
- 资源: 2万+
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析