Учебники

Amazon RDS – задачи MS SQL DBA

В качестве службы RDS в базе данных MSSQL есть много задач DBA, доступных как управляемая служба. У вас нет доступа оболочки к БД, но через консоль или с помощью команд в клиентском программном обеспечении вы можете выполнять различные действия DBA. Ниже приведены наиболее распространенные и часто используемые задачи администратора баз данных, выполняемые на SQL-сервере Amazon RDS Ms.

Изменить захват данных

CDC фиксирует изменения, внесенные в данные в таблицах. Изменения, внесенные в пользовательские таблицы, фиксируются в соответствующих таблицах изменений. Эти таблицы изменений предоставляют историческое представление об изменениях во времени. Функции сбора данных об изменениях, которые предоставляет SQL Server, позволяют легко и систематично использовать данные об изменениях.

Используйте команды ниже в SSMS, подключенной к серверу RDS MSSQL, чтобы включить и отключить CDC.

#Enable CDC for RDS DB Instance
exec msdb.dbo.rds_cdc_enable_db ''

#Disable CDC for RDS DB Instance
exec msdb.dbo.rds_cdc_disable_db ''

Далее для отслеживания изменений в конкретной таблице мы используем хранимую процедуру sp_cdc_enable_table с приведенной ниже командой.

#Begin tracking a table
exec sys.sp_cdc_enable_table   
   @source_schema           = N''
,  @source_name             = N''
,  @role_name               = N''
, @captured_column_list   = ''
;

Изменение параметров базы данных tempdb

Системная база данных tempdb – это глобальный ресурс, который доступен всем пользователям, подключенным к экземпляру SQL Server, и используется для хранения следующего

  • Временно созданные объекты пользователя, такие как глобальные или локальные временные таблицы, временные хранимые процедуры, переменные таблиц или курсоры.

  • Внутренние объекты, которые создаются компонентом SQL Server Database Engine, например, рабочие таблицы для хранения промежуточных результатов для катушек или сортировки.

  • Версии строк, генерируемые транзакциями изменения данных в базе данных, в которой используется фиксация чтения с использованием транзакций изоляции версий строк или транзакций изоляции моментальных снимков.

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

Внутренние объекты, которые создаются компонентом SQL Server Database Engine, например, рабочие таблицы для хранения промежуточных результатов для катушек или сортировки.

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

Ниже приведены примеры того, как вы модифицируете базу данных tempdb RDS MSSQL для различных действий администратора баз данных.

# setting the size to 100 GB and file growth to 10 percent.
alter database[tempdb] modify file (NAME = N'templog', SIZE=100GB, FILEGROWTH = 10%)

# set the MAXSIZE property to prevent tempdb database from using all available disk space.
alter database [tempdb] modify file (NAME = N'templog', MAXSIZE = 2048MB)

# Shrinking the tempdb Database file size and requests a new size
exec msdb.dbo.rds_shrink_tempdbfile @temp_filename = N'test_file', @target_size = 10;

Переход от автономного режима к онлайн

Вы можете перевести свою базу данных Microsoft SQL Server на экземпляр Amazon RDS DB из OFFLINE в ONLINE, используя следующую команду.

EXEC rdsadmin.dbo.rds_set_database_online name

Набор неанглоязычных символов

При создании экземпляра RDS MSSQL для сортировки по умолчанию для БД помечается английский язык. Но его можно изменить на другой неанглийский язык, применив предложение COLLATE вместе с именем сопоставления. Пример ниже иллюстрирует это.