Quantcast
Channel: CodeSection,代码区,SQL Server(mssql)数据库 技术分享 - CodeSec
Viewing all articles
Browse latest Browse all 3160

SQL Server moving system databases Part 2 master

$
0
0

I decided not to participate in the Rhinelander Hodag Muskie Challenge this past year. While I enjoyed the experience in 2015, I didn’t feel compelled to try again quite yet. Having caught no fish, it felt like a bit of a waste of money. Instead of fishing for free and enjoying the peace and serenity of the lakes, instead it cost $250 and we were jammed into small lakes with several other boats trying to find some free water to fish. I definitely see myself giving it another shot some time in the future, maybe even this year (2017). The thrill of catching a big fish would only be magnified by thrill of hoping our catch was greater than all the other boats’ catches. It’s just something that needs to be enjoyed in moderation, so it doesn’t become a waste of money when fishing is slow.

In my previous post, I demonstrated moving the msdb and model system databases . This time I’m going to show how to move master, which is more complicated. The master database in SQL Server holds all the system level information for SQL Server all the logins, linked servers, endpoints and other system-wide configuration settings. The master database also holds information about all the other databases and the locations of their files. Because it is the “main” database, moving the files becomes more difficult and dangerous. If you lose the master database, you are going to have problems with basic requirements such as logging in. Microsoft help states “SQL Server cannot start if the master database is unavailable”.

The first step in moving the database is to open SQL Server Configuration Manager and go to the Properties for SQL Server (mssqlSERVER).


SQL Server moving system databases Part 2   master

Under the Advanced tab, you will see the current file locations specified in the Startup Parameters field.


SQL Server moving system databases Part 2   master

The -d argument is the location of the data file and the -l argument is the location of the log file. The -e is the location of the error log, in case you want to move that as well.

Update the file locations in the startup parameters to wherever you plan to move the files.


SQL Server moving system databases Part 2   master

You will get a message that the changes were saved, but don’t go into effect until the service is restarted.


SQL Server moving system databases Part 2   master

Stop the service.


SQL Server moving system databases Part 2   master

Now move the files from their current location:


SQL Server moving system databases Part 2   master

To the new locations you specified in the startup parameters.


SQL Server moving system databases Part 2   master
SQL Server moving system databases Part 2   master

Lastly, start up the SQL Server Service, and you should be good to go! You can verify the new file locations by running this query:

SELECT name , physical_name AS CurrentLocation , state_desc FROM sys.master_files WHERE database_id = DB_ID('master'); GO
SQL Server moving system databases Part 2   master

Viewing all articles
Browse latest Browse all 3160

Trending Articles