Результат/состояние выполненного запроса MYSQL записать в файл
Таблица БД содержит ~200 млн. строк. Подключаюсь к серверу терминалом по SSH.
Иногда приходится работать с запросами, которые выполняются довольно долго:
DELETE FROM tbl1 WHERE...
INSERT INTO tbl1 SELECT * FROM table2 WHERE...
OPTIMIZE TABLE tbl1;
и т.д.
Во время работы запроса, может оборваться соединение по SSH и сессия подключения к mySQL закроется. При этом СУБД продолжает обрабатывать запрос.
Мне нужно увидеть стандартное сообщение, которое выводит mySQL по окончанию работы над этим запросом (количество затронутых строк, затраченное время, возникшие ошибки и т.д.). Как это сделать? Может быть в файл записать? Подскажите как реализовать.
Ответы (1 шт):
Подключаясь по SSH используйте мультиплексоры tmux или screen.
Аттач сессий решит вашу проблему. Сессия выполняется независимо от SSH-соединения и к ней можно подключиться для наблюдения результатов в любой момент.
Если соединение с интернетом неустойчивое (LTE, Wifi) можно использовать совместно с mosh. Эта тулза автоматически переключает соединения когда интернет появляется после оффлайна и делает это не выходя из открытого readline-интерфейса mysql.