首先,数据库的安全就会涉及到备份了,而我们在VAMI UI上面是没有找到如何备份这个VCSA的数据库的,更不用说恢复了,因此,本文就着眼于如何备份和恢复它了;
1、利用SSH或者直接登录到VCSA 55的CLI界面,缺省用户名为root,缺省密码为vmware;
2、然后执行如下命令,将路径切换到vpostgres程序所在目录:
#cd /opt/vmware/vpostgres/10/bin
3、执行如下命令备份VCSA 55的vpostgres数据库:
#/pg_dump EMB_DB_INSTANCE -U EMB_DB_USER -Fp -c > VCDB_Backup
说明:VCDB_Backup这个名字可以自由定义,它就是备份出来的文件名;
4、注意,需要EMB_DB_USER的密码,可以在如下路径的文件中找到:
/etc/vmware-vpx/embedded_dbcfg
利用vi编辑器或其它编辑器打开后,如下图所示,可以看到它的密码是什么:
5、如果需要恢复备份的数据库,可以执行如下命令:
#PGPASSWORD=EMB_DB_PASSWORD /psql -db EMB_DB_INSTANCE -Upostgres - f VCDB_Backup
目 录
总 结
PostgreSQL 通过调用系统 fsync() 或者其他使得事务内容写入到物理磁盘,这样可以保证 *** 作系统或者数据库出现宕机后,仍然可以恢复到某一个一致性的状态。理论上讲 PostgreSQL 的 fsync 功能关闭,可以实现性能的提升,但是带来的影响就是需要承担数据的丢失,因为出现系统宕机或者数据库崩溃的时候有一些数据是没有落盘的。
本文将验证 fsync 参数的性能影响,以及参数关闭时数据库宕机后的影响。
数据量:1000W
fsync 参数:on
初始化表:user_info
pgbench 压测
pgbench 结果
pgbench 压测
pgbench 结果
数据量:1000W
fsync 参数:off
初始化表:user_info
pgbench 压测
pgbench 结果
pgbench 压测
pgbench 结果
通过对比发现,将 fsync 改为 off,对于读 TPS,参数 fsync 的影响不大,对于写 TPS,性能有一定提升。
现在验证参数关闭时数据库宕机后的影响
首先,使用将数据库性能跑起来
然后,模拟服务器断电
之后,启动数据库
提示信息:比致命错误还过分的错误。
结果:数据库无法启动,原因就是因为无法找到一个有效的 checkpoint 记录,这就是因为 fsync 设置为 off,由于数据库异常宕机导致。可以通过使用 pg_resetxlog 恢复数据库,但是会造成部分数据无法找回,数据丢失;也可以通过备份恢复,同样也会丢失部分数据。
fsync 参数对于读 TPS 的性能影响不大,对于写 TPS 的性能有一些影响,设置为 off,写 TPS 性能有一定提升,但是存在数据库宕机后无法正常启动,即使恢复后启动数据库,也会有数据丢失的很大风险。因此生产环境非必要时,不要将此参数设置为 off,还是使用默认的 on 比较稳妥。
以上就是关于如何备份和恢复VCSA 5.5自带的vPostgres数据库全部的内容,包括:如何备份和恢复VCSA 5.5自带的vPostgres数据库、技术文档 - PostgreSQL 性能优化之 fsync 参数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)