Moving Database Physical Files to New Locations in SQL Server
How to move database physical files in SQL Server?
If you want to move database physical files to a new location, you can use the "ALTER DATABASE" statements to bring the database offline, and link it to the files at the new location. The following tutorial gives you a good example:
ALTER DATABASE FyiCenterComData SET ONLINE GO USE FyiCenterComData GO CREATE TABLE Links (Name NVARCHAR(32)) GO ALTER DATABASE FyiCenterComData SET OFFLINE GO
Now it is safe to move the database physical files to a new location:
1. Run Windows Explorer 2. Create a new directory: c:\temp\data 3. Drag and drop c:\temp\FyiCenterData.mdf to c:\temp\data 3. Drag and drop c:\temp\FyiCenterLog.mdf to c:\temp\data
Go back to the SQL client program and run:
ALTER DATABASE FyiCenterComData MODIFY FILE (NAME = FyiCenterData, FILENAME = 'C:\temp\data\FyiCenterData.mdf') GO The file "FyiCenterData" has been modified in the system catalog. The new path will be used the next time the database is started. ALTER DATABASE FyiCenterComData MODIFY FILE (NAME = FyiCenterLog, FILENAME = 'C:\temp\data\FyiCenterLog.ldf') GO The file "FyiCenterLog" has been modified in the system catalog. The new path will be used the next time the database is started. ALTER DATABASE FyiCenterComData SET ONLINE GO USE FyiCenterComData GO SELECT type_desc, name, physical_name, size FROM sys.database_files GO type_desc name physical_name size ROWS FyiCenterData C:\temp\data\FyiCenterData.mdf 1280 LOG FyiCenterLog C:\temp\data\FyiCenterLog.ldf 128 SELECT name, type_desc FROM sys.tables GO name type_desc Links USER_TABLE
As you can see the physical files are moved properly, and the "Links" table is still there.
2016-11-20, 1221👍, 0💬
How To End a Stored Procedure Properly in SQL Server Transact-SQL? Where the end of the "CREATE PROC...
What To Do If the StartDB.bat Failed to Start the XE Instance in Oracle? If StartDB.bat failed to st...
How To Use GO Command in "sqlcmd" in SQL Server? "sqlcmd" is a command line client application to ru...
How To Get a List of All Tables with "sys.tables" View in SQL Server? If you want to see the table y...
Where to find answers to frequently asked questions on Using INSERT, UPDATE and DELETE Statements in...