数据库异地备份与免密脚本实践

需积分: 10 0 下载量 121 浏览量 更新于2024-08-05 收藏 1KB TXT 举报
"本资源主要讨论的是Linux环境下数据库数据备份的策略与实现方法,以及利用SSH免密远程传输技术。主要内容包括: 1. 备份策略:采用了每日凌晨进行全量备份,并保持一周的存档,即备份周期为一周,过期的备份按照滚动方式删除。备份的地点分为本地(本机)和异地(另一台服务器)两个位置。 2. 脚本编写:提供了一个bash脚本,用于创建备份目录、执行数据库备份(kingbase数据库)并生成压缩文件。脚本使用`sys_dmp`工具备份数据库,同时将备份文件压缩为`.zip`格式,并通过`scp`命令将文件安全地传输到异地服务器。 3. 免密传输:通过SSH密钥对实现无密码远程文件传输。首先,在客户端生成一对RSA密钥(id_rsa和id_rsa.pub),然后将公钥复制到备份服务器的`authorized_keys`文件中,确保客户端可以无密码登录。为了测试,使用`scp`命令在无密码情况下发送一个测试文件。 4. 定时任务设置:脚本被集成到Linux系统的定时任务中,通过`crontab`命令设置每天凌晨运行该备份脚本。定时任务的管理包括添加、查看和删除,以确保备份任务的稳定执行。 5. 删除过期备份:在备份策略中,还提到定期清理过期的备份,通过`find`命令查找满足条件(类型为`f`且修改时间超过7天)的文件并删除,保持磁盘空间的有效管理。 整体来说,这份资源提供了一套完整的数据库备份方案,不仅关注数据的安全存储,还考虑了效率和自动化运维的要求。"

用sql语句完成下面任务:(一)备份 创建数据库db_test1、db_test2。 1.备份数据库db_school中的tbl_student、tbl_course、tbl_score。 2.备份数据库db_school中的所有表。 3.备份数据库db_school、db_test1。 4.备份所有数据库。 (二)还原 1.删除数据库db_school中的tbl_student、tbl_course、tbl_score,用任务五的备份文件恢复数据表tbl_student、tbl_course、tbl_score。 2.删除数据库db_school中的所有表,用任务五的备份文件恢复数据表。 3.删除数据库db_school,用任务五的备份文件恢复数据库db_school。 4.删除数据库db_school、db_test1,用任务五的备份文件恢复数据库。 5.删除数据库db_school、db_test1、db_test2,用任务五的备份文件恢复数据库。 (三)数据导出和导入 1.导出数据库db_school中tbl_student表的数据到student.txt。 2.将tbl_student中数据清空,将student.txt中数据导入数据表tbl_student。 (四)进销存数据库中的备份和还原 (1)备份数据库db_inventory中的销售表(tbl_sell)和进货表(tbl_stock)。 (2)创建数据库test1和test2,备份数据库db_inventory和test1。 (3)备份所有数据库。 (4)删除db_inventory中的销售表和进货表,用(1)中备份文件进行还原。 (5)删除db_inventory和test1,用(2)中备份文件进行还原。 (6)删除所有数据库,用(3)备份文件进行恢复。 (7)导出数据库db_inventory中销售表的数据到sell.txt文件。 (8)删除销售表中的数据,将sell.txt文件导入销售表。

2023-05-30 上传