Найти - Пользователи
Полная версия: скопировать базу с удаленного компа
Начало » Python для новичков » скопировать базу с удаленного компа
1
yiooxir
Нужно скопировать базу с удаленного хоста. Доступ есть по ssh. как сделать через ssh. нужно написать такой скрипт, который бы с локальной машины заходил через ssh на сервак, копировал базу, потом выходил из коннекта и с делал копию полученного дампа базы через команду scp.
т.е. просто несколько строчек в shell. как их запихнуть в скрипт ?

я тут с subpocess мучаюсь, но пока что-то даже не знаю куда копать.
вот, научился поднимать ssh коннект через Popen.
t=subprocess.Popen([ssh root@ip, shell=true]),
дальше надо в текущем соединении через mysql сделать дамп.
mysql -u root -p base>/dir/damp
как это сделать, я еще не осилил и вообще не понимаю суть происходящего у субпроцесса. Помогите разобраться плиз.
o7412369815963
Можно сделать попроще - запустить команду через ssh без захода на удаленную машину: http://www.py-my.ru/post/4da3e5741d41c87185000007
так же по пути можно зажать данные gzip'ом

так же тут понадобится без парольная авторизация по ssh: http://www.py-my.ru/post/4c063a5f1d41c867ae000000

если нужен запуск из питона: http://www.py-my.ru/post/4bfb3c691d41c846bc000061

yiooxir
О, спасибо за материал !!!

еще вопрос по subprocess.
как сделать что-то в рамках запущенного субпроцесса, к примеру субпроцесс открывает что-то, что требует ввода пользователя, как ввести данные при этом ?
o7412369815963
вот примеры: http://stackoverflow.com/questions/1595492/blocks-send-input-to-python-subprocess-pipeline
http://stackoverflow.com/questions/8475290/how-do-i-write-to-a-python-subprocess-stdin

pexpect - управление, ввод/вывод : http://www.py-my.ru/post/4bfb3c691d41c846bc000047
paramiko - тоже самое но специально для ssh: https://github.com/paramiko/paramiko
py.user.next
o7412369815963
так же тут понадобится без парольная авторизация по ssh:
нужно помнить, что на сервере у папки .ssh и файлов в ней должны стоять специальные права
включённая опция сервера StrictModes yes не пропустит авторизацию по ключу, если файл с ключами не будет иметь правильных прав
(однажды долго искал причину)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB