• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > Greenplum数据库升级实务(上),greenplum实务

Greenplum数据库升级实务(上),greenplum实务

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含greenplum数据库,greenplum数据库下载,greenplum数据库教程,greenplum,greenplum官网等服务器相关知识,网友希望可以进行参考

Greenplum数据库升级实务(上),greenplum实务


任何系统的升级都有个量变到质变的过渡:版本相差小的时候,通常很简单,版本相差大的时候,就是一场噩梦。不过版本相差小的时候,大伙儿往往安于现状。本文实际记录从GP4.2.7.2到4.3.5.0的升级过程,从版本号看相差不大,但是GP的版本命名中,第二位的变化就已经是大升级了。另需说明的是,本文升级的GP数据库规模不小,用户较多,管理混沌,在加上GP实在是有点儿脆弱(相比oracle等),所以遇到了较多元数据问题(请参加前4篇)。

起点

  • 数据库版本:Greenplum Database 4.2.7.2 build 1(PostgreSQL 8.2.15)
  • 自定义函数:$GPHOME/lib有使用uuid-1.6.2.tar.gz编译的oracle自定义函数
  • 没有append-only tables
  • ETL里有使用external tables
  • 没有使用extensions,但安装了pljava和plr,没有安装madlib
  • 图形管理界面版本:Greenplum Command Center 1.2.0.1 build 2
  • 有standby master,有mirror

目标

  • 数据库版本:Greenplum Database 4.3.5.0 build 1(PostgreSQL 8.2.15)
  • 图形管理界面版本:Greenplum Command Center 1.3.0.0 build 91

准备

介质

  • GP数据库服务器:greenplum-db-4.3.5.0-build-1-RHEL5-x86_64.zip
  • GP管理图形界面:greenplum-cc-web-1.3.0.0-build-91-RHEL5-x86_64.zip
  • ETL需要的gpfdist工具包:greenplum-connectivity-4.3.5.0-build-1-WinXP-x86_32.msi和greenplum-loaders-4.3.5.0-build-1-WinXP-x86_32.msi
  • R语言扩展包:plr-ossv8.3.0.15_pv2.1_gpdb4.3orca-rhel5-x86_64.gppkg
  • Java语言扩展包:pljava-ossv1.4.0_pv1.2_gpdb4.3orca-rhel5-x86_64.gppkg
  • Madlib扩展包:madlib-ossv1.7.1_pv1.9.3_gpdb4.3orca-rhel5-x86_64.tar
  • 预估升级时间的脚本:estimate_42_to_43_migrate_time.zip
  • Oracle兼容包的源代码和编译发布步骤:uuid-1.6.2.tar.gz

时间估计

登录master节点,上传并解压estimate_42_to_43_migrate_time.zip,得到estimate_42_to_43_migrate_time.sql,切换到gpadmin用户

$ psql -d databasename -f estimate_42_to_43_migrate_time.sql
$ psql -d databasename -c "select estimate_42_to_43_migrate_time();"
WARNING:  "work_mem": setting is deprecated, and may be removed in a future release.
                                                                   estimate_42_to_43_migrate_time                            

-----------------------------------------------------------------------------------------------------------------------------
---------------------------------------
 estimate_42_to_43_migrate_time() version: 0.3 run at 2015-05-07 13:52:48
 GPDB version: PostgreSQL 8.2.15 (Greenplum Database 4.2.7.2 build 1) on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 
4.4.2 compiled on Feb 25 2014 18:05:04
 Database: databasename  
 Number of primary segments: 88
 Num of AO objects: 0
 Num of heap objects: 102593
 Estimated migrate time: 01:07:14
(7 rows)

如果有多个数据库,需要针对每个数据运行上面的脚本,并加和时间。

文件备份

通知所有数据库用户备份自己copy到服务器上的文件

数据一致性检查

这一检查非常重要,虽然官方文档上写的是推荐,但是只要存在错误,基本上就不能升级了,必须想办法解决。官方文档上写的“a few weeks”之前执行这一操作的建议,非常必要,GP库到了一定量级,错误几乎是必然的,解决这些错误真的是要花费以星期计的时间。

  • 使用GP管理员用户登陆master
  • 重启数据到restricted mode
$ gpstop -M fast
$ gpstart -R
  • 执行数据库一致性检查,如果执行发现错误,gpcheckcat将会生成纠错脚本,与数据库用户确认内容后执行脚本纠错,然后重复检查,如果没有纠错脚本产生,你就只能靠你自己了,如果运气好,你的错误可能在我下面列出的几个错误中。重复解决和检查直到没有错误产生
    • 《如何解决Greenplum的gpcheckcat关于persistent的错误》
    • 《如何解决Greenplum中无法通过标准命令修复的元数据错误》
    • 《如何解决Greenplum master node与seg node元数据不一致》
$ $GPHOME/bin/lib/gpcheckcat  -p 5432 databasename 
  • 使用GP管理员用户登陆master,执行gpstate检查seg node状态,如有failed seg,执行gprecoverseg和gprecoverseg -R修复

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 与Greenplum度过的三个星期,greenplum三个星期
  • Greenplum数据库扩容实务(上)-准备工作,greenplum实务
  • Greenplum数据库升级实务(上),greenplum实务

相关文章

  • MapReduce对输入多文件的处理,mapreduce输入处理
  • Linux下libsvm的安装及简单练习,linuxlibsvm练习
  • Dynamics CRM 2015 Update 1 系列(2): Upsert API,dynamicsupsert
  • Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3,mllibbelief
  • 云服务器之间实时文件同步和文件备份的最简单高效的免费方案,实时文件备份
  • Hadoop之——HDFS随笔,hadoophdfs
  • Hadoop文件解压缩,
  • The method getContextPath() from the type HttpServletRequest refers to the miss,getcontextpath
  • spark core源码分析10 Task的运行,sparkcore
  • hadoop基础知识

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Mesos资料收集(持续更新),mesos资料收集
    • 学习札记:CISCO云计算,札记cisco云计算
    • 在spark上运行独立程序(Self-Contained Applications),selfcontained
    • 微软平台开发技术蓝图,微软平台蓝图
    • 如何配置和使用Pivotal Cloud Foundry里的HAPorxy(下),pivotalhaporxy
    • jsp里input中获取当前时间,与WdatePicker配合使用,inputwdatepicker
    • Zoho产品经理谈中小企业面临的挑战及应对之策,zoho产品经理
    • Storm计算结果是如何存放的,Storm计算结果存放
    • Scala 有几种其它的循环结构,scala几种循环结构
    • hadoop学习笔记(二)——hadoop思想简介,hadoop学习笔记

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有