《SQLserver2008系统数据库的迁移29217.pdf》由会员分享,可在线阅读,更多相关《SQLserver2008系统数据库的迁移29217.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQLSERVER20I08系统数据库迁移 意义:一、就是从C盘移动其他分区、从这个硬盘移动其他硬盘,数据库还能度 三、为一般数据库的迁移做准备 系统数据库迁移主要迁移以下数据库 第一类:tempdb,model 和 msdb 第二类:master,mssqlsystemresource 具体的迁移步骤:、对丁 master 数据库 默认SQL Server安装完成后,SQL Server的4个系统数据库(Master,Model,MSDB 和TempDB都会被自动安放在安装路径下,也就是系统盘的 Program Files 文件夹下。所带来的问题就是绝大多数数据库服务器为了同时照顾到性能,成
2、本和高可用性这三个 方面,都会将系统安装在一个 Raid1阵列上,通常这个 Raid1阵列还不一定会用上15K 的SA有的只是用10K的SA更有甚者,为了成本,装 2个7.2K的SATA也就完事 了。再加上Raid1阵列本身就是一种读取性能非常强,但是写入性能相当差的阵列形式,所以,对于系统数据库,尤其是对 TempDB据库来说,是非常不利的,也肯定会对整 个SQLServer的性能造成影响。所以将系统数据库迁移到性能更加高的阵列上,正 解决硬件性能瓶颈的基础解决方案。卜面就像大家介绍一下如何将系统数据库迁移到其他分区上(以 2008 R2 为例):1首先迁移master数据库,master数
3、据库是整个 SQL Server实例的核心,所有 的设置都存放在 master数据库里,如果 master数据库出现问题,整个实例都将瘫 痪。首先打开 SQL Server Configuration Manager,在左边的列表框中选中 SQL Server Services 节点,然后在右边的列表框中找到需要迁移系统数据库的实例的 那个SQLServer服务,比如说SQLServer(MSSQLSERVR停止这个实例的服务(不 会停的去菜场买块豆腐撞死算了),然后右键单击,选中最底下的“Properties”,并且切换到Advanced标签,如下图所示:SQL Server MSSQISF
4、RVER Properties Log On Service|FILESTKEAM Advanoed _:_ _ 曰 Advanced|Clustered No Customer Feedback Reporting No Data Path Q pgr日 e F曰此忡tTDgft SQL Se Dump Directory C:program Files licrooft SQL Se Error Reporting No 曰个 Microsoft SQLServer Fde.ersion 2C0 7.100.1600.22 Install Path Cffrogram Files Micr
5、osoft SQL Se Instance ID MSSQL 10.MSSQLSERVER Language 1033 Registry Root SoftA areicrosoftMroeoft SQ Runnir under 64 bit 05 No Service Pack Level Q SQL States 2099205 Startup ParaJnetefs dCiVogrann Files Yiaosoft SQL:沁 ck Keepirig Wit D-211799 5 310 Clustered Indicates whether SQL Sef/er is part of
6、 a duster or not.(X|Cancel|叩珈 I Help 2 看到Startup Parameters 了吧,这里的参数就是需要我们更改的。如下图 所示:kC:Trograrri FiesMicrosoft SQL ServerV*1SSQL 10.MSSQLSERVERMSSQL)ATAnaster.mdf:-eC:program FilesylKTOsoft SQL Server ISSQLIO.MSSQLSERVER 州 SSQL Rg 归职 ORLOG;-lC:pg ram Files Microsoft SQL Server 诉l$QL 1。.MS5QLS ERER
7、ISSQL 心 ATA jd 把这段字符整理一下就是这样:-dC:Program FilesMicrosoft SQLServerMSSQL10.MSSQLSERVERMSSQLDATAmaster.mdf;-eC:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLLogERRORLOG;-lC:Program FilesMicrosoft SQLServerMSSQL10.MSSQLSERVERMSSQLDATAmastlog.ldf 基本上看出来了吧,“-d”后面的就是master数据库数据文件的位置,“-e”是该 SQL S
8、erver实例的错误日志所在的位置,至于-1”就是master数据库日志文件 所在的位置了。修改数据文件和日志文件的路径到适当为位置,错误日志的位置一 般不需要做变更,例如将数据文件存放到 D盘的SQLData文件夹下,日志文件存放 到E盘的SQLLog文件夹下,则参数如下:-dD:SQLDatamaster.mdf;-eC:Program FilesMicrosoft SQLServerMSSQL10.MSSQLSERVERMSSQLLogERRORLOG;-lE:SQLLogmastlog.ldf 点击“OK保存并关闭对话框。3 然后需要做的是将master数据库的数据文件和日志文件剪切到
9、刚刚“Startup Parameters”定义的路径中,接着就可以启动该实例 SQL Server服务了。注意,此时可能仍然会有出现 SQLServer服务无法启动的情况,确保刚刚配置准确 无误,然后就是NTFSfe限的事情了,如果你不是用Local System来启动SQLServer 服务,那么更改完存放路径后,你需要给新的盘符或文件夹相应的权限,这样服务 才能启动,建议直接给相应账号 Full Control”的权限,至于为什么嘛,那是经 验,原因得要问 Microsoft 了。好了,到这里,master数据库就算迁移完成了。二、对于 empdb,model 和 msdb 1、修改文件
10、路径 1、修改文件路径-Move tempdb ALTER DATABASE tempdb MODIFY FILE(NAME=tempdev,FILENAME=D:Databasetempdb.mdf);ALTER DATABASE tempdb MODIFY FILE(NAME=templog,FILENAME=D:Databasetemplog.ldf);-Move model ALTER DATABASE model MODIFY FILE(NAME=modeldev,FILENAME=D:Databasemodel.mdf);ALTER DATABASE model MODIFY FI
11、LE(NAME=modellog,FILENAME=D:Databasemodellog.ldf);-Move msdb ALTER DATABASE msdb MODIFY FILE(NAME=MSDBData,FILENAME=D:Databasemsdbdata.mdf);ALTER DATABASE msdb MODIFY FILE(NAME=MSDBLog,FILENAME=D:Databasemsdb_log.ldf);2、停止 SQL SERVER 服务 3、物理移动文件到我们定义的文件夹,比如上面所述 D:Database 文件夹;4、启动 SQL SERVER 服务 三、移动
12、 Resource 数据库 移动 Resource 数据库 在 SQL Server 2008 中,Resource 数据库的默认位置为 驱动器:Program FilesMicrosoft SQL ServerMSSQL10.instance_name。可以移动该数据库;但是,建议您不要进行移动,这有两个原因:应用 SQL Server Service Pack 和修补程序可将该数据库还原到 Binn 位置。如果将故障转移群集环境中的 Resource 数据库移到非群集位置,将导致故障转移 群集失败。若要移动 Resource 数据库,请按下列步骤进行操作。1 如果启动了 SQL Serve
13、r 实例,则将其停止。2 通过在命令提示符下输入下列命令之一,在仅 master 恢复模式下启动 SQL Server 实例。在这些命令中指定的参数区分大小写。如果未按所示方式指定参数,则 命令会失败。对于默认的(MSSQLSERVER)实例,请运行以下命令。NET START MSSQLSERVER/f/T3608 对于命名实例,请运行以下命令。NET START MSSQL$instancename/f/T3608(这样做以后数据库处理单用户模式下)有关详细信息,请参阅如何启动 SQL Server 实例(net 命令)。3 使用 sqlcmd 命令或 SQL Server Managem
14、ent Studio,运行下列语句。更改 FILENAME 路径,以便与数据文件的新位置相匹配。不要更改数据库的名称或文件名。new_path_of_mastermssqlsystemresource.mdf);GOALTER DATABASE mssqlsystemresource MODIFY FILE(NAME=log,FILENAME=new_path_of_mastermssqlsystemresource.ldf);GO 4 彳务 mssqlsystemresource.mdf 和 mssqlsystemresource.ldf 文件移动至 V 新位置。5 通过运行以下语句,将 Resource 数据库设置为只读数据库。ALTER DATABASE mssqlsystemresource SET READ_ONLY;6 退出 sqlcmd 实用工具或 SQL Server Management Studio。7停止 SQL Server 实例。(这步很重要)&重新启动 SQL Server实例 ALTER DATABASE mssqlsystemresource MODIFY FILE(NAME=data,FILENAME=