SQL SERVER 用户数据库物理文件路径修改

[文章] 浏览(12)  | 2017年05月26日  | 支持服务 | 
【标签】MS SQL



1、查询用户数据库AdventureWorks
文件默认路径:

select database_id,name,physical_name AS CurrentLocation,state_desc,size from sys.master_files
where database_id=db_id(N'AdventureWorks'); 

 



2、
查询数据库中的表名:

use AdventureWorks 
--查询所有表的信息
select * from sysobjects where xtype='U'; 
--查询表的数量
select count(*) from sysobjects where xtype='U' 
--这是快速查询所有表中的数据量
select a.name, b.rows from sysobjects a with(nolock) join sysindexes b with(nolock) on b.id=a.id
where a.xtype='U' and b.indid in (0,1) order by a.name asc 



3、修改文件的存放位置下次启动生效

--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');     


4、修改默认的数据库文件存放位置E:\MSSQL_MDF\data(即时生效)

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    
--修改默认的日志文件存放位置E:\MSSQL_MDF\log(即时生效)</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     
附件说明
附件