我正在使用
在HANA中执行备份hdbsql HDB=> BACKUP DATA USING FILE ('/backup/HDB/data/BACKUP_FULL_20170514/SAPHANA')
而不是这个我希望通过模式明智地进行备份,并将其作为cronjob。如何在SAP HANA中按模式进行备份?
答案 0 :(得分:1)
好的,这是一个常见问题,不仅适用于HANA,也适用于任何具有架构支持的DBMS 简短的回答是:无法根据模式备份/恢复数据。模式是数据库中的命名空间,而备份/恢复是数据持久性的功能。
由于事务可以跨多个模式,因此仅恢复单个模式可能会导致不一致,因为事务只会部分恢复。
说了这么多,通常实际要求不是备份/恢复单独的模式,而是允许在共享系统上处理多个数据库租户。
SAP HANA通过Multi-Database-Containers支持此功能。每个租户都有自己的一组数据库进程,内存,文件系统等,但HANA软件安装是共享的。
这样,在不影响其他租户的情况下,备份/恢复单个租户很容易。这种方法的另一个好处是架构本身在所有租户DB中都具有相同的名称,使维护更容易。
答案 1 :(得分:1)
您可以使用此SQL命令导出架构:
EXPORT "MY_SCHEMA".* AS BINARY INTO '/tmp/my_schema' WITH REPLACE;
有关更多选项,请参阅EXPORT documentation。
Tipp:不要导出到已安装的Windows文件系统或NAS,因为导出可以包含具有相同名称但不同外壳的案例相关文件。这会破坏Windows文件系统。 - 最好是直接在Linux系统上压缩它,如下所示:
tar -czf my_schema.tgz /tmp/my_schema/
要导入架构备份,请使用以下命令:
IMPORT "MY_SCHEMA".* FROM '/tmp/my_schema' WITH REPLACE;
您可以使用WITH RENAME "MY_SCHEMA" TO "MY_SCHEMA_COPY"
以其他名称还原它。有关更多选项,请参阅IMPORT documentation。
SAP note 2134959更详细地描述了该过程。另外,请查看SAP注释2121486,其中列出了使用EXPORT
进行备份的不一致风险,如@Lars所述。
答案 2 :(得分:0)
我使用这个简单的命令:
在SHH中转到备份文件夹, 创建您的文件夹以包含备份, 将该文件夹的权限授予HANA Studio写入:
cd /hana/bkps/
mkdir BACKUP_FLD_180101
chmod -R 777 BACKUP_FLD_180101/
接下来转到HANA STUDIO进行备份:
export "FLD_PRD"."*" AS BINARY INTO '/hana/bkps/BACKUP_FLD_180101' with replace threads 10
DONE !!