centos

CentOS SSH如何备份与恢复

小樊
45
2025-04-10 12:49:01
栏目: 智能运维

在CentOS系统中,使用SSH进行备份与恢复通常涉及以下几个步骤:

备份

  1. 使用rsync进行文件备份 rsync是一个非常强大的文件同步工具,可以通过SSH进行远程备份。

    rsync -avz --delete /path/to/source/ user@remotehost:/path/to/destination/
    
    • -a:归档模式,表示递归传输并保持符号链接、文件权限、时间戳、用户和组信息。
    • -v:详细模式,显示传输过程中的详细信息。
    • -z:压缩文件数据在传输过程中。
    • --delete:删除目标目录中源目录不存在的文件。
  2. 备份数据库 如果你需要备份MySQL或PostgreSQL数据库,可以使用相应的命令行工具。

    • MySQL

      mysqldump -u username -p database_name > backup.sql
      

      然后通过SSH将备份文件传输到远程服务器:

      scp backup.sql user@remotehost:/path/to/destination/
      
    • PostgreSQL

      pg_dump -U username -d database_name > backup.sql
      

      同样通过SSH传输备份文件:

      scp backup.sql user@remotehost:/path/to/destination/
      

恢复

  1. 使用rsync进行文件恢复 如果你需要从备份中恢复文件,可以使用相同的rsync命令,但方向相反。

    rsync -avz --delete user@remotehost:/path/to/destination/ /path/to/source/
    
  2. 恢复数据库

    • MySQL

      mysql -u username -p database_name < backup.sql
      
    • PostgreSQL

      psql -U username -d database_name < backup.sql
      

自动化备份

你可以使用cron作业来自动化备份过程。编辑crontab文件:

crontab -e

添加一行来定义备份任务,例如每天凌晨2点进行备份:

0 2 * * * rsync -avz --delete /path/to/source/ user@remotehost:/path/to/destination/

保存并退出编辑器。

注意事项

通过以上步骤,你可以在CentOS系统中使用SSH进行文件和数据库的备份与恢复。

0
看了该问题的人还看了