Nohup с командой mysql
Мне нужно запустить в фоновом режиме некоторые MySQL-запрос... Но как я могу сделать это с nohup?
Стандартно я делаю:
musql -uroot -p
use SomeDb;
Select * from blablalba;
Но как я могу сделать это с запуском в базе данных процесса? я делаю MySQL импорт с nohup, но как с запросом?
4 ответа
mysql -u [username] -p [database_name] -e "[sql_query]"
Пример:
nohup mysql -u root -p somedb -e "select * from mytable" &
Спасибо, это помогло, однако, мне нужно было ввести пароль после команды, поэтому я сделал следующее:
$ nohup mysql -u [username] -p [database_name] -e "[sql_query]" Enter password:
Поскольку я не мог успешно выполнить команду в фоновом режиме, после ввода пароля в командной строке я закрыл свое соединение (закрыв удаленную консоль). Я открыл новый сеанс, и он побежал. Это был трехчасовой запрос с нестабильным беспроводным соединением, так что это очень удобно.
nohup mysql -u [username] -p[password] [database_name] -e "[sql_query]" &
Убедитесь, что пароль соответствует -p
БЕЗ пространства
По какой-то причине у меня были проблемы с тайм-аутом из-за вышеуказанных решений, но я использовал -c
опция, казалось, исправила это (обратите внимание, что это также включает в себя установку пароля и перенаправление стандартного вывода и ошибок на определенный путь):
nohup bash -c "mysql -u my_user --password='my_password' -e \"use SomeDb; Select * from blablalba;\"" > my_file_path 2>&1 &