Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   MS SQL / ORACLE статус бэкапа и дата последнего бэкапа отправить на почту (http://forum.oszone.net/showthread.php?t=299022)

AZABAZA 27-04-2015 10:52 2501240

MS SQL / ORACLE статус бэкапа и дата последнего бэкапа отправить на почту
 
Добрый день, ребята

Я наткнулся на задачку, прошу помощи кто чем горазд :dont-know


Есть сервера разные с MS SQL и ORACLE. Каждый день делается резервные копий.

Задача:
1. Нужно чтобы скрипт с этих серверов брал информацию у MS SQL/ORACLE о том что бэкапы прошли успешно и статус бэкапов, даты последнего бэкапа.
2. Отправил письмо!

Примечание: Базы на MS SQL и на ORACLE. ORACLE лог бэкапа пишет в лог файл. MS SQL ничего никуда не пишет но у него есть базы которые надо бэкапировать и не надо бэкапировать.

Можно все эти действий логировать и отправлять это письмом (это мое мнение, но если вы предложите что все статусы и даты будут в теле письма :up ).

Возникнут вопросы я постараюсь объяснить.
Заранее спасибо огромное!

AZABAZA 27-04-2015 11:01 2501246

По MS SQL во тут есть кое что, но там показывает все базы а надо отдельные базы

Kazun 27-04-2015 11:37 2501268

Для MSSQL:

1) Статус по Backup, функция SQL
http://beyondrelational.com/modules/...us-script.aspx

2) Invoke-Sqlcmd2
https://gallery.technet.microsoft.co...a-433cc4e30894
Код:

$query = @'
        Пункт 1
'@

$body = Invoke-Sqlcmd2 -ServerInstance "dserver\test" -Query $query | ConvertTo-Html | Out-String
Send-MailMessage -to "User01 <user01@example.com>" -from "User02 <user02@example.com>" -subject "Test mail" -body $body -BodyAsHtml

Еще альтернативное решение для MS SQL - http://blogs.technet.com/b/heyscript...up-status.aspx

AZABAZA 27-04-2015 12:23 2501289

Kazun,

2-ой пункт куда прописать? :dont-know

Если просто закинуть до $body то отваливается ошибка

Код:

Exception calling "Open" with "0" argument(s): "A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not fou
nd or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error:
 26 - Error Locating Server/Instance Specified)"
At line:104 char:15
+    $conn.Open <<<< ()
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
 
Exception calling "Fill" with "1" argument(s): "A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not fou
nd or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error:
 26 - Error Locating Server/Instance Specified)"
At line:109 char:19
+    [void]$da.fill <<<< ($ds)
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException


Kazun 27-04-2015 12:45 2501299

Проблема подключения к SQL Instance - о чем и уведомляют.


Время: 19:49.

Время: 19:49.
© OSzone.net 2001-