use master sql что это

Как изменить контекст базы данных в Microsoft SQL Server? Команда USE

Привет, в этой небольшой заметке я расскажу начинающим программистам и администраторам Microsoft SQL Server о достаточно простом действии, о том, как изменяется контекст базы данных в SQL инструкциях, также я покажу, как это можно сделать в графической среде SQL Server Management Studio.

Если Вы обслуживаете или будете обслуживать несколько баз данных на одном экземпляре SQL Server, то, скорей всего, Вам придётся в своих SQL инструкциях менять контекст подключения к базе данных. Лично я Вам рекомендую во всех своих инструкциях (если у Вас несколько баз данных) принудительно указывать контекст базы данных, иными словами, к какой базе данных относится та или иная SQL инструкция.

В Microsoft SQL Server это делается с помощью команды USE.

Команда USE в T-SQL

USE – команда, с помощью которой можно переключать контекст базы данных в SQL инструкциях. В качестве параметра данной команде необходимо просто передать название базы данных, в контексте которой Вам необходимо выполнить SQL инструкцию.

Следует отметить, что для того чтобы использовать команду USE, у Вас должны быть соответствующие права, а именно: разрешение CONNECT на целевую базу данных, т.е. Вы имеете право подключаться к этой базе данных.

Когда Вы подключаетесь к SQL серверу, Ваш контекст настроен на базу данных по умолчанию, если Вы или администратор Вам не указал такую базу данных для имени входа, то по умолчанию Вы будете подключаться к базе master.

Пример использования команды USE

В качестве примера давайте напишем простую инструкцию, в которой мы подключимся к базе данных TestDB, выполним тестовый запрос (вызовем функцию DB_NAME), а затем сменим контекст базы данных на другую, в нашем примере это будет база master.

Меняем контекст базы данных с помощью Management Studio

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

Данный функционал расположен на панели редактора SQL запросов.

Как сменить контекст подключения к базе данных, мы с Вами рассмотрели, однако мне хотелось бы еще отметить то, что Microsoft SQL Server позволяет в SQL инструкциях обращаться к объектам, которые расположены в разных базах данных на одном экземпляре SQL сервера. Иными словами, не меняя контекст подключения, мы, например, можем запросить данные из таблицы, которая расположена в другой базе данных, вызвать хранимую процедуру или функцию.

Это делается с помощью указания полного четырехсоставного имени объекта, только имя сервера можно не указывать.

Например, следующий запрос выполнится успешно, и мы получим данные из таблицы TestTable, хотя, как Вы понимаете, таблицы TestTable в базе данных master нет (именно на ней будет контекст выполнения).

Заметка! Начинающим рекомендую посмотреть мои видеокурсы по T-SQL, с помощью которых Вы «с нуля» научитесь работать с SQL и программировать на T-SQL.

Источник

База данных master

Для отдельных баз данных и эластичных пулов Базы данных SQL Azure используются только базы данных master и tempdb. Дополнительные сведения см. в разделе Что являет собою сервер Базы данных SQL Azure?. Описание базы данных tempdb в контексте Базы данных SQL Azure см. в разделе База данных tempdb в базе данных SQL. Для Управляемого экземпляра SQL Azure применяются все системные базы данных. См. дополнительные сведения об Управляемом экземпляре Базы данных SQL Azure.

Читайте также:  какие таблетки надо пропить чтобы забеременеть

Физические свойства базы данных master

Исходные конфигурационные значения файлов данных и файлов журнала базы данных master для SQL Server и Управляемого экземпляра SQL Azure приведены в следующей таблице. Размеры этих файлов могут немного изменяться в зависимости от выпуска SQL Server.

Файл Логическое имя Физическое имя Увеличение размера файлов
Первичные данные master master.mdf Автоувеличение на 10 % до заполнения диска.
Журнал mastlog mastlog.ldf Автоувеличение на 10 % до максимального размера в 2 ТБ.

Сведения о перемещении файлов данных и журнала базы данных master см. в разделе Перемещение системных баз данных.

При работе с сервером Базы данных SQL Azure пользователь не может управлять размером базы данных master.

Параметры базы данных

При работе с отдельными базами данных и эластичными пулами Базы данных SQL Azure пользователь не может управлять этими параметрами базы данных.

Параметр базы данных Значение по умолчанию Можно ли изменить
ALLOW_SNAPSHOT_ISOLATION ON нет
ANSI_NULL_DEFAULT OFF Да
ANSI_NULLS OFF Да
ANSI_PADDING OFF Да
ANSI_WARNINGS OFF Да
ARITHABORT OFF Да
AUTO_CLOSE OFF нет
AUTO_CREATE_STATISTICS ON Да
AUTO_SHRINK OFF нет
AUTO_UPDATE_STATISTICS ON Да
AUTO_UPDATE_STATISTICS_ASYNC OFF Да
CHANGE_TRACKING OFF нет
CONCAT_NULL_YIELDS_NULL OFF Да
CURSOR_CLOSE_ON_COMMIT OFF Да
CURSOR_DEFAULT GLOBAL Да
Параметры доступности базы данных ONLINE

Нет DATE_CORRELATION_OPTIMIZATION OFF Да DB_CHAINING ON нет ENCRYPTION OFF нет MIXED_PAGE_ALLOCATION ON нет NUMERIC_ROUNDABORT OFF Да PAGE_VERIFY CHECKSUM Да PARAMETERIZATION ПРОСТОЙ Да QUOTED_IDENTIFIER OFF Да READ_COMMITTED_SNAPSHOT OFF нет RECOVERY ПРОСТОЙ Да RECURSIVE_TRIGGERS OFF Да Параметры компонента Service Broker DISABLE_BROKER нет TRUSTWORTHY OFF Да

Описание этих параметров баз данных см. в разделе ALTER DATABASE (Transact-SQL).

Ограничения

База данных master не поддерживает следующие операции:

Рекомендации

При работе с базой данных master учитывайте следующие рекомендации:

всегда имейте в наличии актуальную резервную копию базы данных master ;

после выполнения следующих операций как можно быстрее создавайте резервную копию базы данных master :

не устанавливайте в базе данных master параметр TRUSTWORTHY в значение ON.

Что делать, если база данных master становится непригодна к использованию

Если база данных master непригодна к использованию, ее можно вернуть в нормальное состояние следующими способами.

Восстановить базу данных master на основе актуальной резервной копии.

Если экземпляр сервера удалось запустить, базу данных master можно восстановить из полной резервной копии. Дополнительные сведения см. в разделе Восстановление базы данных master (Transact-SQL).

Перестроить базу данных master с нуля.

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

При перестроении базы данных master все системные базы данных также перестраиваются.

Источник

USE (Transact-SQL)

Changes the database context to the specified database or database snapshot in SQL Server.

Transact-SQL Syntax Conventions

Syntax

To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

Arguments

database_name
Is the name of the database or database snapshot to which the user context is switched. Database and database snapshot names must comply with the rules for identifiers.

In Azure SQL Database, the database parameter can only refer to the current database. If a database other than the current database is provided, the USE statement does not switch between databases, and error code 40508 is returned. To change databases, you must directly connect to the database. The USE statement is marked as not applicable to SQL Database at the top of this page, because even though you can have the USE statement in a batch, it doesn’t do anything.

Remarks

When a SQL Server login connects to SQL Server, the login is automatically connected to its default database and acquires the security context of a database user. If no database user has been created for the SQL Server login, the login connects as guest. If the database user does not have CONNECT permission on the database, the USE statement will fail. If no default database has been assigned to the login, its default database will be set to master.

USE is executed at both compile and execution time and takes effect immediately. Therefore, statements that appear in a batch after the USE statement are executed in the specified database.

Permissions

Requires CONNECT permission on the target database.

Examples

The following example changes the database context to the AdventureWorks2012 database.

Источник

master Database

The master database records all the system-level information for a SQL Server system. This includes instance-wide metadata such as logon accounts, endpoints, linked servers, and system configuration settings. In SQL Server, system objects are no longer stored in the master database; instead, they are stored in the Resource database. Also, master is the database that records the existence of all other databases and the location of those database files and records the initialization information for SQL Server. Therefore, SQL Server cannot start if the master database is unavailable.

For Azure SQL Database single databases and elastic pools, only master database and tempdb database apply. For more information, see What is an Azure SQL Database server. For a discussion of tempdb in the context of Azure SQL Database, see tempdb database in Azure SQL Database. For Azure SQL Managed Instance, all system databases apply. For more information on Managed Instances in Azure SQL Database, see What is a Managed Instance

Physical Properties of master

The following table lists the initial configuration values of the master data and log files for SQL Server and Azure SQL Managed Instance. The sizes of these files may vary slightly for different editions of SQL Server.

File Logical name Physical name File growth
Primary data master master.mdf Autogrow by 10 percent until the disk is full.
Log mastlog mastlog.ldf Autogrow by 10 percent to a maximum of 2 terabytes.

For information about how to move the master data and log files, see Move System Databases.

For Azure SQL Database server, the user has no control over the size of the master database.

Database Options

The following table lists the default value for each database option in the master database for SQL Server and Azure SQL Managed Instance and whether the option can be modified. To view the current settings for these options, use the sys.databases catalog view.

For Azure SQL Database single databases and elastic pools, the user has no control over these database options.

Database option Default value Can be modified
ALLOW_SNAPSHOT_ISOLATION ON No
ANSI_NULL_DEFAULT OFF Yes
ANSI_NULLS OFF Yes
ANSI_PADDING OFF Yes
ANSI_WARNINGS OFF Yes
ARITHABORT OFF Yes
AUTO_CLOSE OFF No
AUTO_CREATE_STATISTICS ON Yes
AUTO_SHRINK OFF No
AUTO_UPDATE_STATISTICS ON Yes
AUTO_UPDATE_STATISTICS_ASYNC OFF Yes
CHANGE_TRACKING OFF No
CONCAT_NULL_YIELDS_NULL OFF Yes
CURSOR_CLOSE_ON_COMMIT OFF Yes
CURSOR_DEFAULT GLOBAL Yes
Database Availability Options ONLINE

No DATE_CORRELATION_OPTIMIZATION OFF Yes DB_CHAINING ON No ENCRYPTION OFF No MIXED_PAGE_ALLOCATION ON No NUMERIC_ROUNDABORT OFF Yes PAGE_VERIFY CHECKSUM Yes PARAMETERIZATION SIMPLE Yes QUOTED_IDENTIFIER OFF Yes READ_COMMITTED_SNAPSHOT OFF No RECOVERY SIMPLE Yes RECURSIVE_TRIGGERS OFF Yes Service Broker Options DISABLE_BROKER No TRUSTWORTHY OFF Yes

For a description of these database options, see ALTER DATABASE (Transact-SQL).

Restrictions

The following operations cannot be performed on the master database:

Recommendations

When you work with the master database, consider the following recommendations:

Always have a current backup of the master database available.

Back up the master database as soon as possible after the following operations:

Do not create user objects in master. If you do, master must be backed up more frequently.

Do not set the TRUSTWORTHY option to ON for the master database.

What to Do If master Becomes Unusable

If master becomes unusable, you can return the database to a usable state in either of the following ways:

Restore master from a current database backup.

If you can start the server instance, you should be able to restore master from a full database backup. For more information, see Restore the master Database (Transact-SQL).

Rebuild master completely.

If severe damage to master prevents you from starting SQL Server, you must rebuild master. For more information, see Rebuild System Databases.

Rebuilding master rebuilds all of the system databases.

Источник

Установка однопользовательского режима базы данных

В этой статье описывается, как установить однопользовательский режим для определенной пользователем базы данных в SQL Server с помощью SQL Server Management Studio или Transact-SQL. Однопользовательский режим указывает, что одновременный доступ к базе данных получает только один пользователь. Это в основном используется для операций обслуживания.

Ограничения

Если в процессе установки однопользовательского режима к базе данных подключены другие пользователи, то их подключения к базе данных будут закрыты без предупреждения.

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

Предварительные требования

Permissions

Необходимо разрешение ALTER на базу данных.

Использование среды SQL Server Management Studio

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

В обозревателе объектов подключитесь к экземпляру компонента Компонент SQL Server Database Engineи разверните его.

Щелкните правой кнопкой мыши базу данных, которую нужно изменить, и выберите пункт Свойства.

В диалоговом окне Свойства базы данных выберите страницу Параметры.

Для параметра Ограничение доступа выберите Один.

С помощью этой процедуры можно также установить режим одновременного или ограниченного доступа к базе данных. Дополнительные сведения о параметрах ограниченного доступа см. в разделе Свойства базы данных (страница «Параметры»).

Использование Transact-SQL

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

Установите соединение с компонентом Компонент Database Engine.

На стандартной панели выберите пункт Создать запрос.

Источник

Читайте также:  беременность по неделям что можно и что нельзя делать
Информ портал о технике и не только