Помощь студентам в учебе
КЛИЕНТ-СЕРВЕРНОЕ ПРИЛОЖЕНИЕ ДЛЯ СОЗДАНИЯ БЭКАПОВ БД POSTGRE SQL И MYSQL
|
Глава 1. Резервное копирование баз данных на современном этапе 6
1.1 Использование СУБД Postgre SQL и MySQL 6
1.2 Резервное копирование баз данных 6
1.3 Основные виды резервного копирования баз данных 7
1.4 Наиболее распространённые приложения для резервного ко-пирования БД 12
Глава 2. Проектирование приложения для создания резервных ко¬пий баз данных 17
2.1 Клиент-серверная архитектура приложения 17
2.2 Выбор языка программирования 18
2.3 Средства разработки ПО 20
2.4 Логика работы программы 21
Глава 3. Реализация и тестирование приложения для создания ре-зервных копий баз данных 25
3.1 Серверная часть 25
3.2 Клиентская часть 36
3.3 Работа программного обеспечения 36
3.4 Проверка работоспособности приложения 39
Заключение 43
Список использованной литературы 43
Приложение 1 43
Приложение 2 46
Приложение 3 49
Приложение 4 52
Приложение 5 58
1.1 Использование СУБД Postgre SQL и MySQL 6
1.2 Резервное копирование баз данных 6
1.3 Основные виды резервного копирования баз данных 7
1.4 Наиболее распространённые приложения для резервного ко-пирования БД 12
Глава 2. Проектирование приложения для создания резервных ко¬пий баз данных 17
2.1 Клиент-серверная архитектура приложения 17
2.2 Выбор языка программирования 18
2.3 Средства разработки ПО 20
2.4 Логика работы программы 21
Глава 3. Реализация и тестирование приложения для создания ре-зервных копий баз данных 25
3.1 Серверная часть 25
3.2 Клиентская часть 36
3.3 Работа программного обеспечения 36
3.4 Проверка работоспособности приложения 39
Заключение 43
Список использованной литературы 43
Приложение 1 43
Приложение 2 46
Приложение 3 49
Приложение 4 52
Приложение 5 58
В настоящее время для увеличения оперативности получения инфор-мации и оптимизации производственных процессов используются базы дан¬ных и языки запросов к ним для гибкого управления базами.
Базы данных (БД) применяются повсеместно: от систем телекоммуни-кации до торговли, от производящих товары заводов и банков до школ с жур¬налами успеваемости. Данные, хранящиеся в БД, необходимы для организа¬ций, так как ускоряют процессы управления и документооборота, поэтому жизненно необходимы методы защиты целостности хранящихся данных. Од¬ним из способов сохранения данных на случай сбоев является резервное ко¬пирование. Однако недостаточно просто скопировать данные из одной части в другую — необходима система, проводящая копирование автоматизирова¬но с возможностью восстановления данных из хранящихся копий, менедж¬мент хранящихся копий и проверка хранящихся данных на целостность. Кро¬ме того, резервные копии могут занимать много места, так что необходимо заботиться об эффективном использовании дискового пространства. Из на¬писанного легко сделать вывод, что ПО, выполняющее описанные функции, может быть вполне актуальным, что и было доказано заказом на работу со стороны ООО «Лайт Софт».
Цель
Разработать кроссплатформенное клиент-серверное приложение, выполняющее функции резервного копирования баз данных MySQL и PostgreSQL согласно расписанию, с возможностью мониторинга создан¬ных копий.
Задачи
1. Изучить методы резервного копирования БД.
2. Изучить с клиент-серверную архитектуру приложений.
3. Выбрать язык программирования, подходящий для реализации про-граммы.
4. Разработать логику работы приложения.
5. Написать приложение.
6. Провести проверку работоспособности приложения.
Базы данных (БД) применяются повсеместно: от систем телекоммуни-кации до торговли, от производящих товары заводов и банков до школ с жур¬налами успеваемости. Данные, хранящиеся в БД, необходимы для организа¬ций, так как ускоряют процессы управления и документооборота, поэтому жизненно необходимы методы защиты целостности хранящихся данных. Од¬ним из способов сохранения данных на случай сбоев является резервное ко¬пирование. Однако недостаточно просто скопировать данные из одной части в другую — необходима система, проводящая копирование автоматизирова¬но с возможностью восстановления данных из хранящихся копий, менедж¬мент хранящихся копий и проверка хранящихся данных на целостность. Кро¬ме того, резервные копии могут занимать много места, так что необходимо заботиться об эффективном использовании дискового пространства. Из на¬писанного легко сделать вывод, что ПО, выполняющее описанные функции, может быть вполне актуальным, что и было доказано заказом на работу со стороны ООО «Лайт Софт».
Цель
Разработать кроссплатформенное клиент-серверное приложение, выполняющее функции резервного копирования баз данных MySQL и PostgreSQL согласно расписанию, с возможностью мониторинга создан¬ных копий.
Задачи
1. Изучить методы резервного копирования БД.
2. Изучить с клиент-серверную архитектуру приложений.
3. Выбрать язык программирования, подходящий для реализации про-граммы.
4. Разработать логику работы приложения.
5. Написать приложение.
6. Провести проверку работоспособности приложения.
Возникли сложности?
Нужна помощь преподавателя?
Помощь в написании работ!
В ходе выполнения выпускной квалификационной работы изучены ме¬тоды резервного копирования баз данных и клиент-серверная архитектура построения приложений, изучены виды резервного копирования баз данных. С учётом преимуществ и недостатков, для реализации программы выбраны полный и дифференциальный.
Изучена теория клиент-серверной архитектуры, подобраны инстру-менты её реализации в разрабатываемой программе: RestAPI, библиотека bottle, протокол хранения информации XML. Веб-интерфейс клиентской ча¬сти реализован на HTML, CSS и JavaScript.
С учётом требований для разработки, а именно кроссплатформенности приложения, в качестве основного языка программирования выбран Python, в качестве дополнительных - SQL и JavaScript.
На основе проанализированной выше информации разработана логика работы программы. Написано клиент-серверное приложение для создания резервных копий БД POSTGRE SQL и MYSQL.
Программа успешно прошла тестирование и зафиксировала все ис-кусственно созданные ошибки. Работоспособность программы проверена на практике.
Приложение создаёт полные и дифференциальные резервные копии в соответствии с расписанием и о существляет проверку создания копий. Ин-формация об ошибках и созданных копиях добавляется в базу данных, кото¬рая может быть просмотрена системным администратором. Программа внед¬рена в деятельность предприятия 000 ”ЛайтСофт”.
Изучена теория клиент-серверной архитектуры, подобраны инстру-менты её реализации в разрабатываемой программе: RestAPI, библиотека bottle, протокол хранения информации XML. Веб-интерфейс клиентской ча¬сти реализован на HTML, CSS и JavaScript.
С учётом требований для разработки, а именно кроссплатформенности приложения, в качестве основного языка программирования выбран Python, в качестве дополнительных - SQL и JavaScript.
На основе проанализированной выше информации разработана логика работы программы. Написано клиент-серверное приложение для создания резервных копий БД POSTGRE SQL и MYSQL.
Программа успешно прошла тестирование и зафиксировала все ис-кусственно созданные ошибки. Работоспособность программы проверена на практике.
Приложение создаёт полные и дифференциальные резервные копии в соответствии с расписанием и о существляет проверку создания копий. Ин-формация об ошибках и созданных копиях добавляется в базу данных, кото¬рая может быть просмотрена системным администратором. Программа внед¬рена в деятельность предприятия 000 ”ЛайтСофт”.
1. [Электронный ресурс] Barman. менеджер бэкапов для серверов PostgreSQL. —URL: https://sidmid.ru/barman (дата обр. 01.04.2020).
2. [Электронный ресурс] Handy Backup. — URL: https://www.tadviser.ru/ index.php/%D0%9F%D1%80%D0%BE%D0%B4%D1%83%D0%BA% D1%82:Handy_Backup (дата обр. 01.04.2020).
3. [Электронный ресурс] REST— JS: Express. — URL: https://ru.hexlet.io/ courses/js-express/lessons/rest/theory_unit#: (дата обр. 01.04.2020).
4. [Электронный ресурс] Sypex Dumper. — URL: https://sypex.net/ (дата обр. 01.04.2020).
5. [Электронный ресурс] Введение в JavaScript. — URL: https : / / learn. javascript.ru/intro (дата обр. 01.04.2020).
6. [Электронный ресурс] Введение в REST API — RESTful веб¬сервисы. — URL: https://habr.com/ru/post/483202/ (дата обр. 01.04.2020).
7. [Электронный ресурс] Виды резервного копирования. — URL: https:// ru.wikipedia.org/wiki/Wolfenstein_3D (дата обр. 31.03.2020).
8. [Электронный ресурс] Дифференциальный инкрементальный бэкап. Разница между дифференциальным и инкрементным резервным копи-рованием. Основные критерии выбора программы для бэкапов. — URL: https: / / 05fi. ru / differencialnyi - inkrementalnyi - bekap - raznica - mezhdu - differencialnym / https: / / 05fi. ru / differencialnyi - inkrementalnyi - bekap - raznica-mezhdu-differencialnym/ (дата обр. 01.04.2020).
9. [Электронный ресурс] Инкрементное копирование. — URL: https : / / stekspb.ru/blog/incremental-backup/ (дата обр. 01.04.2020).
10. [Электронный ресурс] Какой язык программирования выбрать исходя из требований к проекту? — URL: https://arduinoplus.ru/vibor-yazika- programmirovania/ (дата обр. 30.05.2020).
11. [Электронный ресурс] Клиент-серверная архитектура: что это такое и для чего ее используют? — URL: https://codernet.ru/articles/web/klient- servernaya_arxitektura_chto_eto_takoe_i_dlya_chego_ee_ispolzuyut/ (дата обр. 01.04.2020).
12. [Электронный ресурс] ОСНОВНЫЕ ПОНЯТИЯ И ОСОБЕННОСТИ КЛИЕНТ-СЕРВЕРНОЙ АРХИТЕКТУРЫ. — URL: https://testmatick. com/ru/osnovnye-ponyatiya - i- osobennosti- klient- servernoj - arhitektury/ (дата обр. 31.03.2020).
13. [Электронный ресурс] Основы работы с базами данных: Информа¬ция. — URL: https : // intuit. ru / studies / courses/ 93 / 93 / info (дата обр. 05.05.2020).
14. [Электронный ресурс] Разбираемся с утилитами для бэкапа баз дан-ных. — URL: https: / / xakep .ru/ 2014/10/16 / database - backup - servers/ (дата обр. 31.03.2020).
15. [Электронный ресурс] Резервное копирование и восстановление баз данных SQL Server. — URL: https : // docs . microsoft. com/ ru - ru/ sql / relational-databases/backup-restore/back- up-and- restore- of- sql- server- databases?view=sql-server-ver15 (дата обр. 01.04.2020).
16. [Электронный ресурс] Резервное копирование с помощью Iperius Backup. — URL: https://softlist.com.ua/articles/rezervnoe-kopirovanie-s- pomoshchyu-iperius-backup/ (дата обр. 01.04.2020).
17. [Электронный ресурс] Синтетическое резервное копирование. — URL: https://www.arcserve.ru/sinteticheskoe-rezervnoe-kopirovanie.html# (дата обр. 01.04.2020).
18. [Электронный ресурс] Что такое база данных? — URL: https : / / backupsolution.ru/backup-types/ (дата обр. 05.05.2020).
19. [Электронный ресурс] Январский рейтинг языков программирования TIOBE. — URL: https : / / www. opennet. ru / opennews / art. shtml ? num = 56477#:~:text= (дата обр. 30.05.2020).
20. Борсук Н. А. Гартман В. А. Кургузов С. Д. Анализ средств разработки web-страниц // Символ науки - 2016 г. - 11-3 - с.41-43. — URL: https: //cyberleninka.ru/article/n/analiz- sredstv-razrabotki-web- stranits/viewer.
21. Грошкова А.А. Махова А.И. Преимущества использования CSS // Ак-туальные проблемы авиации и космонавтики - 2017 г. - №13 том 3. — URL: https : / / cyberleninka. ru/ article/ n/ preimuschestva- ispolzovaniya- css/viewer.
22. И.ПК. ОСНОВЫ БАЗ ДАННЫХ. — Москва 2009. — URL: https://www. bookvoed.ru/book?id=9312920.
23. Лузанов П. Рогов Е. Л. И. Postgres: первое знакомство. — 2020. — URL: https://edu.postgrespro.ru/introbook_v8.pdf.
24. М. Л. Изучаем Python. - Пер. с англ. - Вильямс. — Вильямс, 2019. — ISBN 978-5-907144-52-1.
25. Савин И. В. Дифференциальное резервное копирование. Преимуще-ства и недостатки // Современные инновации - 2018 г. - №5. — URL: https: / / cyberleninka.ru/article/ n/differentsialnoe- rezervnoe- kopirovanie- preimuschestva-i-nedostatki (дата обр. 01.04.2020).
26. Т. Г. Начинаем программировать на Python. 4-е издание. — БХВ- Петербург, 2019. — ISBN 1512948. — URL: https ://www. bookvoed. ru/book?id=9312920.
27. Танатканова А. К., Жамбаева А. К. Построение клиент-серверных при¬ложений // Наука и иновации сегодня - 2019 г. - №41(2). — URL: https: //publikacija.ru/images/PDF/2019/41/Science- and- education-today - 6-41 -
2. pdf (дата обр. 01.04.2020).
28. Э. Р. Изучаем XML. - Пер. с англ. - СПб: Символ-Плюс, 2001. - 408 с., ил. — Издательство Символ-Плюс, 2017. — ISBN 5-93286-023-5. — URL: https://litportal.ru/avtory/erik-rey/kniga-izuchaem-xml-741907.html.
2. [Электронный ресурс] Handy Backup. — URL: https://www.tadviser.ru/ index.php/%D0%9F%D1%80%D0%BE%D0%B4%D1%83%D0%BA% D1%82:Handy_Backup (дата обр. 01.04.2020).
3. [Электронный ресурс] REST— JS: Express. — URL: https://ru.hexlet.io/ courses/js-express/lessons/rest/theory_unit#: (дата обр. 01.04.2020).
4. [Электронный ресурс] Sypex Dumper. — URL: https://sypex.net/ (дата обр. 01.04.2020).
5. [Электронный ресурс] Введение в JavaScript. — URL: https : / / learn. javascript.ru/intro (дата обр. 01.04.2020).
6. [Электронный ресурс] Введение в REST API — RESTful веб¬сервисы. — URL: https://habr.com/ru/post/483202/ (дата обр. 01.04.2020).
7. [Электронный ресурс] Виды резервного копирования. — URL: https:// ru.wikipedia.org/wiki/Wolfenstein_3D (дата обр. 31.03.2020).
8. [Электронный ресурс] Дифференциальный инкрементальный бэкап. Разница между дифференциальным и инкрементным резервным копи-рованием. Основные критерии выбора программы для бэкапов. — URL: https: / / 05fi. ru / differencialnyi - inkrementalnyi - bekap - raznica - mezhdu - differencialnym / https: / / 05fi. ru / differencialnyi - inkrementalnyi - bekap - raznica-mezhdu-differencialnym/ (дата обр. 01.04.2020).
9. [Электронный ресурс] Инкрементное копирование. — URL: https : / / stekspb.ru/blog/incremental-backup/ (дата обр. 01.04.2020).
10. [Электронный ресурс] Какой язык программирования выбрать исходя из требований к проекту? — URL: https://arduinoplus.ru/vibor-yazika- programmirovania/ (дата обр. 30.05.2020).
11. [Электронный ресурс] Клиент-серверная архитектура: что это такое и для чего ее используют? — URL: https://codernet.ru/articles/web/klient- servernaya_arxitektura_chto_eto_takoe_i_dlya_chego_ee_ispolzuyut/ (дата обр. 01.04.2020).
12. [Электронный ресурс] ОСНОВНЫЕ ПОНЯТИЯ И ОСОБЕННОСТИ КЛИЕНТ-СЕРВЕРНОЙ АРХИТЕКТУРЫ. — URL: https://testmatick. com/ru/osnovnye-ponyatiya - i- osobennosti- klient- servernoj - arhitektury/ (дата обр. 31.03.2020).
13. [Электронный ресурс] Основы работы с базами данных: Информа¬ция. — URL: https : // intuit. ru / studies / courses/ 93 / 93 / info (дата обр. 05.05.2020).
14. [Электронный ресурс] Разбираемся с утилитами для бэкапа баз дан-ных. — URL: https: / / xakep .ru/ 2014/10/16 / database - backup - servers/ (дата обр. 31.03.2020).
15. [Электронный ресурс] Резервное копирование и восстановление баз данных SQL Server. — URL: https : // docs . microsoft. com/ ru - ru/ sql / relational-databases/backup-restore/back- up-and- restore- of- sql- server- databases?view=sql-server-ver15 (дата обр. 01.04.2020).
16. [Электронный ресурс] Резервное копирование с помощью Iperius Backup. — URL: https://softlist.com.ua/articles/rezervnoe-kopirovanie-s- pomoshchyu-iperius-backup/ (дата обр. 01.04.2020).
17. [Электронный ресурс] Синтетическое резервное копирование. — URL: https://www.arcserve.ru/sinteticheskoe-rezervnoe-kopirovanie.html# (дата обр. 01.04.2020).
18. [Электронный ресурс] Что такое база данных? — URL: https : / / backupsolution.ru/backup-types/ (дата обр. 05.05.2020).
19. [Электронный ресурс] Январский рейтинг языков программирования TIOBE. — URL: https : / / www. opennet. ru / opennews / art. shtml ? num = 56477#:~:text= (дата обр. 30.05.2020).
20. Борсук Н. А. Гартман В. А. Кургузов С. Д. Анализ средств разработки web-страниц // Символ науки - 2016 г. - 11-3 - с.41-43. — URL: https: //cyberleninka.ru/article/n/analiz- sredstv-razrabotki-web- stranits/viewer.
21. Грошкова А.А. Махова А.И. Преимущества использования CSS // Ак-туальные проблемы авиации и космонавтики - 2017 г. - №13 том 3. — URL: https : / / cyberleninka. ru/ article/ n/ preimuschestva- ispolzovaniya- css/viewer.
22. И.ПК. ОСНОВЫ БАЗ ДАННЫХ. — Москва 2009. — URL: https://www. bookvoed.ru/book?id=9312920.
23. Лузанов П. Рогов Е. Л. И. Postgres: первое знакомство. — 2020. — URL: https://edu.postgrespro.ru/introbook_v8.pdf.
24. М. Л. Изучаем Python. - Пер. с англ. - Вильямс. — Вильямс, 2019. — ISBN 978-5-907144-52-1.
25. Савин И. В. Дифференциальное резервное копирование. Преимуще-ства и недостатки // Современные инновации - 2018 г. - №5. — URL: https: / / cyberleninka.ru/article/ n/differentsialnoe- rezervnoe- kopirovanie- preimuschestva-i-nedostatki (дата обр. 01.04.2020).
26. Т. Г. Начинаем программировать на Python. 4-е издание. — БХВ- Петербург, 2019. — ISBN 1512948. — URL: https ://www. bookvoed. ru/book?id=9312920.
27. Танатканова А. К., Жамбаева А. К. Построение клиент-серверных при¬ложений // Наука и иновации сегодня - 2019 г. - №41(2). — URL: https: //publikacija.ru/images/PDF/2019/41/Science- and- education-today - 6-41 -
2. pdf (дата обр. 01.04.2020).
28. Э. Р. Изучаем XML. - Пер. с англ. - СПб: Символ-Плюс, 2001. - 408 с., ил. — Издательство Символ-Плюс, 2017. — ISBN 5-93286-023-5. — URL: https://litportal.ru/avtory/erik-rey/kniga-izuchaem-xml-741907.html.
Работу высылаем на протяжении 30 минут после оплаты.