Как перевести базу в однопользовательский режим sql
Перейти к содержимому

Как перевести базу в однопользовательский режим sql

  • автор:

Как перевести базу в однопользовательский режим sql

SQL2000:
Допустим база находится в singlMode-е и к ней подключен 1 юзер. Из ентерпрайз менеджера перевести базу в другой режим можно, а ват как из другой программы перевести ее в другой режим, если подключиться нельзя?

Re: Как изменить режим Базы из singlemode в другой и наоборо

От: pkarklin
Дата: 10.10.05 07:08
Оценка:

Здравствуйте, Lebets_VI, Вы писали:

L_V>SQL2000:
L_V>Допустим база находится в singlMode-е и к ней подключен 1 юзер. Из ентерпрайз менеджера перевести базу в другой режим можно, а ват как из другой программы перевести ее в другой режим, если подключиться нельзя?

Перевести бд в другой режим и синглмоде можно только в том единственном коннекте. Перевод бд в многопользовательский режим:

ALTER DATABASE DatabaseName SET MULTI_USER

Как перевести базу в однопользовательский режим sql

Перевел базу в SINGLE_USER для того чтобы протестировать и восстановить, но система вывалила ошибку что типа база уже открыта.
Теперь база висит в SINGLE_USER и обратно ее перевести не могу, не получается даже свойства посмотреть. Выдает ошибку.

«База данных уже открыта, и одновременно к ней может обращаться только один пользователь»

Что сделать? Как отрубить имеющиеся соединения?

Перезапустить службу не предлагать?
(1) Ну да, желательно как-нибудь бэз этого
закрыть базу тем, кем она открыта

все конечно уже догадались что речь про ms sql.
НО версии ms sql. из какой программмы Вы преводили — не раскрыта.

alter database MyBse set MULTI_USER

Сообщение 5064, уровень 16, состояние 1, строка 1
В настоящий момент невозможно изменить состояние или параметры базы данных «buh_npm_upp». База данных находится в однопользовательском режиме, и в настоящий момент к ней подключен пользователь.
Сообщение 5069, уровень 16, состояние 1, строка 1
Не удалось выполнить инструкцию ALTER DATABASE.

Висит какое-то соединение, но где его посмотреть в SQL Server 2008?

alter database MyBse set MULTI_USER WITH ROLLBACK IMMEDIATE

Как перевести базу в однопользовательский режим sql

Ну сабж. Начал обновляться, выскочила ошибка (отвалилась шара), теперь база в singleUser. Надо вывести.
Прямое редактирование sysdatabases не получается — сервер не даёт туда записать.

стоп-старт скуля.

(1) не помогает, сделал в первую очередь.

(0) В Enterprise manager-е открываешь свойства базы и снимаешь галочку с «Single User mode»

(3) не пускает, на что-то ругается (что-то типа, база уже работает, не могу получить пропертиз) и отваливается.

Запуск SQL Server в однопользовательском режиме

В определенных обстоятельствах может потребоваться запустить экземпляр SQL Server в однопользовательском режиме с помощью параметра -m запуска. Например, может потребоваться изменить параметры конфигурации сервера или восстановить поврежденную master базу данных или другую системную базу данных. Оба действия требуют запуска экземпляра SQL Server в однопользовательском режиме.

Сведения о восстановлении базы данных master в Linux в однопользовательском режиме см. в статье «Восстановление базы данных master в Linux в однопользовательском режиме».

После запуска SQL Server в однопользовательском режиме каждый член локальной группы администраторов на компьютере сможет подключаться к экземпляру SQL Server от имени участника предопределенной роли сервера sysadmin. Дополнительные сведения см. в статье Подключение к SQL Server в случае, если доступ системных администраторов заблокирован.

При запуске экземпляра SQL Server в однопользовательском режиме обратите внимание на следующее:

  • Только один пользователь может подключиться к серверу.
  • Процесс CHECKPOINT не выполняется. По умолчанию он автоматически выполняется при запуске.

Остановите службу агент SQL Server перед подключением к экземпляру SQL Server в однопользовательском режиме; в противном случае служба агент SQL Server использует подключение, тем самым блокируя его.

При запуске экземпляра SQL Server в однопользовательском режиме СРЕДА SQL Server Management Studio может подключаться к SQL Server. обозреватель объектов в Management Studio может завершиться ошибкой, так как для некоторых операций требуется несколько подключений. Чтобы управлять экземпляром SQL Server в однопользовательском режиме, выполняйте инструкции Transact-SQL через подключенный Редактор запросов в Management Studio или Azure Data Studio либо используйте служебную программу sqlcmd.

При использовании -m параметра с SQLCMD или Management Studio можно ограничить подключения к указанному клиентскому приложению.

В Linux SQLCMD необходимо использовать прописную букву, как показано ниже.

Например, -m»SQLCMD» разрешает только одно подключение, которое должно идентифицироваться как клиентская программа sqlcmd. Этот параметр следует использовать, когда SQL Server запускается в однопользовательском режиме, а единственное доступное соединение занято неизвестным клиентским приложением. Чтобы подключиться через Редактор запросов в Management Studio, используйте -m»Microsoft SQL Server Management Studio — Query» .

Не используйте этот параметр как средство безопасности. Клиентское приложение предоставляет имя клиентского приложения и может указать ложное имя в составе строки подключения.

Следующий пример запускает экземпляр SQL Server в однопользовательском режиме и разрешает подключение только через редактор запросов среды SQL Server Management Studio.

net start "SQL Server (MSSQLSERVER)" /m"Microsoft SQL Server Management Studio - Query" 

Примечание для кластеризованной установки

При установке SQL Server в кластеризованной среде при запуске SQL Server в одном пользовательском режиме библиотека ресурсов кластера использует доступное подключение, тем самым блокируя любые другие подключения к серверу. Если SQL Server находится в этом состоянии, при попытке перенести агент SQL Server ресурс в режим «в сети», он может выполнить отработку отказа ресурса SQL на другой узел, если ресурс настроен для влияния на группу.

Для решения этой проблемы используется следующая процедура.

  1. Удалите параметр запуска -m из дополнительных свойств SQL Server.
  2. Отключите ресурс SQL Server в автономном режиме.
  3. С текущего узла владельца этой группы выполните в командной строке следующую команду:

net start MSSQLSERVER /m 

См. также

  • Восстановление базы данных master в Linux в однопользовательском режиме
  • Запуск, остановка или приостановка службы агента SQL Server
  • Диагностическое соединение для администраторов баз данных
  • Программа sqlcmd
  • КОНТРОЛЬНАЯ ТОЧКА (Transact-SQL)
  • sp_configure (Transact-SQL)
  • Параметры запуска службы Database Engine

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *