草庐IT

PostgreSQL插件那么多,怎样管理最高效?

华为云开发者社区 2023-12-14 原文
摘要:华为云RDS for PostgreSQL通过插件管理功能,很好地解决了PostgreSQL版本与插件耦合的问题,帮助用户更直观、更快速地安装管理数据库插件。

本文分享自华为云社区《PostgreSQL插件那么多,怎样管理最高效?》,作者:GaussDB 数据库。

云服务环境下,如何让客户更方便地在各个PostgreSQL的版本下安装插件和扩展功能,成为云服务厂商的一个挑战。华为云RDS for PostgreSQL通过插件管理功能,很好地解决了PostgreSQL版本与插件耦合的问题,帮助用户更直观、更快速地安装管理数据库插件。

关于PostgreSQL插件

众所周知,PostgreSQL支持很多插件,其中包括第三方插件。

  • PostgreSQL发展至今,华为云已经从 PostgreSQL 9.5 版本演进到 PostgreSQL 14 版本,目前共支持7个大版本,每个大版本可以支持的插件并不完全相同,因此,判断每个版本支持哪些插件变得繁琐。
  • 如我们所知,部分插件在安装时,必须要修改 shared_preload_libraries 这个参数,手动修改费时费力。
  • 安装插件时只有超级用户才能进行安装,而超级用户权限太大,可以执行很多高危操作,容易造成云数据库异常不可用等非常严重的影响。

以上种种可以看出PostgreSQL插件安装及管理相对复杂。为了让客户更方便地安装插件,华为云开发了插件管理功能,客户只需在交互界面上点击需要安装的插件,之后的安装就交由华为云后台完成即可,简单方便,省时省力。

RDS for PostgreSQL插件管理功能

PostgreSQL支持的插件很多,而且当前数据库支持安装哪些插件,用户并不能清楚直观地看出来,华为云插件管理功能将当前数据库支持安装的插件以列表形式全部显示出来,方便用户查看安装。

前面提到,PostgreSQL的部分插件安装时,需要修改参数 shared_preload_libraries,华为云插件管理功能同时支持修改该参数。修改方法有两种,可以灵活取用:

方法一:通过管理参数值功能批量修改 shared_preload_libraries 参数。

方法二:在安装插件前,单独修改参数值实现对应插件库的加载。

注意事项

shared_preload_libraries参数修改后需要重启实例才能生效。对于包含只读实例的PostgreSQL服务,修改主实例参数后,只读实例的参数将自动同步修改,在重启实例时,需要同时重启只读实例。

部分插件在使用时,需要同时添加对应的GUC参数才能正常使用,比如 pg_cron 插件,需要先修改参数“cron.database_name”为需要使用的数据库。

部分插件安装或卸载时,会同步安装或卸载其依赖插件,以及相关依赖表。例如:postgis_sfcgal插件依赖于postgis插件,创建插件postgis_sfcgal时,postgis插件会被优先自动同步创建;同时,卸载postgis插件时,会同步卸载postgis_sfcgal插件。

结束语

华为云RDS for PostgreSQL插件管理功能,很好地帮助用户解决了到处网罗当前版本支持哪些插件的繁琐;以及不知道如何安装插件和知道方法后安装操作复杂的问题,提升了插件安装的用户体验。

技术无止境,在云数据库使用领域,还有很多需要我们优化解决的地方,例如如何帮助用户识别当前数据库中可能存在的风险,查看当前数据库中的TOP SQL,如何帮助客户更好的管理数据库和账号等等。我们后续会针对这些点进行优化,给客户带来更多的惊喜。

 

点击关注,第一时间了解华为云新鲜技术~

有关PostgreSQL插件那么多,怎样管理最高效?的更多相关文章

  1. ruby - i18n Assets 管理/翻译 UI - 2

    我正在使用i18n从头开始​​构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在ruby​​onrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi

  2. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  3. ruby-on-rails - 无法使用 Rails 3.2 创建插件? - 2

    我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby​​1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在

  4. ruby - 使 faSTLane 不那么冗长 - 2

    有没有办法配置(例如,可以使用Fastfile)或以更简洁的方式执行FaSTLane?它目前打印出很多信息,这些信息通常会使开发人员对警告和错误视而不见。主要问题是需要花费一些时间在大量无用消息中滚动和搜索黄色/红色文本,直到您了解发生了什么。默认设置会打印所有内容,令人惊讶的是甚至还有--verbosemode对于CLI,但我找不到任何相反的东西,例如--quiet模式。编辑:下面是一些我希望能够抑制的输出示例。考虑到我使用了来自gitrepo的Fastfile,gym、match、cocoapods、get_version_number、increment_version_numb

  5. ruby-on-rails - 如果我将 ruby​​ 版本 2.5.1 与 rails 版本 2.3.18 一起使用会怎样? - 2

    如果我使用ruby​​版本2.5.1和Rails版本2.3.18会怎样?我有基于rails2.3.18和ruby​​1.9.2p320构建的rails应用程序,我只想升级ruby的版本,而不是rails,这可能吗?我必须面对哪些挑战? 最佳答案 GitHub维护apublicfork它有针对旧Rails版本的分支,有各种变化,它们一直在运行。有一段时间,他们在较新的Ruby版本上运行较旧的Rails版本,而不是最初支持的版本,因此您可能会发现一些关于需要向后移植的有用提示。不过,他们现在已经有几年没有使用2.3了,所以充其量只能让更

  6. ruby-on-rails - 获取 inf-ruby 以使用 ruby​​ 版本管理器 (rvm) - 2

    我安装了ruby​​版本管理器,并将RVM安装的ruby​​实现设置为默认值,这样'哪个ruby'显示'~/.rvm/ruby-1.8.6-p383/bin/ruby'但是当我在emacs中打开inf-ruby缓冲区时,它使用安装在/usr/bin中的ruby​​。有没有办法让emacs像shell一样尊重ruby​​的路径?谢谢! 最佳答案 我创建了一个emacs扩展来将rvm集成到emacs中。如果您有兴趣,可以在这里获取:http://github.com/senny/rvm.el

  7. ruby-on-rails - 事件管理员日期过滤器日期格式自定义 - 2

    是否有简单的方法来更改默认ISO格式(yyyy-mm-dd)的ActiveAdmin日期过滤器显示格式? 最佳答案 您可以像这样为日期选择器提供额外的选项,而不是覆盖js:=f.input:my_date,as::datepicker,datepicker_options:{dateFormat:"mm/dd/yy"} 关于ruby-on-rails-事件管理员日期过滤器日期格式自定义,我们在StackOverflow上找到一个类似的问题: https://s

  8. 怎样用一台手机做自媒体? - 2

    其实做自媒体的成本并不高,入门只需要一部手机即可!在手机上找视频素材、使用手机剪辑视频、最后使用手机发布视频作品获得收益!方法并不难,今天这期内容就来给粉丝们分享一种小方法,每天稳定收益100-300,抓紧点赞收藏!1、找素材(1)使用手机拍摄自己喜欢的经典段落,使用程序把文案内容提取出来(2)也可以在豆瓣、知乎、微博等网站中找一些自己需要的文案素材(3)把文案进行润色修改,可以加入一些自己的观点(4)视频素材可以使用软件中自带的素材,也可以在素材网站中下载完整版的素材2、文案配音(1)把复制好的文案直接导入小程序中(2)调整音色、音调后一键合成音频即可(3)可以选择自己朗读配音,需要花一点时

  9. ruby-on-rails - 您希望看到哪些 Rails 插件? - 2

    您认为可以作为插件很好地存在于您的Rails应用程序中必须实现的哪些行为?您过去曾搜索过哪些插件功能但找不到?哪些现有的Rails插件可以改进或扩展,如何改进或扩展? 最佳答案 我希望在管理界面中看到一个引擎插件,它提供了应用程序中所有模型的仪表板摘要,以及可配置的事件图表。 关于ruby-on-rails-您希望看到哪些Rails插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questio

  10. ruby - (Ruby || Python) 窗口管理器 - 2

    我想用这两种语言中的任何一种(最好是ruby​​)制作一个窗口管理器。老实说,除了我需要加载某种X模块外,我不知道从哪里开始。因此,如果有人有线索,如果您能指出正确的方向,那就太好了。谢谢 最佳答案 XCB,X的下一代API使用XML格式定义X协议(protocol),并使用脚本生成特定语言绑定(bind)。它在概念上与SWIG类似,只是它描述的不是CAPI,而是X协议(protocol)。目前,C和Python存在绑定(bind)。理论上,Ruby端口只是编写一个从XML协议(protocol)定义语言到Ruby的翻译器的问题。生

随机推荐