1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/qieangel2013-see

Клонировать/Скачать
README.md 11 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 01:48 5f531b8

См. платформу для аудита SQL



Версия v2.0

Версия v2.0 является совершенно новой версией, выполнение SQL использует асинхронный режим, а также выполняет по расписанию и т. д. Чтобы обновить версию v1.0 до версии v2.0:

  1. Обновите базу данных с помощью sql/old/update.sql.
  2. Замените все файлы в sqldata/www (соответствующим образом настройте конфигурацию базы данных).
  3. Войдите в docker (docker attach контейнер id), vi /etc/rc.local.
    • Измените nohup python manage.py celery worker -c 4 --loglevel=info >/dev/null 2>&1 & на nohup python manage.py celery worker -c 10 -B --loglevel=info >/dev/null 2>&1 &.
  4. Перезапустите контейнер docker (docker restart идентификатор контейнера).
  5. Это обновление включает в себя выполнение по расписанию, асинхронное выполнение, отправку уведомлений по электронной почте и WeChat, которые необходимо настроить.
    • Настройка уведомлений по электронной почте (/sqldata/www/backend/utils/mail.py) и WeChat (/sqldata/www/backend/utils/ding.py).
    • Устранены проблемы, связанные с тем, что триггер не позволяет выполнять рабочие задания, и проблемы, вызванные выполнением нескольких строк. Обратите внимание: последующие обновления будут основаны на версии v2.0 и будут обновляться итеративно. Если вы используете версию v1.0, пожалуйста, обновитесь до неё. В настоящее время Master — это версия v2.0.

Установка

Перейдите в каталог docker. Выполните команду docker build -t sql:latest.

Использование

  • Перед запуском службы:
    • Импортируйте папку sqlweb.sql из каталога sql в папку docker перед запуском docker, затем измените файл настройки mysql в папке sqldata/www/backend/sqlweb/.
  • Запуск службы:
    • Выполните команду docker run -idt -p 80:80 -v /data/sqldata/nginx/www.conf:/usr/local/nginx/conf/vhosts/www.conf -v /data/sqldata/www:/usr/local/seevenv/see-master -v /data/sqldata/inception/inc.cnf:/etc/inc.cnf --name mysqldocker sql:latest "/etc/rc.local".
  • Файлы PHP:
    • Проект PHP представляет собой проект, который извлекает данные из сервиса Alibaba Cloud RDS и использует консоль Yii2 Framework для написания, которая может извлекать данные в режиме реального времени.
    • После того как проект PHP извлечёт данные о медленных запросах и сохранит их в базе данных, проект See уже подготовил данные для отображения и рабочий процесс. Не забудьте изменить MySQL проекта PHP на sqlweb.
  • Обратите внимание:
    • Приведённый выше путь необходимо заменить на ваш фактический путь.
  • Логин:
    • Имя пользователя: admin, пароль: 111111.
  • Использование функции отката:
    • Необходимо установить целевую базу данных: [mysqld]
      server-id = 100 # Не ограничивайте конкретное значение
      log_bin = mysql-bin
      binlog_format = row или MIXED. Поскольку некоторые таблицы уже содержат данные, для добавления индексов или полей требуется инструмент. В docker выполните yum install percona-toolkit для выполнения операции в реальном времени по изменению структуры таблицы.

Краткое описание функций

  • Управление целевой базой данных:

    • Поддержка управления несколькими площадками/центрами обработки данных, кластерный способ объединения целевых баз данных.
    • Поддерживает настройку целевой базы данных, структуру/запросы к базе данных.
  • Медленные запросы:

    • Основано на Alibaba Cloud RDS.
    • Статистика медленных запросов.
    • Детализация медленных запросов.
    • Преобразование медленных запросов в рабочие задачи.
  • Операции SQL:

    • На основе Inception.
    • Проверка синтаксиса SQL.
    • Выполнение SQL-запросов.
    • Откат SQL.
    • История.
  • Запросы SQL:

    • Запрос подробной структуры целевой базы данных.
    • Запрашивать данные таблицы, экспортировать результаты в файл.
    • Оптимизация SQL-запроса (на основе Advisor Meituan).
    • Многоуровневая оптимизация (на основе SOAR Xiaomi).
  • Управление пользователями:

    • Регистрация/отмена регистрации/добавление в группу/предоставление разрешений и другие операции управления пользователями.
  • Индивидуальная настройка:

    • Администратор может устанавливать перехват ключевых слов SQL, включать/выключать функции утверждения платформы и другие настройки.
    • Пользователи могут подписываться на часто используемые базы данных, назначать менеджеров для утверждения рабочих задач, чтобы упростить работу во время утверждения.
  • Настройка Inception:

    • Информация о подключении к сервису Inception.
    • Сведения о подключении к резервной базе данных Inception.
    • Описание параметров Inception и их значений.
  • Функция утверждения вручную:

    • Включение/выключение потока.
    • Включить поток, по крайней мере два человека должны подтвердить (поток: отправитель — автоматическое утверждение Inception — утверждение менеджера — онлайн DBA).
    • Выключите поток, менеджер может выполнить онлайн-операцию (поток: отправитель — автоматическое подтверждение Inception — подтверждение менеджера).
  • Права пользователя:

    • Система контроля доступа на основе ролей (RBAC) на уровне таблицы и объекта.
    • Разрешения пользователей настраиваются через управление пользователями.
    • Согласно личности пользователя (член команды/менеджер/руководитель), авторизуйте операции пользователя над SQL, такие как утверждение/отклонение/выполнение/откат и т.д.
  • Рабочий процесс:

    • Пользователю необходимо ввести SQL, указать среду, исполнителя и базу данных.
    • Inception автоматически проверяет синтаксис SQL.
    • Лицо, утверждающее, выполняет утверждение или отклонение.
    • Исполнитель выполняет/отменяет/откатывает операцию.
    • Интерфейс списка SQL предоставляет функции, связанные с SQL, такие как запрос, операция и т. д.
  • API-документы:

    • Автоматически генерирует документы API для каждого интерфейса, соответствующие внешним требованиям.
  • Уведомления:

    • Отправка уведомлений по электронной почте.
  • Другое:

    • Отображение данных Dashboard.

Среда

  • Python 3.6

    • Django 2.0
    • Django Rest Framework 3.8
  • Vue.js 2.9

    • iview 2.8
    • iview-admin 1.3

Демонстрация интерфейса

  • Уведомление по электронной почте:

image

  • Панель мониторинга аудита:

image

  • SQL-запрос:

image

  • Утверждение рабочей задачи:

image

  • Подробные сведения о рабочей задаче 1:

image

  • Подробные сведения о рабочей задаче 2:

image

  • Подробные сведения о рабочей задаче 3:

image

  • Список рабочих задач:

image

  • Настройки рабочей задачи:

image

  • Управление пользователями: Лицензия

— Eclipse Public License — версия 2.0

Copyright © 2018 See

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/qieangel2013-see.git
git@api.gitlife.ru:oschina-mirror/qieangel2013-see.git
oschina-mirror
qieangel2013-see
qieangel2013-see
master