mycli — это интерактивный клиент командной строки для работы с базами данных MySQL, MariaDB и Percona. Он предоставляет расширенные возможности по сравнению с традиционными клиентами, включая автодополнение, подсветку синтаксиса и поддержку многострочных запросов. mycli написан на языке Python с использованием библиотеки prompt_toolkit, что обеспечивает высокую степень интерактивности и удобства работы в терминале.
Основная цель mycli — улучшить опыт работы с базами данных через командную строку, предоставляя пользователям инструменты для более эффективного написания и выполнения SQL-запросов. Он ориентирован на разработчиков, системных администраторов и всех, кто предпочитает работать с базами данных через терминал, но при этом ценит удобство и функциональность.
- Автодополнение: поддержка автодополнения SQL-ключевых слов, а также таблиц, представлений и столбцов в базе данных. Дополнение контекстно-зависимое, что ускоряет написание запросов.
- Подсветка синтаксиса: использование библиотеки Pygments для подсветки синтаксиса SQL-запросов, что облегчает восприятие и отладку кода.
- Многострочные запросы: возможность писать и выполнять SQL-запросы, занимающие несколько строк, что удобно при работе с сложными запросами.
- Избранные запросы: возможность сохранять часто используемые запросы с помощью команды
\fsи выполнять их с помощью\f, что ускоряет повторное использование кода. - Запись логов: опциональная возможность записывать все выполненные запросы и их результаты в файл журнала для последующего анализа.
- Конфигурация: автоматическое создание конфигурационного файла
~/.myclircпри первом запуске, позволяющее настроить поведение клиента под индивидуальные предпочтения. - Подключения SSL: поддержка защищённых соединений с базой данных через SSL, обеспечивающая безопасность передачи данных.
- Поддержка клавишных сочетаний: возможность выбора между режимами клавишных сочетаний Emacs и Vi, что позволяет работать в привычной среде.
- Кроссплатформенность: mycli доступен для различных операционных систем, включая Linux, macOS и Windows, что обеспечивает его широкое применение.