---
name: "LOAD"
section: "7"
platform: "linux"
package: "postgresql"
version: "18.6-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/LOAD"
---

# LOAD(7)

load a shared library file

## NAME

LOAD - load a shared library file

## SYNOPSIS

```
LOAD 'filename'
```

## DESCRIPTION

This command loads a shared library file into the PostgreSQL server's address space. If the file has been loaded already, the command does nothing. Shared library files that contain C functions are automatically loaded whenever one of their functions is called. Therefore, an explicit **LOAD** is usually only needed to load a library that modifies the server's behavior through “hooks” rather than providing a set of functions.

The library file name is typically given as just a bare file name, which is sought in the server's library search path (set by dynamic\_library\_path). Alternatively it can be given as a full path name. In either case the platform's standard shared library file name extension may be omitted. See Section 36.10.1 for more information on this topic.

Non-superusers can only apply **LOAD** to library files located in $libdir/plugins/ — the specified *filename* must begin with exactly that string. (It is the database administrator's responsibility to ensure that only “safe” libraries are installed there.)

## COMPATIBILITY

**LOAD** is a PostgreSQL extension.

## SEE ALSO

CREATE FUNCTION ([**CREATE\_FUNCTION**(7)](/CREATE_FUNCTION/7.md))
