Включение возможности использования xp_cmdshell в MSSQL


Для включения возможности использования xp_cmdshell в MSSQL необходимо:

-- Разрешаем изменение дополнительных параметров.
EXEC sp_configure 'show advanced options', 1
GO

-- Обновkztv текущее настроенное значение для дополнительных параметров
RECONFIGURE
GO

-- Включаем cmdshell.
EXEC sp_configure 'xp_cmdshell', 1
GO

-- Обновляем текущее настроенное значение для cmdshell
RECONFIGURE
GO
---
Подробнее

Перезапуск (Restart) MSSQL Server на Linux (Ubuntu).

Перезапуск (Restart) MSSQL Server на Linux (Ubuntu).

Microsoft рекомендует перезапускать сервер так:

-- Получить состояние сервиса
sudo systemctl status mssql-server

-- Остановить сервис
sudo systemctl stop mssql-server

-- Запустить сервис
sudo systemctl start mssql-server

-- Перезапустить сервис
sudo systemctl restart mssql-server


Для Ubuntu я лично предпочитаю такой способ:

service mssql-server status
service mssql-server stop
service mssql-server start
service mssql-server restart
Подробнее

OFFSET FETCH - Ограничение выборки в MSSQL

"OFFSET FETCH" это фильтр который позволяет пропустить некоторое количество первых строк в выборке.

Например:

select field1, field2, field3 
from table1
order by field1, field2
offset 100 rows fetch next 50 rows only;

Этот пример вернет строки с 101 по 150, из всех строк отсортированных по field1 и field2.

! Сначала будет произведена сортировка, затем возврат 50 строк.

! Для больших объемов данных этот способ требует много ресурсов, поэтому использовать лучше на минимизированных выборках.

Подробнее

Поиск процедуры по тексту который она содержит (по метаданным) MSSQL

Пример поиска процедуры по тексту который она содержит

SELECT name
FROM   sys.procedures
WHERE  Object_definition(object_id) LIKE '%некоторый_текст%'

Этот скрипт вернет названия всех процедур которые содержат в текст: "некоторый_текст"

Подробнее

Обновление таблицы с условием по второй таблице через JOIN MSSQL

Пример обновления данных в одной таблице с одновременным сопоставлением и проверкой условия по второй таблице при помощи JOIN:

update cc
 set cc.ActivateState=2
  from ClientsCards cc
   left join ClientsCardsHeads cch 
    on cch.CardUid=cc.Uid
where cc.ActivateState=0 and cch.State=3


ClientsCards cc
- Первая таблица в которой производится изменение.

ClientsCardsHeads cch - Вторая таблица с данными которой производится сверка.

Подробнее

Как запреть FTP пользователя в своей папке Linux

Рецепт, чтобы запереть FTP пользователя в своей папке.

Прописать в vsftpd.conf:

local_enable=YES
allow_writeable_chroot=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list


В файле /etc/vsftpd.chroot_list надо указать UserId пользователей для которых это правило будет действовать.

Подробнее