暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
重新生成系统数据库 .pdf
80
8页
1次
2023-12-06
10墨值下载
重新⽣成系统数据库
项⽬
2023/09/03
11 个参与者
反馈
本文内容 限制和约束 重新⽣成系统数据库 重新⽣成后的任务 重新⽣成 resource 数据库 显⽰另外
4
适⽤于: SQL Server
必须重新⽣成系统数据库才能修复 master model msdb resource 系统数据库中的损坏问
题或者修改默认的服务器级排序规则。 本文章提供如何在 SQL Server 中重新⽣成系统数据库的
分步说明。
限制和约束
重新⽣成 master model msdb tempdb 系统数据库时,将删除这些数据库,然后在其
原位置重新创建。 如果在重新⽣成语句中指定了新排序规则,则将使⽤该排序规则设置创建系统
数据库。 ⽤户对这些数据库所做的所有修改都会丢失。 例如,你在 master 数据库中的⽤户定
义对象、 msdb 中的预定作业或 model 数据库中对默认数据库设置的更改都会丢失。
先决条件
在重新⽣成系统数据库之前执⾏下列任务,以确保可以将系统数据库还原⾄它们的当前设置。
1. 记录所有服务器范围的配置值。
SQL复制
2. 记录所有应⽤到 SQL Server 实例和当前排序规则的修补程序。 重新⽣成系统数据库后必须
重新应⽤这些修补程序。
SQL复制
SELECT * FROM sys.configurations;
SELECT
SERVERPROPERTY('ProductVersion ') AS ProductVersion,
SERVERPROPERTY('ProductLevel') AS ProductLevel,
SERVERPROPERTY('ResourceVersion') AS ResourceVersion,
SERVERPROPERTY('ResourceLastUpdateDateTime') AS ResourceLastUpdateDateTime,
SERVERPROPERTY('Collation') AS Collation;
3. 记录系统数据库的所有数据文件和⽇志文件的当前位置。 重新⽣成系统数据库会将所有系
统数据库安装到其原位置。 如果已将系统数据库数据文件或⽇志文件移动到其他位置,则
必须再次移动这些文件。
SQL复制
4. 找到 master model msdb 数据库的当前备份。
5. 如果将 SQL Server 的实例配置为复制分发服务器,请找到该 distribution 数据库的当
前备份。
6. 确保您有重新⽣成系统数据库的相应权限。 必须是 sysadmin 固定服务器⾓⾊的成员才能
执⾏此操作。 有关详细信息,请参阅 服务器级别⾓⾊
7. 请验证本地服务器上是否有 master model msdb 数据模板文件和⽇志模板文件的副
本。 模板文件的默认位置是 C:\Program Files\Microsoft SQL
Server\MSSQL<xx>.MSSQLSERVER\MSSQL\Binn\Templates (其中 <xx> 是已安装的版
本)。 在重新⽣成过程中要⽤到这些文件,⽽且若想让安装成功这些文件必须存在。 如果
缺少这些文件,请运⾏安装程序的修复功能或者⼿动从安装介质中复制这些文件。 若要
在安装介质上找到文件,请导航到相应的平台⽬录(x86 x64),然后导航到
setup\sql_engine_core_inst_msi\Pfiles\SqlServr\MSSQL.X\MSSQL\Binn\Temp
lates
重新⽣成系统数据库
以下过程将重新⽣成 master model msdb tempdb 系统数据库。 ⽆法指定要重新⽣成
哪些系统数据库。 对于群集实例,必须在主动节点上执⾏此过程,并且在执⾏此过程之前,必须
先使相应群集应⽤程序组中的 SQL Server 资源脱机。
此过程不重新⽣成 resource 数据库。 请参阅本文章后⾯的 重新⽣成资源系统数据库 部分。
重新⽣成 SQL Server 实例的系统数据库
1. SQL Server 安装介质插入到磁盘驱动器中,或者在本地服务器上,从命令提⽰符处将⽬
录更改为 setup.exe 文件的位置。 SQL Server 2022 (16.x) 服务器上的默认位置为
C:\Program Files\Microsoft SQL Server\160\Setup
Bootstrap\SQLServer2022
2. 在命令提⽰符窗⼝中,输入以下命令。 ⽅括号⽤来指⽰可选参数。 不要输入⽅括号。
使⽤ Windows 操作系统且启⽤了⽤户帐户控制 (UAC) 时,运⾏安装程序需要提升特权。
须以管理员⾝份运⾏命令提⽰符。
控制台复制
SELECT name, physical_name AS current_file_location
FROM sys.master_files
WHERE database_id IN (DB_ID('master'), DB_ID('model'), DB_ID('msdb'),
DB_ID('tempdb'));
of 8
10墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜