Настройка MS SQL

1. alex-l19041 8 10.08.18 15:03 Сейчас в теме
Может кто-то знает как без переустановки MS SQL перенести TempDB на другой диск ?
+
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
11. DrZombi 290 13.08.18 09:40 Сейчас в теме +1 $m
Перемещение базы данных TEMPDB
TEMPDB представляет собой системную базу данных Microsoft SQL Server, в которой хранятся временные таблицы, созданные как самим сервером, так и пользователями. Эта база данных создается заново при каждом перезапуске Microsoft SQL Server. По умолчанию размер этой базы данных неограничен и увеличение его осуществляется при необходимости автоматически, порциями по 10% от текущего размера TEMPDB. Однако эти параметры могут быть переопределены пользователем. По умолчанию, минимальный размер этой базы данных, который устанавливается при старте Microsoft SQL Server, определяется размером системной базы данных MODEL. Очистка журнала транзакций в этой базе данных производится автоматически, при этом удаляются только неактивные записи журнала транзакций.

При работе 1С:Предприятия 8 в режиме клиент-сервер широко используются временные таблицы. Кроме того, TEMPDB используется Microsoft SQL Server при выполнении запросов, использующих операторы GROUP BY, UNION, DISTINCT и т.п.

Проблема
В процессе работы 1С:Предприятия 8 возможно значительное увеличение размера базы данных TEMPDB. Если размер диска, на котором расположена база данных TEMPDB, окажется недостаточным, работа 1С:Предприятия 8 может завершиться аварийно.

Решение
Если эта проблема проявляется регулярно, то рекомендуется переместить TEMPDB на другой диск большего размера.

Эту операцию можно выполнить следующим способом:

определить логические имена файлов базы данных TEMPDB (колонка "NAME" результата выполнения процедуры). Для этого нужно в Query Analyzer выполнить следующую команду:
USE tempdb
GO
EXEC sp_helpfile
GO
изменить месторасположение файлов базы данных TEMPDB с помощью команды ALT ER DATABASE. Для этого нужно в Query Analyzer выполнить следующую последовательность команд:
USE master
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'Новый_Диск:\Новый_Каталог\tempdb.mdf')
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'Новый_Диск:\Новый_Каталог\templog.ldf')
GO
Перезапустить Microsoft SQL Server.
Более подробное описание и рекомендации по использованию этих команд можно найти в документации по Microsoft SQL Server.
alex-l19041; +1
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
10. DrZombi 290 13.08.18 09:39 Сейчас в теме
(1) Элементарно, Чистать тут...

Перемещение базы данных TEMPDB
TEMPDB представляет собой системную базу данных Microsoft SQL Server, в которой хранятся временные таблицы, созданные как самим сервером, так и пользователями. Эта база данных создается заново при каждом перезапуске Microsoft SQL Server. По умолчанию размер этой базы данных неограничен и увеличение его осуществляется при необходимости автоматически, порциями по 10% от текущего размера TEMPDB. Однако эти параметры могут быть переопределены пользователем. По умолчанию, минимальный размер этой базы данных, который устанавливается при старте Microsoft SQL Server, определяется размером системной базы данных MODEL. Очистка журнала транзакций в этой базе данных производится автоматически, при этом удаляются только неактивные записи журнала транзакций.

При работе 1С:Предприятия 8 в режиме клиент-сервер широко используются временные таблицы. Кроме того, TEMPDB используется Microsoft SQL Server при выполнении запросов, использующих операторы GROUP BY, UNION, DISTINCT и т.п.

Проблема
В процессе работы 1С:Предприятия 8 возможно значительное увеличение размера базы данных TEMPDB. Если размер диска, на котором расположена база данных TEMPDB, окажется недостаточным, работа 1С:Предприятия 8 может завершиться аварийно.

Решение
Если эта проблема проявляется регулярно, то рекомендуется переместить TEMPDB на другой диск большего размера.

Эту операцию можно выполнить следующим способом:

определить логические имена файлов базы данных TEMPDB (колонка "NAME" результата выполнения процедуры). Для этого нужно в Query Analyzer выполнить следующую команду:
USE tempdb
GO
EXEC sp_helpfile
GO
изменить месторасположение файлов базы данных TEMPDB с помощью команды ALT ER DATABASE. Для этого нужно в Query Analyzer выполнить следующую последовательность команд:
USE master
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'Новый_Диск:\Новый_Каталог\tempdb.mdf')
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'Новый_Диск:\Новый_Каталог\templog.ldf')
GO
Перезапустить Microsoft SQL Server.
Более подробное описание и рекомендации по использованию этих команд можно найти в документации по Microsoft SQL Server.
+
5. alex-l19041 8 10.08.18 15:34 Сейчас в теме
8. alex-l19041 8 10.08.18 15:37 Сейчас в теме
(3)
Вот тут все детально:
- вижу только это
+
6. registration123 2 10.08.18 15:35 Сейчас в теме
(4) там и про мастер написано. наверное и его захотите "мувнуть".
+
7. alex-l19041 8 10.08.18 15:37 Сейчас в теме
(4) я вижу пустое .........
+
9. registration123 2 10.08.18 15:46 Сейчас в теме
Move System Databases

08/26/2016
7 minutes to read
Contributors
Steve Stein Craig Guyer

THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

This topic describes how to move system databases in SQL Server. Moving system databases may be useful in the following situations:

Failure recovery. For example, the database is in suspect mode or has shut down because of a hardware failure.

Planned relocation.

Relocation for scheduled disk maintenance.

The following procedures apply to moving database files within the same instance of SQL Server. To move a database to another instance of SQL Server or to another server, use the backup and restore operation.

The procedures in this topic require the logical name of the database files. To obtain the name, query the name column in the sys.master_files catalog view.

Important

If you move a system database and later rebuild the master database, you must move the system database again because the rebuild operation installs all system databases to their default location.

Important

After moving files, the SQL Server service account must have permission to access the files in new file folder location.
Planned Relocation and Scheduled Disk Maintenance Procedure

To move a system database data or log file as part of a planned relocation or scheduled maintenance operation, follow these steps. This procedure applies to all system databases except the master and Resource databases.

For each file to be moved, run the following statement.

ALT ER DATABASE database_name MODIFY FILE ( NAME = logical_name , FILENAME = 'new_path\os_file_name' )

Stop the instance of SQL Server or shut down the system to perform maintenance. For more information, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.

Move the file or files to the new location.

Restart the instance of SQL Server or the server. For more information, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.

Verify the file change by running the following query.

SEL ECT name, physical_name AS CurrentLocation, state_desc
FR OM sys.master_files
WHERE database_id = DB_ID(N'<database_name>');

If the msdb database is moved and the instance of SQL Server is configured for Database Mail, complete these additional steps.

Verify that Service Broker is enabled for the msdb database by running the following query.

SEL ECT is_broker_enabled
FR OM sys.databases
WHERE name = N'msdb';

For more information about enabling Service Broker, see ALT ER DATABASE (Transact-SQL).

Verify that Database Mail is working by sending a test mail.

Failure Recovery Procedure

If a file must be moved because of a hardware failure, follow these steps to relocate the file to a new location. This procedure applies to all system databases except the master and Resource databases.

Important

If the database cannot be started, that is it is in suspect mode or in an unrecovered state, only members of the sysadmin fixed role can move the file.

Stop the instance of SQL Server if it is started.

Start the instance of SQL Server in master-only recovery mode by entering one of the following commands at the command prompt. The parameters specified in these commands are case sensitive. The commands fail when the parameters are not specified as shown.

For the default (MSSQLSERVER) instance, run the following command:

NET START MSSQLSERVER /f /T3608

For a named instance, run the following command:

NET START MSSQL$instancename /f /T3608

For more information, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.

For each file to be moved, use sqlcmd commands or SQL Server Management Studio to run the following statement.

ALT ER DATABASE database_name MODIFY FILE( NAME = logical_name , FILENAME = 'new_path\os_file_name' )

For more information about using the sqlcmd utility, see Use the sqlcmd Utility.

Exit the sqlcmd utility or SQL Server Management Studio.

Stop the instance of SQL Server. For example, run NET STOP MSSQLSERVER.

Move the file or files to the new location.

Restart the instance of SQL Server. For example, run NET START MSSQLSERVER.

Verify the file change by running the following query.

SEL ECT name, physical_name AS CurrentLocation, state_desc
FR OM sys.master_files
WHERE database_id = DB_ID(N'<database_name>');

Moving the master Database

To move the master database, follow these steps.

Fr om the Start menu, point to All Programs, point to Microsoft SQL Server, point to Configuration Tools, and then click SQL Server Configuration Manager.

In the SQL Server Services node, right-click the instance of SQL Server (for example, SQL Server (MSSQLSERVER)) and choose Properties.

In the SQL Server (instance_name) Properties dialog box, click the Startup Parameters tab.

In the Existing parameters box, sel ect the –d parameter to move the master data file. Click Update to save the change.

In the Specify a startup parameter box, change the parameter to the new path of the master database.

In the Existing parameters box, sel ect the –l parameter to move the master log file. Click Update to save the change.

In the Specify a startup parameter box, change the parameter to the new path of the master database.

The parameter value for the data file must follow the -d parameter and the value for the log file must follow the -l parameter. The following example shows the parameter values for the default location of the master data file.

-dC:\Program Files\Microsoft SQL Server\MSSQL<version>.MSSQLSERVER\MSSQL\DATA\master.mdf

-lC:\Program Files\Microsoft SQL Server\MSSQL<version>.MSSQLSERVER\MSSQL\DATA\mastlog.ldf

If the planned relocation for the master data file is E:\SQLData, the parameter values would be changed as follows:

-dE:\SQLData\master.mdf

-lE:\SQLData\mastlog.ldf

Stop the instance of SQL Server by right-clicking the instance name and choosing Stop.

Move the master.mdf and mastlog.ldf files to the new location.

Restart the instance of SQL Server.

Verify the file change for the master database by running the following query.

SEL ECT name, physical_name AS CurrentLocation, state_desc
FR OM sys.master_files
WH ERE database_id = DB_ID('master');
GO

At this point SQL Server should run normally. However Microsoft recommends also adjusting the registry entry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\instance_ID\Setup, wh ere instance_ID is like MSSQL13.MSSQLSERVER. In that hive, change the SQLDataRoot value to the new path. Failure to update the registry can cause patching and upgrading to fail.

Moving the Resource Database

The location of the Resource database is <drive>:\Program Files\Microsoft SQL Server\MSSQL<version>.<instance_name>\MSSQL\Binn\. The database cannot be moved.
Follow-up: After Moving All System Databases

If you have moved all of the system databases to a new drive or volume or to another server with a different drive letter, make the following updates.

Change the SQL Server Agent log path. If you do not update this path, SQL Server Agent will fail to start.

Change the database default location. Creating a new database may fail if the drive letter and path specified as the default location do not exist.

Change the SQL Server Agent Log Path

Fr om SQL Server Management Studio, in Object Explorer, expand SQL Server Agent.

Right-click Error Logs and click Configure.

In the Configure SQL Server Agent Error Logs dialog box, specify the new location of the SQLAGENT.OUT file. The default location is C:\Program Files\Microsoft SQL Server\MSSQL<version>.<instance_name>\MSSQL\Log\.

Change the database default location

Fr om SQL Server Management Studio, in Object Explorer, right-click the SQL Server server and click Properties.

In the Server Properties dialog box, select Database Settings.

Under Database Default Locations, browse to the new location for both the data and log files.

Stop and start the SQL Server service to complete the change.

Examples
A. Moving the tempdb database

The following example moves the tempdb data and log files to a new location as part of a planned relocation.

Note

Because tempdb is re-created each time the instance of SQL Server is started, you do not have to physically move the data and log files. The files are created in the new location when the service is restarted in step 3. Until the service is restarted, tempdb continues to use the data and log files in existing location.

Determine the logical file names of the tempdb database and their current location on the disk.

SELECT name, physical_name AS CurrentLocation
FR OM sys.master_files
WH ERE database_id = DB_ID(N'tempdb');
GO

Change the location of each file by using ALT ER DATABASE.

USE master;
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'E:\SQLData\tempdb.mdf');
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'F:\SQLLog\templog.ldf');
GO

Stop and restart the instance of SQL Server.

Verify the file change.

SELECT name, physical_name AS CurrentLocation, state_desc
FR OM sys.master_files
WH ERE database_id = DB_ID(N'tempdb');

Delete the tempdb.mdf and templog.ldf files fr om the original location.
Показать
+
11. DrZombi 290 13.08.18 09:40 Сейчас в теме +1 $m
Перемещение базы данных TEMPDB
TEMPDB представляет собой системную базу данных Microsoft SQL Server, в которой хранятся временные таблицы, созданные как самим сервером, так и пользователями. Эта база данных создается заново при каждом перезапуске Microsoft SQL Server. По умолчанию размер этой базы данных неограничен и увеличение его осуществляется при необходимости автоматически, порциями по 10% от текущего размера TEMPDB. Однако эти параметры могут быть переопределены пользователем. По умолчанию, минимальный размер этой базы данных, который устанавливается при старте Microsoft SQL Server, определяется размером системной базы данных MODEL. Очистка журнала транзакций в этой базе данных производится автоматически, при этом удаляются только неактивные записи журнала транзакций.

При работе 1С:Предприятия 8 в режиме клиент-сервер широко используются временные таблицы. Кроме того, TEMPDB используется Microsoft SQL Server при выполнении запросов, использующих операторы GROUP BY, UNION, DISTINCT и т.п.

Проблема
В процессе работы 1С:Предприятия 8 возможно значительное увеличение размера базы данных TEMPDB. Если размер диска, на котором расположена база данных TEMPDB, окажется недостаточным, работа 1С:Предприятия 8 может завершиться аварийно.

Решение
Если эта проблема проявляется регулярно, то рекомендуется переместить TEMPDB на другой диск большего размера.

Эту операцию можно выполнить следующим способом:

определить логические имена файлов базы данных TEMPDB (колонка "NAME" результата выполнения процедуры). Для этого нужно в Query Analyzer выполнить следующую команду:
USE tempdb
GO
EXEC sp_helpfile
GO
изменить месторасположение файлов базы данных TEMPDB с помощью команды ALT ER DATABASE. Для этого нужно в Query Analyzer выполнить следующую последовательность команд:
USE master
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'Новый_Диск:\Новый_Каталог\tempdb.mdf')
GO
ALT ER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'Новый_Диск:\Новый_Каталог\templog.ldf')
GO
Перезапустить Microsoft SQL Server.
Более подробное описание и рекомендации по использованию этих команд можно найти в документации по Microsoft SQL Server.
alex-l19041; +1
12. Wildsou1 17 13.08.18 13:36 Сейчас в теме
Достаточно полезная информация , спасибо
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот