自来云

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
/* 还原bak数据库文件*/

RESTORE DATABASE userdb_cs        /*还原为userdb名的新数据库*/
 FROM DISK = 'D:\工作资料\数据库文件\userdb.bak'   /*数据库备份文件的存放路径*/
   WITH MOVE 'Csoft' TO 'D:\工作资料\userdb\userdb_cs_Csoft.mdf',        /*把原数据库文件重新定向至自己希望存放的文件夹下*/ 
        MOVE 'base' TO 'D:\工作资料\userdb\userdb_cs_base.mdf',
        MOVE 'report' TO 'D:\工作资料\userdb\userdb_cs_report.mdf',
        MOVE 'Csoft_log' TO 'D:\工作资料\userdb\userdb_cs_log.ldf'         /*把原数据库日志文件重新定向至自己希望存放的文件夹下*/
   
/*查看他人,其他服务器中备份出来的bak数据库文件中,数据库逻辑文件的原始文件名,userdb_new为bak文件*/
   restore filelistonly from disk='D:\工作资料\数据库文件\userdb.bak'
   
--查看当前的存放位置 
select database_id,name,physical_name AS CurrentLocation,state_desc,size from sys.master_files    
where database_id=db_id(N'数据库名');  
  
--修改文件的存放位置下次启动生效 
--testDb为数据库名, 
alter database 数据库名 modify file ( name = 文件名(不包含后缀), filename = '文件存储路径');  
alter database 数据库名 modify file ( name = 文件名(不包含后缀), filename = '文件存储路径');  
eg.  
    alter database testDb modify file ( name = testDb, filename = 'G:\SQL_DATA\testDb\testDb.mdf');  
    alter database testDb modify file ( name = testDb_log, filename = 'G:\SQL_DATA\testDb\testdb_log.ldf');  
  
--修改默认的数据库文件存放位置(即时生效) 
EXEC xp_instance_regwrite    
@rootkey='HKEY_LOCAL_MACHINE',    
@key='Software\Microsoft\MSSQLServer\MSSQLServer',    
@value_name='DefaultData',    
@type=REG_SZ,    
@value='E:\MSSQL_MDF\data'    
GO    
--修改默认的日志文件存放位置<span style="font-family: Arial, Helvetica, sans-serif;">(即时生效)</span>  
EXEC master..xp_instance_regwrite    
@rootkey='HKEY_LOCAL_MACHINE',    
@key='Software\Microsoft\MSSQLServer\MSSQLServer',    
@value_name='DefaultLog',    
@type=REG_SZ,    
@value='E:\MSSQL_MDF\log'    
GO    

 

posted on 2018-05-28 21:20  自来云  阅读(188)  评论(0编辑  收藏  举报