{
  "name": "pg_dump",
  "description": "Dumps a database as a text file or to other formats",
  "options": [
    {
      "names": [
        "--help",
        "-?"
      ],
      "description": "Show help for pg_dump"
    },
    {
      "names": [
        "--file",
        "-f"
      ],
      "description": "Output file or directory name",
      "takes_arg": true,
      "arg": {
        "name": "filename"
      }
    },
    {
      "names": [
        "--format",
        "-F"
      ],
      "description": "Output file format",
      "takes_arg": true,
      "arg": {
        "name": "format",
        "suggestions": [
          "c",
          "d",
          "t",
          "p"
        ]
      }
    },
    {
      "names": [
        "--jobs",
        "-j"
      ],
      "description": "Number of parallel job to dump",
      "takes_arg": true,
      "arg": {
        "name": "num"
      }
    },
    {
      "names": [
        "--verbose",
        "-v"
      ],
      "description": "Verbose mode"
    },
    {
      "names": [
        "--version",
        "-V"
      ],
      "description": "Output version information"
    },
    {
      "names": [
        "--compress",
        "-Z"
      ],
      "description": "Compression level for compressed formats",
      "takes_arg": true,
      "arg": {
        "name": "level",
        "suggestions": [
          "0",
          "1",
          "2",
          "3",
          "4",
          "5",
          "6",
          "7",
          "8",
          "9"
        ]
      }
    },
    {
      "names": [
        "--lock-wait-timeout"
      ],
      "description": "Fail after waiting <timeout> for a table lock",
      "takes_arg": true,
      "arg": {
        "name": "timeout"
      }
    },
    {
      "names": [
        "--no-sync"
      ],
      "description": "Do not wait for changes to be written safely to disk"
    },
    {
      "names": [
        "--data-only",
        "-a"
      ],
      "description": "Dump only the data, not the schema"
    },
    {
      "names": [
        "--blobs",
        "-b"
      ],
      "description": "Include large objects in dump"
    },
    {
      "names": [
        "--no-blobs",
        "-B"
      ],
      "description": "Exclude large objects in dump"
    },
    {
      "names": [
        "--clean",
        "-c"
      ],
      "description": "Clean (drop) database objects before recreating"
    },
    {
      "names": [
        "--create",
        "-C"
      ],
      "description": "Include commands to create database in dump"
    },
    {
      "names": [
        "--extension",
        "-e"
      ],
      "description": "Dump the specified extension(s) only",
      "takes_arg": true,
      "arg": {
        "name": "pattern"
      }
    },
    {
      "names": [
        "--encoding",
        "-E"
      ],
      "description": "Dump the data in encoding <encoding>",
      "takes_arg": true,
      "arg": {
        "name": "encoding"
      }
    },
    {
      "names": [
        "--schema",
        "-n"
      ],
      "description": "Dump the specified schema(s) only",
      "takes_arg": true,
      "arg": {
        "name": "pattern"
      }
    },
    {
      "names": [
        "--exclude-schema",
        "-N"
      ],
      "description": "Do NOT dump the specified schema(s)",
      "takes_arg": true,
      "arg": {
        "name": "pattern"
      }
    },
    {
      "names": [
        "--no-owner",
        "-O"
      ],
      "description": "Skip restoration of object ownership in plain-text format"
    },
    {
      "names": [
        "--schema-only",
        "-s"
      ],
      "description": "Dump only the schema, no data"
    },
    {
      "names": [
        "--superuser",
        "-S"
      ],
      "description": "Superuser user name to use in plain-text format",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--table",
        "-t"
      ],
      "description": "Dump the specified table(s) only",
      "takes_arg": true,
      "arg": {
        "name": "table"
      }
    },
    {
      "names": [
        "--exclude-table",
        "-T"
      ],
      "description": "Do NOT dump the specified table(s)",
      "takes_arg": true,
      "arg": {
        "name": "table"
      }
    },
    {
      "names": [
        "--no-privileges",
        "-x",
        "--no-acl"
      ],
      "description": "Do not dump privileges (grant/revoke)"
    },
    {
      "names": [
        "--binary-upgrade"
      ],
      "description": "For use by upgrade utilities only"
    },
    {
      "names": [
        "--column-inserts",
        "--attribute-inserts"
      ],
      "description": "Dump data as INSERT commands with column names"
    },
    {
      "names": [
        "--disable-dollar-quoting"
      ],
      "description": "Disable dollar quoting, use SQL standard quoting"
    },
    {
      "names": [
        "--disable-triggers"
      ],
      "description": "Disable triggers during data-only restore"
    },
    {
      "names": [
        "--enable-row-security"
      ],
      "description": "Enable row security (dump only content user has access to)"
    },
    {
      "names": [
        "--exclude-table-data"
      ],
      "description": "Do NOT dump data for the specified table(s)",
      "takes_arg": true,
      "arg": {
        "name": "table"
      }
    },
    {
      "names": [
        "--extra-float-digits"
      ],
      "description": "Override default setting for extra_float_digits",
      "takes_arg": true,
      "arg": {
        "name": "num"
      }
    },
    {
      "names": [
        "--if-exists"
      ],
      "description": "Use IF EXISTS when dropping objects"
    },
    {
      "names": [
        "--include-foreign-data"
      ],
      "description": "Include data of foreign tables on foreign servers matching PATTERN",
      "takes_arg": true,
      "arg": {
        "name": "pattern"
      }
    },
    {
      "names": [
        "--inserts"
      ],
      "description": "Dump data as INSERT commands, rather than COPY"
    },
    {
      "names": [
        "--load-via-partition-root"
      ],
      "description": "Load partitions via the root table"
    },
    {
      "names": [
        "--no-comments"
      ],
      "description": "Do not dump comments"
    },
    {
      "names": [
        "--no-publications"
      ],
      "description": "Do not dump publications"
    },
    {
      "names": [
        "--no-security-labels"
      ],
      "description": "Do not dump security label assignments"
    },
    {
      "names": [
        "--no-subscriptions"
      ],
      "description": "Do not dump subscriptions"
    },
    {
      "names": [
        "--no-synchronized-snapshots"
      ],
      "description": "Do not use synchronized snapshots in parallel jobs"
    },
    {
      "names": [
        "--no-tablespaces"
      ],
      "description": "Do not dump tablespace assignments"
    },
    {
      "names": [
        "--no-toast-compression"
      ],
      "description": "Do not dump TOAST compression methods"
    },
    {
      "names": [
        "--no-unlogged-table-data"
      ],
      "description": "Do not dump unlogged table data"
    },
    {
      "names": [
        "--on-conflict-do-nothing"
      ],
      "description": "Add ON CONFLICT DO NOTHING to INSERT commands"
    },
    {
      "names": [
        "--quote-all-identifiers"
      ],
      "description": "Quote all identifiers, even if not key words"
    },
    {
      "names": [
        "--rows-per-insert"
      ],
      "description": "Number of rows per INSERT; implies --inserts",
      "takes_arg": true,
      "arg": {
        "name": "numbers"
      }
    },
    {
      "names": [
        "--section"
      ],
      "description": "Dump named section (pre-data, data, or post-data)",
      "takes_arg": true,
      "arg": {
        "name": "section"
      }
    },
    {
      "names": [
        "--serializable-deferrable"
      ],
      "description": "Wait until the dump can run without anomalies"
    },
    {
      "names": [
        "--snapshot"
      ],
      "description": "Use given snapshot for the dump",
      "takes_arg": true,
      "arg": {
        "name": "snapshot"
      }
    },
    {
      "names": [
        "--strict-names"
      ],
      "description": "Require table and/or schema include patterns to match at least one entity each"
    },
    {
      "names": [
        "--use-set-session-authorization"
      ],
      "description": "Use SET SESSION AUTHORIZATION commands instead of ALTER OWNER commands to set ownership"
    },
    {
      "names": [
        "--dbname",
        "-d"
      ],
      "description": "Database to dump",
      "takes_arg": true,
      "arg": {
        "name": "database"
      }
    },
    {
      "names": [
        "--host",
        "-h"
      ],
      "description": "Database server host or socket directory",
      "takes_arg": true,
      "arg": {
        "name": "host"
      }
    },
    {
      "names": [
        "--port",
        "-p"
      ],
      "description": "Database server port number",
      "takes_arg": true,
      "arg": {
        "name": "number"
      }
    },
    {
      "names": [
        "--username",
        "-U"
      ],
      "description": "Connect as specified database user",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--no-password",
        "-w"
      ],
      "description": "Never prompt for password"
    },
    {
      "names": [
        "--password",
        "-W"
      ],
      "description": "Force password prompt (should happen automatically)"
    },
    {
      "names": [
        "--role"
      ],
      "description": "Do SET ROLE before dump",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    }
  ],
  "args": [
    {
      "name": "dbname",
      "description": "Name of the database to dump"
    }
  ]
}
