Как выполнять SQL-скрипт из командной строки: Batch file
Быстрый ответ
Если вы желаете запустить SQL-скрипт из командной строки, используйте подходящий инструмент для работы с вашей базой данных:
MySQL/MariaDB:
mysql -u пользователь -p имя_базы < файл.sql
PostgreSQL:
psql -U пользователь -d имя_базы -f файл.sql
SQL Server:
sqlcmd -S сервер -d имя_базы -U пользователь -P пароль -i файл.sql
SQLite:
sqlite3 имя_базы < файл.sql
В эти команды следует вставить актуальные данные: имя пользователя, имя базы, название файла с SQL-скриптом, имя сервера и пароль. После этого вставьте команды в командную строку и запустите их.
Оптимизация SQL-команд
Используйте интегрированную безопасность с sqlcmd
В целях сохранения конфиденциальности учетных данных используйте ключ -E
для активации интегрированной безопасности в sqlcmd.
sqlcmd -S сервер -d имя_базы -E -i файл.sql
Выполнение отдельных команд
Для выполнения отдельных SQL-запросов и немедленного завершения сессии применяйте ключ -Q
.
sqlcmd -S сервер -d имя_базы -E -Q "SELECT * FROM моя_таблица"
Перенаправление вывода в файл
Чтобы перенаправить результаты выполнения скрипта в файл, используйте ключ -o
.
sqlcmd -S сервер -d имя_базы -E -i файл.sql -o вывод.txt
Реализация безопасности и автоматизация исполнения скриптов
Осуществляйте защиту конфиденциальных данных
Применяйте интегрированную безопасность либо конфигурационные файлы с переменными окружения, чтобы избежать утечки паролей.
Автоматизируйте процессы с помощью бат-файлов и sqlcmd
Совместное использование sqlcmd и бат-файлов позволит вам автоматизировать процессы работы с базой данных. Не забывайте тестировать скрипты в различных условиях.
Визуализация
Командная строка функционирует как возможность удаленного управления вашей базой данных:
1. Командная строка (🔮)
2. SQL-скрипт (📜)
3. База данных (🏰)
$ sqlcmd -S ИмяСервера -d ИмяБазыДанных -E -i Скрипт.sql
С помощью командной строки вы как бы волшебник, оживляющий данные:
До: База данных (🏰) с неактивными данными (💤)
После: Оживленная и активно функционирующая база данных (🏰) с данными (✨)
Защита данных и устранение проблем с скриптами
Тестирование в непродуктивной среде
Всегда проверяйте новые скрипты в безопасной тестовой среде, чтобы не навредить рабочей системе.
Регулярное создание резервных копий
Перед запуском рискованных команд всегда создавайте свежие резервные копии баз данных.
Поиск помощи в сообществах
Если у вас возникли трудности, не задерживайтесь на проблемах, обратитесь за помощью к профессиональным сообществам и форумам по SQL.
Полезные материалы
- sqlcmd Utility – SQL Server | Microsoft Learn — детальное руководство по использованию sqlcmd.
- MySQL 8.0 Reference Manual :: 6.5.1.5 Executing SQL Statements from a Text File — руководство по запуску операторов MySQL из текстового файла.
- PostgreSQL Documentation: psql — документация по использованию psql.
- SQL*Plus User's Guide and Reference — руководство Oracle о работе со скриптами в SQL*Plus.
- SQLite Command Line Shell — описание работы командной строки SQLite для запуска скриптов.
- Oracle SQLcl — современный командный интерфейс от Oracle.
- Cron Jobs for Automation on Linux — руководство по настройке автоматического запуска скриптов в Linux.