Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- `sudo apt-get install zip unzip`
- `ssh-keygen` và gõ enter cho đến khi kết thúc về terminal bình thường.(làm trên cả 2 server)
- Ở server có mysql cần backup, `cat ~/.ssh/id_rsa.pub` .Copy toàn bộ key in ra màn hình. Sau đó sang con server cần backup dữ liệu sang, mở file `nano ~/.ssh/authorized_keys` và paste key được copy từ server kia, lưu file.
- Ở server cần backup từ server khác, `cat ~/.ssh/id_rsa.pub`. Copy toàn bộ key in ra màn hình. Sau đó sang conver có db cần backup, mở file `nano ~/.ssh/known_hosts` và paste key vừa copy bên server kia, lưu file.
- Ở server có mysql cần backup, tạo thư mục chứa script `mkdir /home/backup_mysql && cd /home/backup_mysql`. Tạo file `nano backup_mysql.py` và copy:
- ```javascript
- #!/usr/bin/env python
- import subprocess as spr
- import argparse
- import logging
- from datetime import datetime
- dump_run = "/usr/bin/mysqldump"
- user_root = "-u root"
- time_backup = datetime.now().strftime("%Hh-%d-%m-%Y")
- def backup(db_name):
- file_backup = "{}.{}.sql".format(time_backup, db_name)
- file_sql = db_name + ".sql"
- dump_ = "{} {} {} > {}".format(dump_run, user_root, db_name, file_backup)
- spr.check_output(dump_, shell=True)
- # change_file_name = "/bin/mv {} {}".format(file_sql, file_backup)
- # spr.check_output(change_file_name, shell=True)
- return file_backup
- def scp_backup(file_backup, host_name):
- file_zip = "{}.zip".format(file_backup)
- zip_sql = "/usr/bin/zip {} {}".format(file_zip, file_backup)
- spr.check_output(zip_sql, shell=True)
- scp_ = "/usr/bin/scp {} {}".format(file_zip, host_name)
- spr.check_output(scp_, shell=True)
- if __name__ == "__main__":
- import argparse
- parser = argparse.ArgumentParser()
- parser.add_argument("database", help="This's database name you use here")
- parser.add_argument("host", help="This's host name you use here")
- args = parser.parse_args()
- database = args.database
- host_name = args.host
- file_backup_ = backup(database)
- scp_backup(file_backup_, host_name)
- ```
- lưu file và chạy ` python backup_mysql.py dai root@45.32.43.0:/home/backup`
- với:
- dai - tên database cần backup
- root@45.32.43.0:/home/backup - tên host và thư mục cần lưu file backup (thư mục phải tạo sẵn)
- Lần đầu tiên chạy nó sẽ báo có muốn tiếp tục connect đến server khác ko `Are you sure you want to continue connecting (yes/no)? yes
- `, gõ "yes" và enter.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement