首页
学习
活动
专区
圈层
工具
发布

通过psql脚本返回值判断Greenplum任务是否执行成功

背景 由于psql在执行sql脚本文件的过程中,默认是遇到错误继续执行不停止,所以导致我们无法通过其执行的最终返回值来判断该脚本是否有发生错误。...,对time字段写入了一个非法时间戳,所以该条SQL一定会执行出错。...相应的,最终返回值也是不符合预期的0(true),这样则无法根据最终返回值来判断SQL脚本是否执行成功了。所以,这里我们介绍两个方案来实现该需求。...1 [gpadmincloud@mdw-snova-90g4jkrm ~]$ 可以看到,psql -c的方式,遇到错误会立刻中断,并返回一个非0(false)的值,可以满足我们通过返回值来判断SQL是否全部执行成功的需求...特别注意 不管是使用方案一还是方案二,如果想确认SQL最终是否执行成功,那么一定要要判断返回值是否为0。因为与其他语言不同的是,bash shell的返回值为0才是成功,非0则是失败。

3K2916
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何在Ubuntu 16.04上安装PostgreSQL

    mytestdb=# 这是PostgreSQL客户端shell,您可以在其中发出SQL命令。要查看可用命令列表,请使用\h命令。您可以了解在\ h后添加有关特定命令的更多信息。...创建自己的表时,可以根据需要指定任意数量的参数(列)并对其进行适当命名。 从创建数据库部分的步骤2中打开的PostgreSQL shell运行本节中的命令。...此外,角色也可以创建为一组其他角色,类似于Linux“组”.PostgreSQL角色全局适用,因此您无需创建 如果您想在同一服务器上授予对多个数据库的访问权限,则两次使用相同的角色。...退出PostgreSQL shell 。...在特定系统用户将运行本地程序(例如,脚本,由不同用户拥有的CGI / FastCGI进程等)的情况下,此类身份验证非常有用,但为了更高的安全性,您可能希望需要密码才能访问您的数据库。

    2.8K20

    【赵渝强老师】使用PostgreSQL客户端工具

    此外,psql还提供一些元命令和多种类似shell的特性来编写脚本和实现自动化任务提供便利。因此从功能上看,psql等同于Oracle中的sqlplus。...执行该命令连接数据库时, 默认的用户和数据库是postgres。...psql的非交互模式是指在调用psql时直接以选项的形式指定要执行的脚本,脚本中可以含有任意数量的SQL和psql语句,然后psql会自动执行此脚本的内容,期间无需与用户进行交互,这就是非交互模式的本意...(1)编辑脚本文件myscript,并输入要执行的SQL和psql语句,如下:\l\dbselect datname from pg_database;(2)执行脚本bin/psql -f myscript...如果不配置该参数会出现下面的错误信息,如下图所示。(3)重启PostgreSQL数据库服务器。

    1.7K10

    【数据库巡检】支持Oracle、MySQL、MSSQL、PG等11种数据库

    一、巡检脚本简介 该套数据库巡检脚本多数为纯SQL脚本开发,如下所示: 目前一共包含16个脚本,若脚本的扩展名为“.sql”则表示该脚本为sql脚本;若脚本的扩展名为“.pl”则表示该脚本为perl...脚本;若脚本的扩展名为“.sh”则表示该脚本为shell脚本。...脚本DB_OS_HC_lhr_v7.0.0.sh是shell脚本,执行后会对OS的信息进行收集。...数据库 需要有华为的gsql客户端,或PostgreSQL数据库的psql客户端都可以,运行方式如下: 若是openGauss或华为的GaussDB数据库的gsql客户端,则执行: gsql -U gaussdb...若是PostgreSQL数据库的psql客户端,则执行: psql -U gaussdb -h 192.168.66.35 -p 54324 -d postgres -W -H -f D:\DB_openGauss_HC_lhr_v7.0.0

    3.3K20

    【数据库巡检】支持Oracle、MySQL、MSSQL、PG、OceanBase、TiDB、openGauss和达梦等9种数据库

    该套数据库巡检脚本为纯SQL脚本开发,如下所示: 目前一共包含15个脚本,若脚本的扩展名为“.sql”则表示该脚本为sql脚本;若脚本的扩展名为“.pl”则表示该脚本为perl脚本;若脚本的扩展名为...“.sh”则表示该脚本为shell脚本。...脚本DB_OS_HC_lhr_v7.0.0.sh是shell脚本,执行后会对OS的信息进行收集。...openGauss数据库 需要有华为的gsql客户端,或PostgreSQL数据库的psql客户端都可以,运行方式如下: 若是openGauss或华为的GaussDB数据库的gsql客户端,则执行: gsql...> d:\a.html 若是PostgreSQL数据库的psql客户端,则执行: psql -U gaussdb -h 192.168.66.35 -p 54324 -d postgres -W -

    3K20

    数据库PostrageSQL-备份和恢复

    SQL转储 SQL 转储方法的思想是创建一个由SQL命令组成的文件,当把这个文件回馈给服务器时,服务器将利用其中的SQL命令重建与转储时状态一样的数据库。...默认情况下,psql脚本在遇到一个SQL错误后会继续执行。...你也许希望在遇到一个SQL错误后让psql退出,那么可以设置ON_ERROR_STOP变量来运行psql,这将使psql在遇到SQL错误后退出并返回状态3: psql --set ON_ERROR_STOP...这种模式可以通过向psql传递-1或–single-transaction命令行选项来指定。在使用这种模式时,注意即使是很小的一个错误也会导致运行了数小时的恢复被回滚。...该命令的基本用法是: pg_dumpall > dumpfile 转储的结果可以使用psql恢复: psql -f dumpfile postgres (实际上,你可以指定恢复到任何已有数据库名,但是如果你正在将转储载入到一个空集簇中则通常要用

    2.9K10

    从零开始学PostgreSQL (六): 备份和恢复

    2、数据库先决条件: 在执行psql命令前,目标数据库dbname必须已经存在。...4、错误处理: 默认情况下,psql在遇到SQL错误时会继续执行脚本,但你可以通过设置ON_ERROR_STOP变量为on,使psql在第一个错误出现时就停止执行并退出,退出状态码为3。...这对于在已有数据库上执行完整集群备份时非常有用。...3、安全和权限: 归档的数据应存储在具有适当权限的目录中,以防止未经授权的访问。 4、错误处理和监控: 归档命令应返回零退出状态以表明成功,否则PostgreSQL将重试归档。...5、备份工具兼容性:使用如rsync或GNU tar等文件系统备份工具时,注意它们如何处理文件更改的情况。某些版本的这些工具可以配置以忽略文件更改的警告,或者区分更改文件和致命错误的退出代码。

    2.8K11

    如何在Ubuntu 18.04中安装PostgreSQL高级开源数据库

    按照以下步骤在Ubuntu 18.04中安装PostgreSQL(PSQL) - 高级开源数据库: 在开始安装PostgreSQL(PSQL)之前,让我们使用以下命令更新Ubuntu 18.04的软件包和存储库...如果您以postgres帐户登录,则可以通过键入以下内容来创建新用户: postgres@linuxidc:~$ createuser --interactive 相反,如果您希望在不切换普通帐户的情况下为每个命令使用...sudo,请键入: sudo -u postgres createuser --interactive 该脚本将提示您一些选择,并根据您的响应执行正确的Postgres命令,以根据您的规范创建用户。...这意味着,如果您在上一节中创建的用户被称为sammy,则该角色将尝试连接到默认情况下也称为“sammy”的数据库。 您可以使用createdb命令创建适当的数据库。...如果您以postgres帐户登录,则可以键入以下内容: createdb linuxidc 相反,如果您希望在不切换普通帐户的情况下为每个命令使用sudo,则可以键入: sudo -u postgres

    3.2K10

    如何使用 psql 列出 PostgreSQL 数据库和表

    在管理PostgreSQL数据库服务器时,您可能要执行的最常见任务之一就是列出数据库及其表。 PostgreSQL附带了一个名为psql的交互式工具,允许您连接到服务器并对其运行查询。...在使用psql时,还可以利用它的元命令。这些命令对于脚本编写和命令行管理非常有用。所有元命令都以非引号反斜杠开头,也称为反斜杠命令。...前两个是创建新数据库时使用的模板。 如果要获取有关数据库大小,默认表空间和描述的信息,请使用 \l+ 或 \list+ 。仅当当前用户可以连接到数据库时,才会显示数据库大小。...要在不访问 psql shell 的情况下获取所有数据库的列表,请使用 -c 如下所示的开关: sudo -u postgres psql -c "\l" 列出数据库的另一种方法是使用以下 SQL 语句...,则输出将如下所示: No relations found.

    6.2K10

    达梦数据库生成html格式的巡检报告

    1、简介 该套巡检脚本为纯SQL脚本开发,如下所示: [20211013170853.jpg] 目前一共包含10个脚本,若脚本的扩展名为“.sql”则表示该脚本为sql脚本;若脚本的扩展名为“.pl”则表示该脚本为...perl脚本;若脚本的扩展名为“.sh”则表示该脚本为shell脚本。...脚本DB_OS_HC_lhr_v7.0.0.sh是shell脚本,执行后会对OS的信息进行收集。...脚本DB_MySQL_HC_lhr_v7.0.0.sql是MySQL脚本,执行后会产生MySQL的健康检查html报告,该脚本为只读脚本。...SQL*Plus(Oracle)、mysql(MySQL)、MSSQL客户端(SSMS、Navicat皆可)、psql(PG)、gisql(国产达梦)环境即可运行脚本 4、脚本内容可视化,可以看到脚本内容

    1.6K00
    领券