-
Notifications
You must be signed in to change notification settings - Fork 246
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
PGE: add 17.2 branch and release notes
- Loading branch information
1 parent
84b242c
commit 47bbffc
Showing
32 changed files
with
2,278 additions
and
0 deletions.
There are no files selected for viewing
95 changes: 95 additions & 0 deletions
95
product_docs/docs/pge/17/administration/01_setting_configuration_parameters.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
--- | ||
title: "Setting configuration parameters" | ||
navTitle: "Setting configuration parameters" | ||
description: "Describes how to set the configuration parameters for EDB Postgres Extended Server." | ||
--- | ||
|
||
Set each configuration parameter using a name/value pair. Parameter names aren't case sensitive. The parameter name is typically separated from its value by an optional equals sign (`=`). | ||
|
||
This example shows some configuration parameter settings in the `postgresql.conf` file: | ||
|
||
```ini | ||
# This is a comment | ||
log_connections = yes | ||
log_destination = 'syslog' | ||
search_path = '"$user", public' | ||
shared_buffers = 128MB | ||
``` | ||
|
||
## Types of parameter values | ||
|
||
Parameter values are specified as one of five types: | ||
|
||
- **Boolean** — Acceptable values are `on`, `off`, `true`, `false`, `yes`, `no`, `1`, `0`, or any unambiguous prefix of these. | ||
- **Integer** — Number without a fractional part. | ||
- **Floating point** — Number with an optional fractional part separated by a decimal point. | ||
- **String** — Text value enclosed in single quotes if the value isn't a simple identifier or number, that is, the value contains special characters such as spaces or other punctuation marks. | ||
- **Enum** — Specific set of string values. The allowed values can be found in the system view `pg_settings.enumvals`. Enum values are not case sensitive. | ||
|
||
Some settings specify a memory or time value. Each of these has an implicit unit, which is kilobytes, blocks (typically 8 kilobytes), milliseconds, seconds, or minutes. You can find default units by referencing the system view `pg_settings.unit`. You can specify a different unit explicitly. | ||
|
||
Valid memory units are: | ||
- `kB` (kilobytes) | ||
- `MB` (megabytes) | ||
- `GB` (gigabytes). | ||
|
||
Valid time units are: | ||
- `ms` (milliseconds) | ||
- `s` (seconds) | ||
- `min` (minutes) | ||
- `h` (hours) | ||
- `d` (days). | ||
|
||
The multiplier for memory units is 1024. | ||
|
||
## Specifying configuration parameter settings | ||
|
||
A number of parameter settings are set when the EDB Postgres Extended Server database product is built. These are read-only parameters, and you can't change their values. A couple of parameters are also permanently set for each database when the database is created. These parameters are read-only and you can't later change them for the database. However, there are a number of ways to specify the configuration parameter settings: | ||
|
||
- The initial settings for almost all configurable parameters across the entire database cluster are listed in the `postgresql.conf` configuration file. These settings are put into effect upon database server start or restart. You can override some of these initial parameter settings. All configuration parameters have built-in default settings that are in effect unless you explicitly override them. | ||
|
||
- Configuration parameters in the `postgresql.conf` file are overridden when the same parameters are included in the `postgresql.auto.conf` file. Use the `ALTER SYSTEM` command to manage the configuration parameters in the `postgresql.auto.conf` file. | ||
|
||
- You can modify parameter settings in the configuration file while the database server is running. If the configuration file is then reloaded (meaning a SIGHUP signal is issued), for certain parameter types, the changed parameters settings immediately take effect. For some of these parameter types, the new settings are available in a currently running session immediately after the reload. For others, you must start a new session to use the new settings. And for some others, modified settings don't take effect until the database server is stopped and restarted. See the [PostgreSQL core documentation](https://www.postgresql.org/docs/current/config-setting.html) for information on how to reload the configuration file. | ||
|
||
- You can use the SQL commands `ALTER DATABASE`, `ALTER ROLE`, or `ALTER ROLE IN DATABASE` to modify certain parameter settings. The modified parameter settings take effect for new sessions after you execute the command. `ALTER DATABASE` affects new sessions connecting to the specified database. `ALTER ROLE` affects new sessions started by the specified role. `ALTER ROLE IN DATABASE` affects new sessions started by the specified role connecting to the specified database. Parameter settings established by these SQL commands remain in effect indefinitely, across database server restarts, overriding settings established by the other methods. You can change parameter settings established using the `ALTER DATABASE`, `ALTER ROLE`, or `ALTER ROLE IN DATABASE` commands by either: | ||
|
||
- Reissuing these commands with a different parameter value. | ||
|
||
- Issuing these commands using the `SET parameter TO DEFAULT` clause or the `RESET parameter` clause. These clauses change the parameter back to using the setting set by the other methods. See the [PostgreSQL core documentation](https://www.postgresql.org/docs/current/sql-commands.html) for the syntax of these SQL commands. | ||
|
||
- You can make changes for certain parameter settings for the duration of individual sessions using the `PGOPTIONS` environment variable or by using the `SET` command in the EDB-PSQL or PSQL command-line programs. Parameter settings made this way override settings established using any of the methods discussed earlier, but only during that session. | ||
|
||
## Modifying the postgresql.conf file | ||
|
||
The configuration parameters in the `postgresql.conf` file specify server behavior with regard to auditing, authentication, encryption, and other behaviors. On Linux and Windows hosts, the `postgresql.conf` file resides in the `data` directory under your EDB Postgres Extended Server installation. | ||
|
||
Parameters that are preceded by a pound sign (#) are set to their default value. To change a parameter value, remove the pound sign and enter a new value. After setting or changing a parameter, you must either `reload` or `restart` the server for the new parameter value to take effect. | ||
|
||
In the `postgresql.conf` file, some parameters contain comments that indicate `change requires restart`. To view a list of the parameters that require a server restart, use the following query at the psql command line: | ||
|
||
```sql | ||
SELECT name FROM pg_settings WHERE context = 'postmaster'; | ||
``` | ||
|
||
<div id="modifying_the_pg_hba_conf_file" class="registered_link"></div> | ||
|
||
## Modifying the pg_hba.conf file | ||
|
||
Appropriate authentication methods provide protection and security. Entries in the `pg_hba.conf` file specify the authentication methods that the server uses with connecting clients. Before connecting to the server, you might need to modify the authentication properties specified in the `pg_hba.conf` file. | ||
|
||
When you invoke the initdb utility to create a cluster, the utility creates a `pg_hba.conf` file for that cluster that specifies the type of authentication required from connecting clients. You can modify this file. After modifying the authentication settings in the `pg_hba.conf` file, restart the server and apply the changes. For more information about authentication and modifying the `pg_hba.conf` file, see the [PostgreSQL core documentation](https://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html). | ||
|
||
When the server receives a connection request, it verifies the credentials provided against the authentication settings in the `pg_hba.conf` file before allowing a connection to a database. To log the `pg_hba.conf` file entry to authenticate a connection to the server, set the `log_connections` parameter to `ON` in the `postgresql.conf` file. | ||
|
||
A record specifies a connection type, database name, user name, client IP address, and the authentication method to authorize a connection upon matching these parameters in the `pg_hba.conf` file. Once the connection to a server is authorized, you can see the matched line number and the authentication record from the `pg_hba.conf` file. | ||
|
||
This example shows a log detail for a valid `pg_hba.conf` entry after successful authentication: | ||
|
||
```shell | ||
2020-05-08 10:42:17 IST LOG: connection received: host=[local] | ||
2020-05-08 10:42:17 IST LOG: connection authorized: user=u1 database=edb | ||
application_name=psql | ||
2020-05-08 10:42:17 IST DETAIL: Connection matched pg_hba.conf line 84: | ||
"local all all md5" | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
--- | ||
title: "Database configuration" | ||
description: "How to configure EDB Postgres Extended Server databases." | ||
navigation: | ||
- 01_configuration_parameters | ||
--- | ||
|
||
EDB Postgres Extended Server includes features to help you to maintain, secure, and operate EDB Postgres Extended Server databases. | ||
|
||
You can configure grand unified configuration (GUC) parameters at runtime by modifying the `postgresql.conf` and `pg_hba.conf` files. | ||
|
||
- The `postgresql.conf` file allows you to make persistent changes to your database configuration. | ||
- The `pg_hba.conf` file allows you to change access and authentication settings. | ||
|
||
See [Setting configuration parameters](01_setting_configuration_parameters) for more information. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
|
||
title: Deployment options | ||
originalFilePath: index.md | ||
description: Deployment options available for EDB Postgres Extended Server. | ||
--- | ||
|
||
The deployment options include: | ||
|
||
- [Installing](installing) on a virtual machine or physical server using native packages | ||
|
||
- Deploying it with [EDB Postgres Distributed](/pgd/latest/) using [Trusted Postgres Architect](/pgd/latest/deploy-config/deploy-tpa/) | ||
|
||
- Deploying it on [EDB Postgres AI Cloud Service](/edb-postgres-ai/cloud-service/) with extreme-high-availability cluster types |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
navTitle: Extensions | ||
title: Postgres extensions supported in EDB Postgres Extended Server | ||
description: Postgres extensions supported in EDB Postgres Extended Server. | ||
--- | ||
|
||
EDB provides support for several Postgres extensions on EDB Postgres Extended Server: | ||
|
||
- Open-source extensions | ||
- EDB supported open-source extensions | ||
- EDB-developed extensions | ||
|
||
See [Postgres extensions available by deployment](/pg_extensions/) for an overview of all supported extensions and links to their documentation sites. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
--- | ||
title: EDB Postgres Extended Server | ||
originalFilePath: index.md | ||
navigation: | ||
- release_notes | ||
- "#Get Started" | ||
- deploy_options | ||
- installing | ||
- administration | ||
- "#Features" | ||
- tde | ||
- replication | ||
- extensions | ||
- "#Upgrade" | ||
- upgrading | ||
- "#Reference" | ||
- parameters | ||
- sql_features | ||
- operation | ||
indexCards: simple | ||
--- | ||
|
||
EDB Postgres Extended Server is a Postgres database server distribution built on open-source, community PostgreSQL. It's fully compatible with PostgreSQL. If you have applications written and tested to work with PostgreSQL, they will behave the same with EDB Postgres Extended Server. We will support and fix any functionality or behavior differences between community PostgreSQL and EDB Postgres Extended Server. | ||
|
||
EDB Postgres Extended Server's primary purpose is to extend PostgreSQL with a limited number of features that can't be implemented as extensions, such as [enhanced replication optimization](replication) used by [EDB Postgres Distributed](/pgd/latest/) and [Transparent Data Encryption](/tde/latest/), while maintaining parity in other respects. | ||
|
||
Additional value-add enterprise features include: | ||
- Security though [Transparent Data Encryption](/tde/latest/) | ||
|
||
- Optional [SQL superset](sql_features) to community PostgreSQL | ||
- [WAL pacing delays to avoid flooding transaction logs](./operation/#avoid-flooding-transaction-logs) | ||
- [Additional tracing and diagnostics options](./operation/#additional-tracing-and-diagnostics-options) | ||
|
||
--- |
43 changes: 43 additions & 0 deletions
43
product_docs/docs/pge/17/installing/component_locations.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
--- | ||
title: Default component locations | ||
navTitle: Component locations | ||
description: "Provides information about accessing EDB Postgres Extended Server components after installation." | ||
--- | ||
|
||
The package managers for the various Linux variations install EDB Postgres Extended Server components in different locations. If you need to access the components after installation, see: | ||
|
||
- [RHEL/OL/Rocky Linux/AlmaLinux/CentOS/SLES locations](#rhelolrocky-linuxalmalinuxcentossles-locations) | ||
- [Debian/Ubuntu locations](#debianubuntu-locations) | ||
|
||
## RHEL/OL/Rocky Linux/AlmaLinux/CentOS/SLES Locations | ||
|
||
The RPM installers place EDB Postgres Extended Server components in the directories listed in the table. | ||
|
||
| Component | Location | | ||
|-----------------------------|--------------------------------| | ||
| Executables | `/usr/edb/pge16/bin` | | ||
| Libraries | `/usr/edb/pge16/lib` | | ||
| Cluster configuration files | `/var/lib/edb-pge/16` | | ||
| Documentation | `/usr/edb/pge16/share/man` | | ||
| Contrib | `/usr/edb/pge16/share/contrib` | | ||
| Data | `/var/lib/edb-pge/16/data` | | ||
| Logs | `/var/log/edb/pge16` | | ||
| Lock files | `/var/lock/edb/pge16` | | ||
| Backup area | `/var/lib/edb-pge/16/backups` | | ||
| Templates | `/usr/edb/pge16/share` | | ||
| Procedural Languages | `/usr/edb/pge16/lib` | | ||
| Development Headers | `/usr/edb/pge16/include` | | ||
| Shared data | `/usr/edb/pge16/share` | | ||
|
||
## Debian/Ubuntu Locations | ||
|
||
The Debian package manager places EDB Postgres Extended Server components in the directories listed in the table. | ||
|
||
| Component | Location | | ||
|-----------------------------|------------------------------------| | ||
| Executables | `/usr/lib/edb-pge/16/bin` | | ||
| Libraries | `/usr/lib/edb-pge/16/lib` | | ||
| Cluster configuration files | `/var/lib/edb-pge/16/main` | | ||
| Data | `/var/lib/edb-pge/16/main` | | ||
| Logs | `/var/log/edb-pge/` | | ||
| Lock files | `/var/lock/edb/pge16` | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
navTitle: Installing | ||
title: Installing EDB Postgres Extended Server on Linux | ||
|
||
description: Installation instructions for EDB Postgres Extended Server on Linux. | ||
|
||
navigation: | ||
- linux_x86_64 | ||
- linux_arm64 | ||
--- | ||
|
||
Select a link to access the applicable installation instructions: | ||
|
||
## Linux [x86-64 (amd64)](linux_x86_64) | ||
|
||
### Red Hat Enterprise Linux (RHEL) and derivatives | ||
|
||
- [RHEL 9](linux_x86_64/pge_rhel_9), [RHEL 8](linux_x86_64/pge_rhel_8) | ||
|
||
- [Oracle Linux (OL) 9](linux_x86_64/pge_rhel_9), [Oracle Linux (OL) 8](linux_x86_64/pge_rhel_8) | ||
|
||
- [Rocky Linux 9](linux_x86_64/pge_other_linux_9), [Rocky Linux 8](linux_x86_64/pge_other_linux_8) | ||
|
||
- [AlmaLinux 9](linux_x86_64/pge_other_linux_9), [AlmaLinux 8](linux_x86_64/pge_other_linux_8) | ||
|
||
### Debian and derivatives | ||
|
||
- [Ubuntu 22.04](linux_x86_64/pge_ubuntu_22), [Ubuntu 20.04](linux_x86_64/pge_ubuntu_20) | ||
|
||
- [Debian 12](linux_x86_64/pge_debian_12), [Debian 11](linux_x86_64/pge_debian_11) | ||
|
||
## Linux [AArch64 (ARM64)](linux_arm64) | ||
|
||
### Debian and derivatives | ||
|
||
- [Debian 12](linux_arm64/pge_debian_12) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
title: "Installing EDB Postgres Extended Server on Linux AArch64 (ARM64)" | ||
navTitle: "On Linux ARM64" | ||
|
||
navigation: | ||
- pge_debian_12 | ||
--- | ||
|
||
Operating system-specific install instructions are described in the corresponding documentation: | ||
|
||
### Debian and derivatives | ||
|
||
- [Debian 12](pge_debian_12) |
124 changes: 124 additions & 0 deletions
124
product_docs/docs/pge/17/installing/linux_arm64/pge_debian_12.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
--- | ||
navTitle: Debian 12 | ||
title: Installing EDB Postgres Extended Server on Debian 12 arm64 | ||
# This topic is generated from templates. If you have feedback on it, instead of | ||
# editing the page and creating a pull request, please enter a GitHub issue and | ||
# the documentation team will update the templates accordingly. | ||
|
||
redirects: | ||
--- | ||
|
||
## Prerequisites | ||
|
||
Before you begin the installation process: | ||
|
||
- Set up the EDB repository. | ||
|
||
Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. | ||
|
||
To determine if your repository exists, enter this command: | ||
|
||
`apt-cache search enterprisedb` | ||
|
||
If no output is generated, the repository isn't installed. | ||
|
||
To set up the EDB repository: | ||
|
||
1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). | ||
|
||
1. Select the button that provides access to the EDB repository. | ||
|
||
1. Select the platform and software that you want to download. | ||
|
||
1. Follow the instructions for setting up the EDB repository. | ||
|
||
## Install the package | ||
|
||
```shell | ||
sudo apt-get -y install edb-postgresextended-16 | ||
``` | ||
|
||
## Initial configuration | ||
|
||
This section steps you through getting started with your cluster including logging in, ensuring the installation was successful, connecting to your cluster, and creating the user password. | ||
|
||
First, you need to initialize and start the database cluster. The `edb-pge-16-setup` script creates a cluster. | ||
|
||
```shell | ||
sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/16/bin/edb-pge-16-setup initdb | ||
|
||
sudo systemctl start edb-pge-16 | ||
``` | ||
|
||
To work in your cluster, log in as the postgres user. Connect to the database server using the psql command-line client. Alternatively, you can use a client of your choice with the appropriate connection string. | ||
|
||
```shell | ||
sudo -iu postgres | ||
|
||
psql postgres | ||
``` | ||
|
||
The server runs with the `peer` or `ident` permission by default. You can change the authentication method by modifying the `pg_hba.conf` file. | ||
|
||
Before changing the authentication method, assign a password to the database superuser, postgres. For more information on changing the authentication, see [Modifying the pg_hba.conf file](../../administration/01_setting_configuration_parameters/#modifying-the-pg_hbaconf-file). | ||
|
||
```sql | ||
ALTER ROLE postgres with PASSWORD 'password'; | ||
``` | ||
|
||
## Experiment | ||
|
||
Now you're ready to create and connect to a database, create a table, insert data in a table, and view the data from the table. | ||
|
||
First, use psql to create a database named `hr` to hold human resource information. | ||
|
||
```sql | ||
# running in psql | ||
CREATE DATABASE hr; | ||
__OUTPUT__ | ||
CREATE DATABASE | ||
``` | ||
|
||
Connect to the `hr` database inside psql: | ||
|
||
``` | ||
\c hr | ||
__OUTPUT__ | ||
You are now connected to database "hr" as user "postgres". | ||
``` | ||
|
||
Create columns to hold department numbers, unique department names, and locations: | ||
|
||
``` | ||
CREATE TABLE public.dept (deptno numeric(2) NOT NULL CONSTRAINT dept_pk | ||
PRIMARY KEY, dname varchar(14) CONSTRAINT dept_dname_uq UNIQUE, loc | ||
varchar(13)); | ||
__OUTPUT__ | ||
CREATE TABLE | ||
``` | ||
|
||
Insert values into the `dept` table: | ||
|
||
``` | ||
INSERT INTO dept VALUES (10,'ACCOUNTING','NEW YORK'); | ||
__OUTPUT__ | ||
INSERT 0 1 | ||
``` | ||
|
||
``` | ||
INSERT into dept VALUES (20,'RESEARCH','DALLAS'); | ||
__OUTPUT__ | ||
INSERT 0 1 | ||
``` | ||
|
||
View the table data by selecting the values from the table: | ||
|
||
``` | ||
SELECT * FROM dept; | ||
__OUTPUT__ | ||
deptno | dname | loc | ||
--------+------------+---------- | ||
10 | ACCOUNTING | NEW YORK | ||
20 | RESEARCH | DALLAS | ||
(2 rows) | ||
``` |
Oops, something went wrong.