如何修改SQL Server 2005 / 2008 的默认数据路径

现在SQL Server的版本已经到了2019,所以现在记录这样一个方法,显然已经落伍了;

只是想从搜索引擎找到一篇能够立即解决这个问题的答案,还是挺难的,所以我还是记录一下我的实际操作,以备后查;

补:

版本的变化,不影响路径构所的原理

一、如何查看当前系统安装的SQL Server相关信息

安装了SQL Server后,会有一个SQL Server配置管理器(SQL Server Configuration Manager)

双击打开显示如下窗口:

在 SQL Server(MSSQLSERVER) 项上右击鼠标后选“属性”,于弹出窗口中选择高级,显示如下结果:

窗口中,实例ID, 安装路径, 数据路径,注册表根目录 是我们当前安装的SQL Server的关键信息

二、文件位置和注册表映射

 

完整参考官方文档《SQL Server 默认实例和命名实例的文件位置》后了解到数据库引擎的实例ID的构成规则 :

MSSQL,后面依次跟有主版本号、下划线和次版本号(如果适用)、一个句点以及实例名。

依此构成即可理解自己实例ID(如上图所示 MSSQL10_50.MSSQLSERVER)的怎么来的;

这里强调的一点就是,每个人的实例ID 根据所安装的 SQL Server版本以及实例名,其构成是不一样的;所以在看别人文章时,要理解别人分享的操作过程与自身情况的不同,而不能直接拿来主义!

实例ID是构成安装路径、数据路径、注册表根目录的主要标识,具体请认真参考上面提到的官方文档;

三、如何修改默认的数据路径

 

很多人推荐使用在SSMS执行xp_instance_regwrite等命令操作注册表,复杂了,我个人建议直接使用注册表进行修改,简单明了;只是修改前,最后做一下注册表备份;

上面提到了注册表根目录,根据其值,定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER,其项目下有:

BackupDirectory: 备份数据时的默认存储路径

DefaultData:默认存储路径

DefaultLog:默认日志路径

修改其对应的路径即可完成相应的设置;

SQL Server Management Studio (SSMS) 中新建查询,测试下面的语句,看新指定的BackupDirectory目录下,是否生成了对应的备份文件:

 backup database SQLTestDB to DISK='SQLTestDB.bak' 

这些设置,只对设置后新创建的数据库有用,在这之前创建的数据库,如果需要变更路径(通常情况下默认路径都在系统盘(C盘),这容易因为系统盘可用空间所剩越来越小而问题不断,所以变更路径有其必要性),建议阅读官方文档 Quickstart: Backup and restore a SQL Server database,文档很详细,这儿就不再重复了。

发表评论

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