升级 Vertica
重要
在运行升级脚本之前,一定要检查升级前中描述的任务。为升级路径中的每个版本重复执行以下过程:
-
执行现有数据库的完整备份。此预防措施让您在升级失败时能够从备份还原。如果升级失败,可以重新安装以前版本的 Vertica,并将数据库还原到该版本。
如果升级路径包含多个版本,请在第一次升级时创建完整备份。对于后续的每次升级,可以执行增量备份。但 Vertica 建议,如果磁盘空间和时间允许,每次升级前都执行完整备份。
-
使用 admintools 停止数据库。
-
在每个安装了额外软件包(例如 R 语言包)的主机上,卸载该软件包。例如:
rpm -e vertica-R-lang
重要
如果省略此步骤,并且不卸载额外软件包,则在下一步将无法安装 Vertica 服务器软件包。 -
确保您以 root 或 sudo 用户身份登录,并使用以下命令之一运行 RPM 软件包安装程序:
- 如果是 root 用户并且正在安装 RPM:
# rpm -Uvh pathname
- 如果正在使用 sudo 用户安装 RPM:
$ sudo rpm -Uvh pathname
- 如果使用的是 Debian:
$ sudo dpkg -i pathname
- 如果是 root 用户并且正在安装 RPM:
-
在您刚刚安装 RPM 的同一节点上,以 root 或 sudo 用户身份运行
update_vertica
。这将在群集中的所有主机上安装 RPM。例如:Red Hat 或 CentOS
# /opt/vertica/sbin/update_vertica --rpm /home/dbadmin/vertica-12.0.x.x86_64.RHEL6.rpm --dba-user mydba
Debian
# /opt/vertica/sbin/update_vertica --deb /home/dbadmin/vertica-amd64.deb --dba-user mydba
具有以下要求和限制:
-
在升级时,DBADMIN 用户必须能够读取 RPM 或 DEB 文件。一些升级脚本以 DBADMIN 用户身份运行,并且该用户必须能够读取 RPM 或 DEB 文件。
-
使用与上次安装或升级数据库时相同的选项。可以在
/opt/vertica/config/admintools.conf
的install_opts
行上找到这些选项。有关所有选项的详细信息,请参阅使用安装脚本安装 Vertica。当心
如果省略以前的任何选项,将还原它们的默认设置。如果您这样做,或者更改任何选项,则升级脚本将使用新设置重新配置群集。这可能会导致升级后的数据库出现问题。 -
省略
\--hosts/-s host-list
参数。升级脚本将自动识别群集主机。 -
如果 root 用户不在 /etc/sudoers 中,将显示错误。安装程序会以 S0311 报告此问题。有关详细信息,请参阅 Sudoers Manual。
-
-
启动数据库。启动脚本将分析数据库并为新版本执行任何必要的数据和编录更新。
如果 Vertica 发出警告,指示无法安装一个或多个软件包,请运行 admintools
--force-reinstall
选项,强制重新安装这些软件包。有关详细信息,请参阅重新安装软件包。 -
升级完成后,数据库会自动重新启动。
注意
手动重新启动所有启动失败的节点。 -
再执行一次数据库备份。
升级持续时间
持续时间取决于所有群集节点上编录的平均内存大小。对于每个 20GB 内存,升级大约持续一到两个小时时间。
您可以通过查询系统表 RESOURCE_POOL_STATUS 来计算所有节点上的编录内存使用情况:
=> SELECT node_name, pool_name, memory_size_kb FROM resource_pool_status WHERE pool_name = 'metadata';
升级后任务
升级完成后,请查看升级后中的升级后任务。