IBM DB2 + 1C 8.2. Урок 3.
Урок 3. Автоматизация резервного копирования и восстановление данных.
Задание:
1. Создайте резервную копию с помощью командной строки.
2. Пропишите выполнение операции резервного копирования в bat-файл.
3. Создайте в шедулере задание, которое будет исполнять батник по расписанию.
4. Скачайте с сайта IBM файл с скриптом, отредактируйте имя базы и создайте базу с помощью командной строки и этого скрипта.
Проверьте себя:
Храняться ли данные в DB2 в одном файле как в MS SQL Server? (Правильный ответ здесь).
Команда RESTORE DATABASE выполнена успешно, но при соединении с копией базы выдается ошибка: “Не удается установить соединение из-за состояния отложенного повтора транзакций SQLSTATE=57019”.
sqlcode -1117. Что я делаю не так?
Попробуйте в свойствах базы выбрать “Повтор транзакций” и восстановить транзакции до конца журнала.
там главное выставить радио-кнопку “завершить повтор транзакций и вернуть в активное состояние”
Помогло вот это:
https://www.ibm.com/developerworks/mydeveloperworks/wikis/home/wiki/Wc0d1a21236a5_4cb4_9d40_424193dcd115/page/Восстановление%20из%20резервной%20копии?lang=ru
А как узнать номер информационной базы, созданной в db2? Подскажите, пожалуйста.
Пробовал сделать резервную копию в командной строке. Восстановление в новую базу все ок, а вот в ту же, столкнулся с тем что не смог утвердительно ответить на вопрос:
Хотите продолжить? (д/н) д
Хотите продолжить? (д/н) y
Хотите продолжить? (д/н) н
Хотите продолжить? (д/н) n
Хотите продолжить? (д/н)
Вопрос, какую букву он хочет?
Илья, приведите точный сценарий для воспроизведения ситуации.
http://rutube.ru/tracks/3665732.html?v=166573ee312292a79e2a8a87ac93601c
Это ошибка db2.
Отправил в IBM, просьба не удалять видео.
Пока просто перед это операцией вначале сделать drop database.
хорошо, видео не буду удалять.
Все нормально получилось. Раскидайка по разным дискам индексов и базы вообще идея отличная. Вопрос: а если на три диска базу растащить, имеют ли такие изыски смысл. И еще можно ли в комнндной строке указать логи пароль пользователя при подключении к базе (например, если сечас я работаю не под тем пользователем, под которым запущен DB2). Я в SQL практически сделал то же самое. Каждый час с 8 до 18 инкрементальное копирование, в 19-00 полное. По ночам идут тесты SQL и 1С и копирование в dt-шку каждый день. SQL-ные архивы держу за последние два дня. Три раза в неделю бэкаплю системный диск. Так что и сервак поднять не продлема и базы за два дня с точностью до часа. Уже несколько раз спасало :(
С логином/паролем разобрался сам.
Все оказалось просто – db2 connect to <алиас> user <имя_пользователя> using <пароль>
Мои эксперименты я описал здесь
http://gilev.blogspot.com/2010/09/db2-express.html
http://gilev.blogspot.com/2010/09/db2_14.html
Важно, что раскидывать нужно, если есть НАГРУЗКА. Т.е. мы таким образом размажем нагрузку по дискам. Если нечего размазывать (а это смотреть нужно на практике), то разнесение не поможет.
4-й пункт не понял какой скрипт качать :) а восстановить базу можно и мышкой :) правый клик по базе – Восстановить … хотя командной строкой – оно конечно эффектней
Ссылку вставил :)
спасибо, за уроки, жаль только применить их не к чему :(
Ну это – не скажи, третьего дня делали тест, цупом ессно, 3 (!) пользователя считают зп в 1С:ЗУП, документ начисление з/п, ms sql валится в дедлок, дб2 отработал – мое почтение.
Может быть.
Но если будут проблемы с MS SQL, то гораздо легче найти человека в нем разбирающегося.
Просто потому что таких больше.
А вот если будут проблемы с DB2 и их нужно решить срочно, у кого просить помощи ?
Как быстро можно найти грамотного спеца по DB2 и проконсультироваться ?
По MS SQL пожно быстро найти знакомых, которые в ложных случаях дадут бесплатный совет.
А по DB2 я даже не знаю у кого консультироваться.