Показано с 1 по 20 из 20
1С MS SQL
-
05.11.2015, 21:25 #1
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
1С MS SQL
Может кто-нить поделиться планами обслуживания MS SQL?
Резервирование настроил, график:
* Ежегодные - ручками, после закрывания года
* Последний год:
* ежемесячные.
* Последний месяц:
* Еженедельные - full
* Ежедневные - diff
* Журнал транзакций - каждые пол-часа.
Вопрос, что еще в каждый бэкап можно делать (при каждом full пересчитываю индексы, целостность, сжатие)?
ЗЫ. Не особо важно, но у нас фулл бэкап 20 гигов одной из 4 баз.
-
05.11.2015, 21:46 #2
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
И исчо. Ежемесячные бэкапы делаются, но так же и еженедельные в первую неделю выходит наклад. Как не делать еженедельное резервирование в первую неделю месяца?
-
06.11.2015, 01:16 #3
- Регистрация
- 13.12.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: Logan
- Сообщений
- 563
Убрать из скрипта ежемесячный backup. Написать второй сценарий (любым способом, хоть bat в планировщик), который будет делать банальную вещь: копировать раз в месяц свежесозданный еженедельный архив в теплое сухое место.
-
06.11.2015, 09:07 #4
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
Странный вопрос на автомобильном форуме, не?
На инфостарте туча статей по бэкапу средствами SQL Server Management Studio. Например
По вашей схеме я бы добавил FREEPROCCACHE. Почему, почитайте Гилева
-
06.11.2015, 15:30 #5
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Это вариант. А как решить вопрос с синхронизацией? Т.е. запускать крон после удачного завершения бэкапа?
- - - Добавлено - - -
Странный, не странный, но ответили же ))
Инфостарт прочтён. Оттуда и схема вырисовалась (точнее, оттуда пересчет индексов и прочее обслуживание).
Про кэш понятно, почитаю, как отразится на пользователях его очистка, так как у нас 24/7 производство.
-
06.11.2015, 16:36 #6
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
Это вариант. А как решить вопрос с синхронизацией? Т.е. запускать крон после удачного завершения бэкапа?
Можете "штатными" T-SQL копировать в сеть (http://its.1c.ru/db/metod8dev#content:2378:hdoc)
Тот же handy backup умеет синхронизировать и обмениться с облаками и удаленными хранилищами
-
06.11.2015, 21:39 #7
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Вариантов много. В стороннем софте вы не ограничены. Зачем использовать командную строку в 21 веке?)
Можете "штатными" T-SQL копировать в сеть (http://its.1c.ru/db/metod8dev#content:2378:hdoc)
Тот же handy backup умеет синхронизировать и обмениться с облаками и удаленными хранилищами
ЗЫ. За Гилева - спс!
ЗЫЫ. Я только становлюсь DBA MS SQL, необходимость, надеюсь, временная.
- - - Добавлено - - -
Чутка оффтопа... По vsphere есть у нас кто?
-
06.11.2015, 21:49 #8
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Зачем использовать командную строку в 21 веке?)
Самые интересные, дешевые и логичные решения на сегодняшний день - как раз в этой строке. Правда на "линусе". 7 серверов архивируются легко и просто.
3 резервных - крутятся "голыми". В любой момент, запуском одного скрипта на выбраный "голый" сервер накатываются конфиги и данные. В итоге - 5-10 минут, и сервер поднят в замен упавшего без новых HB технологий.
-
06.11.2015, 22:57 #9
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
EXEC SP_ADDUMPDEVICE и BACKUP DATABASE все равно приведут к созданию и недельной и месячной копии.
Делайте тогда несколько сценариев с разными префиксами бэкапов (дневные, мес. и т.д.) и складывайте в отдельные папки на каждый день. Дубли прибивайте той же командной строкой, если вам так проще.
Вы же сами понимаете, универсального варианта нет, у каждого свои фобии.
Так, отстраненно...
Самые интересные, дешевые и логичные решения на сегодняшний день - как раз в этой строке. Правда на "линусе".
-
07.11.2015, 00:09 #10
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Делайте тогда несколько сценариев с разными префиксами бэкапов (дневные, мес. и т.д.) и складывайте в отдельные папки на каждый день.
Нашел кривоватый путь. "Каждую вторую субботу, каждую третью" и так далее. Пока есть это, буду ковырять далее. Думается и универсальный вариант есть. Опыта маловато.
Мы с вами говорили про windows. И, соответственно, мой комментарий относился только к этой среде.
Сейчас на 50-й странице PowerShell for Nuts. Винда-таки догоняет линусь (это без упреков и обид, PowerShell - реально круто).
- - - Добавлено - - -
ЗЫ. Делюсь, правда может это только для меня новость, но по iSCSI у MS SQL получается на сетевой диск ложить копии как буд-то на родной.
-
07.11.2015, 22:27 #11
- Регистрация
- 25.08.2009
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: Ford Fiesta
- Сообщений
- 1,734
В столовой услышал:
- Бэкап - акт проявления трусости
Несколько человек поперхнулись чаем (цэ какой-то сайт про 1С)
-
07.11.2015, 22:51 #12
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Гыы )))
- Бэкап - акт проявления трусости
Вообще про бэкап говорят так: "Есть люди, которые его делают и есть люди, которые его ЕЩЕ НЕ делают".
От себя добавлю, что есть еще третьи. Которые, и делают, и проверяют бэкапы. А некоторые делают в двух-трех местах. Зависит от того, что стоит больше. Восстановить данные с нуля или работы по их сохранению.
-
09.01.2017, 20:43 #13
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Заново перелистываю скрипты бэкапов... Человек вроде написал, но мне не нравится.
И вот почему. FORMAT появилась с 2012 SQL. У меня 2008 R2. Нужно получить строку в виде "yyyymmdd_hhmiss" (для имени файла бэкапа).
Вроде есть DATEPART, но она при передаче и S и SS возвращает секунды без 0 спереди (и для m или mi, судя по всему тоже). Поэтому разобраться при восстановлении бэкапа - не представляется возможным (сегодня, например, был такой бэкап: 20170109_1711). То ли 17:11:00, то ли 17:01:01. По дате файла все понятно, но "напрягает".
Гугление ни к чему не привело.
С наскока решил вот так (@CurrTS = GETDATE()):
PHP код:--- Получаем строку из текущего времени формата "hhmmss"
SET @BackupTimeStamp = (DATEPART(hh, @CurrTS) * 10000) + (DATEPART(mi, @CurrTS) * 100) + DATEPART(ss, @CurrTS);
ЗЫ. "Красивше" )
-
10.01.2017, 08:47 #14
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
Вроде есть DATEPART, но она при передаче и S и SS возвращает секунды без 0 спереди (и для m или mi, судя по всему тоже). Поэтому разобраться при восстановлении бэкапа - не представляется возможным (сегодня, например, был такой бэкап: 20170109_1711). То ли 17:11:00, то ли 17:01:01. По дате файла все понятно, но "напрягает".
Гугление ни к чему не привело.
Очень четко написано, почему у вас нет лидирующих нулей.
-
10.01.2017, 10:27 #15
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Да я знаю, почему нет нулей. Потому что int.
-
10.01.2017, 13:31 #16
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
проще всего имхо
RIGHT("00"+DATEPART(ss, @CurrTS),2)
либо забить
P.S. Я б забил и использовал стандартный формат 2017_01_05_004549_0027175
-
10.01.2017, 21:46 #17
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Умножение всего, а потом преобразовать в строку для процессора проще, чем перевод в строку каждого, а потом операции со строками, а потом конкатенация. Хотя, на самом деле пофиг. Операция выполняется 1 раз в 1 бэкап (грубо, раз в час).
ЗЫ. Просто выглядят файлы бэкапа понятнее стороннему человеку (даже ручками когда восстанавливаешь, можно понять, что куда).
У меня получается такое:
D:\Backup\Base1\Base1_-1month_full_20161205_170001.bak
D:\Backup\Base1\Base1_0month_full_20170102_170001.bak
...
D:\Backup\Base1\Base1_-2week_full_20161226_170001.bak
D:\Backup\Base1\Base1_-1week_full_20170102_170001.bak
D:\Backup\Base1\Base1_0week_full_20170109_170001.bak
...
D:\Backup\Base1\Base1_-2day_diff_20170107_170101.bak
D:\Backup\Base1\Base1_-1day_diff_20170108_170101.bak
D:\Backup\Base1\Base1_0day_diff_20170109_170101.bak
...
D:\Backup\Base1\Base1_0day_log_20170109_170001.lgb
D:\Backup\Base1\Base1_0day_log_20170109_173101.lgb
D:\Backup\Base1\Base1_0day_log_20170109_180001.lgb
...
0 - текущий день, неделя, месяц, год (год, правда отдельно после закрывания остатков делается вручную).
-1 - соответственно, вчера, прошлая неделя, месяц...
ЗЫЫ. Хотелось 1 функцией. В идеале...
-
10.01.2017, 22:11 #18
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
У нас тут снова шифровальщика поймала секретарь. У нее был подключен сетевой диск на файло-помойку. Как обычно, большинство пользователей там держали рабочие файлы...
4 тера зашифрованных документов )))
Благо чай они не пили. Подавились пиченьками )))
Плюс, к тому, заметили это не сразу (там праздники как раз были), соответственно в бэкапах те же 4 Тб зашифрованных файлов. Перевожу бэкапы на git. С историей в месяц.
Но есть плюс - я воспылал новой страстью к OpenOffice. Его документы не тронуты остались.
-
10.01.2017, 23:29 #19
- Регистрация
- 13.09.2007
- Пол: Мужской (Male)
- Адрес: где-то там
- Авто: Geely
- Сообщений
- 2,594
О какой производительности речь при операциях со строкой в n символов.
Так ИМХО более читабельно и "красивше":
PHP код:SET @timestamp = CONVERT(varchar, getdate(), 120); //yyyy-mm-dd hh:mi:ss(24h)
SET @timestamp = REPLACE(@timestamp,":","");
SET @timestamp = REPLACE(@timestamp," ","_");
PHP код:SET @timestamp = REPLACE(REPLACE(CONVERT(varchar, getdate(), 120),":","")," ","_");
У нас тут снова шифровальщика поймала секретарь. У нее был подключен сетевой диск на файло-помойку. Как обычно, большинство пользователей там держали рабочие файлы...
4 тера зашифрованных документов )))
Благо чай они не пили. Подавились пиченьками )))
Плюс, к тому, заметили это не сразу (там праздники как раз были), соответственно в бэкапах те же 4 Тб зашифрованных файлов. Перевожу бэкапы на git. С историей в месяц.
Но есть плюс - я воспылал новой страстью к OpenOffice. Его документы не тронуты остались.
Если "жирный" внешний канал и есть проплаченное облако, то конечно можно и там хранить.
-
10.01.2017, 23:57 #20
- Регистрация
- 25.06.2010
- Пол: Мужской (Male)
- Адрес: Гомель
- Авто: ROVER 600
- Сообщений
- 7,036
Согласен, умножение на 10000 не сразу доходит.
Но можно добавить UDF типа:
PHP код:function GetFileTS
Спасибо за предложение.
ЗЫ. Твое предложение одной строкой читается хуже, чем мое.
ЗЫЫ. Вот как приятно в постгре (еще 8.2 который)... Хотелось именно такого...
- - - Добавлено - - -
Была похожая хрень. Админ в общей шаре на каждого сотрудника создавал директории с правом записи только у него (сотрудника), поэтому далеко не ушло.
Если "жирный" внешний канал и есть проплаченное облако, то конечно можно и там хранить.
Есть такой вот NAS (9 Тб RAID 10). Вот на него и хочу версионный бэкап запилить...
Здесь мы обсуждаем