diff --git a/advocacy_docs/pg_extensions/advanced_storage_pack/index.mdx b/advocacy_docs/pg_extensions/advanced_storage_pack/index.mdx index 28397f918e..6309483b04 100644 --- a/advocacy_docs/pg_extensions/advanced_storage_pack/index.mdx +++ b/advocacy_docs/pg_extensions/advanced_storage_pack/index.mdx @@ -17,7 +17,7 @@ EnterpriseDB offers three TAMs in the Advanced Storage Pack. ## Bluefin -Bluefin is designed to provide data compaction and delta compression, which makes it particularly useful for storing time-series data, common in IoT and monitoring use cases. +Bluefin is designed to provide data compaction and delta compression, which makes it particularly useful for storing time-series data, common in IoT and monitoring use cases. Delta compression is a way of storing data in the form of differences (deltas) between datasets between consecutive tuples. This reduces the amount of data that needs to be stored or transmitted, especially when there are small or constant changes between data tuples. In its design, UPDATE and DELETE operations aren't permitted. This design allows for a much smaller tuple header. It also allows for tuples to be stored as compressed deltas of other tuples and eagerly freezing of pages as soon as the page is full. The result is that Bluefin tables accept only INSERTs, but they are able to reach a much higher density of tuples per page. This ability leads to faster reads on such append-only tables. diff --git a/advocacy_docs/pg_extensions/wait_states/index.mdx b/advocacy_docs/pg_extensions/wait_states/index.mdx index 53fafd221b..938774ec35 100644 --- a/advocacy_docs/pg_extensions/wait_states/index.mdx +++ b/advocacy_docs/pg_extensions/wait_states/index.mdx @@ -3,7 +3,9 @@ title: EDB Wait States indexCards: none directoryDefaults: product: EDB Wait States - +navigation: + - installing + - using --- EDB Wait States is a tool for analyzing performance and tuning by allowing the collection and querying of wait event data. Wait events, introduced in PostgreSQL 9.6, are recorded alongside other session activity and provide a snapshot of whether a session is waiting for I/O, CPU, IPC, locks, or timeouts. Snapshots of this information are gathered by the EDB Wait States background worker (BGW) at regular intervals. diff --git a/advocacy_docs/pg_extensions/wait_states/installing.mdx b/advocacy_docs/pg_extensions/wait_states/installing.mdx index 1d066d3197..b90a467952 100644 --- a/advocacy_docs/pg_extensions/wait_states/installing.mdx +++ b/advocacy_docs/pg_extensions/wait_states/installing.mdx @@ -3,12 +3,41 @@ title: Installing EDB Wait States navTitle: Installing --- -## On Linux +## On all Linux systems except Debian and Ubuntu -To install EDB Wait States on a Linux system: +To install EDB Wait States on any Linux operating system except Debian or Ubuntu: -1. Install EDB Wait States with the `edb-asxx-server-edb_wait_states` RPM package, where `xx` is the EDB Postgres Advanced Server version number. +1. Enter the following command: + ```shell + sudo -y install + ``` + + Where: + + - ``is the package manager used with your operating system: + + | Package manager | Operating system | + | --------------- | -------------------------------- | + | dnf | RHEL 8/9 and derivatives | + | yum | RHEL 7 and derivatives, CentOS 7 | + | zypper | SLES | + + - `` is the name of the Postgres distribution you're using. In the package names `` is the version of the Postgres distribution. + + | Type of Postgres distribution | Install command | + | ----------------------------- | ------------------------------------------- | + | PostgreSQL | postgresql``-edb_wait_states | + | EDB Postgres Advanced Server | edb-as``-server-edb_wait_states | + | EDB Postgres Extended Server | edb-postgresextended``-wait-states | + + + For example, to install EDB Wait States for EDB Postgres Advanced Server 16 on a RHEL 9 platform: + + ```shell + sudo dnf -y install edb-as16-server-edb_wait_states + ``` + 1. To launch the worker, register it in the `postgresql.conf` file using the `shared_preload_libraries` parameter. For example: ```ini @@ -23,13 +52,51 @@ To install EDB Wait States on a Linux system: CREATE EXTENSION edb_wait_states; ``` -1. To terminate the EDB Wait States worker, remove `$libdir/edb_wait_states` from the `shared_preload_libraries` parameter, and restart the database server. +## On Debian and Ubuntu -## On Windows +To install EDB Wait States on Debian or Ubuntu: + +1. Enter the following command: + + ```shell + sudo apt-get -y install + ``` + + Where: + + `` is the name of the Postgres distribution you're using. In the package names `` is the version of the Postgres distribution. + + | Type of Postgres distribution | Install command | + | ----------------------------- | -------------------------------------------- | + | PostgreSQL | postgresql``-edb-wait-states | + | EDB Postgres Advanced Server | edb-as``-server-edb-wait-states | + | EDB Postgres Extended Server | edb-postgresextended-wait-states-`` | + + For example, to install EDB Wait States for EDB Postgres Advanced Server 16 on a Debian 11 platform: + + ```shell + sudo apt-get -y install edb-as16-server-edb-wait-states + ``` + + +1. To launch the worker, register it in the `postgresql.conf` file using the `shared_preload_libraries` parameter. For example: + + ```ini + shared_preload_libraries = '$libdir/edb_wait_states' + ``` + +1. Restart the database server. After a successful restart, the background worker begins collecting data. -To install EDB Wait States on a Windows system: +1. To review the data, create the following extension: -1. To install the EDB Wait States module with the `EDB Modules` installer, invoke the StackBuilder Plus utility. Follow the onscreen instructions to finish installing the `EDB Modules`. + ```sql + CREATE EXTENSION edb_wait_states; + ``` + + +## On Windows + +An EDB Postgres Advanced Server installation includes support for EDB Wait States. After installing EDB Postgres Advanced Server, some additional steps are necessary to activate EDB Wait States. 1. To register the worker, modify the `postgresql.conf` file to include the EDB Wait States library in the `shared_preload_libraries` configuration parameter. The parameter value must include: @@ -40,9 +107,11 @@ To install EDB Wait States on a Windows system: The EDB Wait States installation places the `edb_wait_states.dll` library file in the following path: ```text - C:\Program Files\edb\as14\lib\ + C:\Program Files\edb\as\lib\ ``` + where `` is the EDB Postgres Advanced Server version, such as `as16`. + 1. Restart the database server to make the changes take effect. After a successful restart, the background worker starts and begins collecting the data. 1. To view the data, create the following extension: @@ -62,5 +131,7 @@ C:\Program Files\edb\as14\share\extension To uninstall EDB Wait States: 1. Use the `DROP EXTENSION` command to drop the `edb_wait_states` extension. -1. Modify the `postgresql.conf` file, removing `$libdir/edb_wait_states.dll` from the `shared_preload_libraries` parameter. -1. To apply your changes, restart the database server. \ No newline at end of file +1. Modify the `postgresql.conf` file, removing `$libdir/edb_wait_states` (for Linux) or `$libdir/edb_wait_states.dll` (for Windows) from the `shared_preload_libraries` parameter. +1. To apply your changes, restart the database server. + + diff --git a/gatsby-config.js b/gatsby-config.js index 50f3ab27af..c62c61be3c 100644 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -366,7 +366,7 @@ module.exports = { id: process.env.GTM_ID, }, }, - { + process.env.FATHOM_SITE_ID && { resolve: "@raae/gatsby-plugin-fathom", options: { site: process.env.FATHOM_SITE_ID, @@ -406,5 +406,5 @@ module.exports = { skipIndexing: process.env.INDEX_ON_BUILD !== "true", }, }, - ], + ].filter((p) => !!p), }; diff --git a/install_template/templates/products/edb-postgres-extended-server/base.njk b/install_template/templates/products/edb-postgres-extended-server/base.njk index 9138bb434b..3ce3347028 100644 --- a/install_template/templates/products/edb-postgres-extended-server/base.njk +++ b/install_template/templates/products/edb-postgres-extended-server/base.njk @@ -1,5 +1,6 @@ {% extends "platformBase/" + platformBaseTemplate + '.njk' %} {% set packageName = packageName or 'edb-postgresextended-server edb-postgresextended-contrib' %} +{% set packageName = packageName | replace('', product.version) %} {% import "platformBase/_deploymentConstants.njk" as deploy %} {% block frontmatter %} {# @@ -12,6 +13,94 @@ redirects: {% endblock frontmatter %} {% block installCommand %} {{super()}} -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version {{ product.version }}, the package name would be {{packageName | replace('', product.version)}}. +{% endblock installCommand %} +{% block postinstall %} -{% endblock installCommand %} \ No newline at end of file +## Initial configuration +{% block debian_ubuntu %} +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-{{ product.version | replace(".", "") }}-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge{{ product.version }}/bin/edb-pge-{{ product.version | replace(".", "") }}-setup initdb + +sudo systemctl start edb-pge-{{ product.version }} +``` +{% endblock debian_ubuntu %} + +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. + +{# this is kinda awful, but gotta deal with the reorg somehow... --jh #} +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) +``` + +{% endblock postinstall %} \ No newline at end of file diff --git a/install_template/templates/products/edb-postgres-extended-server/debian-10.njk b/install_template/templates/products/edb-postgres-extended-server/debian-10.njk index 5305e9ecc7..c04bda372b 100644 --- a/install_template/templates/products/edb-postgres-extended-server/debian-10.njk +++ b/install_template/templates/products/edb-postgres-extended-server/debian-10.njk @@ -5,7 +5,4 @@ ```shell sudo {{ packageManager }} {{ packageManagerNoninteractive }} install {{ packageName }} ``` - -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. - {% endblock installCommand %} diff --git a/install_template/templates/products/edb-postgres-extended-server/debian-11.njk b/install_template/templates/products/edb-postgres-extended-server/debian-11.njk index 46ba33fc56..c83b42fbc5 100644 --- a/install_template/templates/products/edb-postgres-extended-server/debian-11.njk +++ b/install_template/templates/products/edb-postgres-extended-server/debian-11.njk @@ -5,7 +5,4 @@ ```shell sudo {{ packageManager }} {{ packageManagerNoninteractive }} install {{ packageName }} ``` - -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. - {% endblock installCommand %} diff --git a/install_template/templates/products/edb-postgres-extended-server/debian.njk b/install_template/templates/products/edb-postgres-extended-server/debian.njk index 8e726cd177..cf35b80f82 100644 --- a/install_template/templates/products/edb-postgres-extended-server/debian.njk +++ b/install_template/templates/products/edb-postgres-extended-server/debian.njk @@ -1,4 +1,13 @@ {% extends "products/edb-postgres-extended-server/base.njk" %} -{% block debian_ubuntu %}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. +{% block debian_ubuntu %} +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. -```shell{% endblock debian_ubuntu %} \ No newline at end of file +First, you need to initialize and start the database cluster. The `edb-pge-{{ product.version | replace(".", "") }}-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/{{ product.version }}/bin/edb-pge-{{ product.version | replace(".", "") }}-setup initdb + +sudo systemctl start edb-pge-{{ product.version }} +``` + +{% endblock debian_ubuntu %} \ No newline at end of file diff --git a/install_template/templates/products/edb-postgres-extended-server/ubuntu-22.04.njk b/install_template/templates/products/edb-postgres-extended-server/ubuntu-22.04.njk index 055d12b323..9473a98668 100644 --- a/install_template/templates/products/edb-postgres-extended-server/ubuntu-22.04.njk +++ b/install_template/templates/products/edb-postgres-extended-server/ubuntu-22.04.njk @@ -1,4 +1,4 @@ {% extends "products/edb-postgres-extended-server/ubuntu.njk" %} {% set platformBaseTemplate = "ubuntu-22.04" %} -{% set packageName %}edb-postgresextended- edb-postgresextended--contrib{% endset %} +{% set packageName %}edb-postgresextended-{% endset %} diff --git a/install_template/templates/products/edb-postgres-extended-server/ubuntu.njk b/install_template/templates/products/edb-postgres-extended-server/ubuntu.njk index 30c491228a..cf35b80f82 100644 --- a/install_template/templates/products/edb-postgres-extended-server/ubuntu.njk +++ b/install_template/templates/products/edb-postgres-extended-server/ubuntu.njk @@ -1 +1,13 @@ {% extends "products/edb-postgres-extended-server/base.njk" %} +{% block debian_ubuntu %} +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-{{ product.version | replace(".", "") }}-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/{{ product.version }}/bin/edb-pge-{{ product.version | replace(".", "") }}-setup initdb + +sudo systemctl start edb-pge-{{ product.version }} +``` + +{% endblock debian_ubuntu %} \ No newline at end of file diff --git a/product_docs/docs/biganimal/release/getting_started/index.mdx b/product_docs/docs/biganimal/release/getting_started/index.mdx index 2eeb8f676a..fa9d7de2dc 100644 --- a/product_docs/docs/biganimal/release/getting_started/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/index.mdx @@ -9,5 +9,6 @@ navigation: - 02_connecting_to_your_cloud - activating_regions - creating_a_cluster + - managing_cluster --- diff --git a/product_docs/docs/biganimal/release/getting_started/managing_cluster.mdx b/product_docs/docs/biganimal/release/getting_started/managing_cluster.mdx new file mode 100644 index 0000000000..ac7463559e --- /dev/null +++ b/product_docs/docs/biganimal/release/getting_started/managing_cluster.mdx @@ -0,0 +1,33 @@ +--- +title: "Managing a cluster" +description: Describes options for managing clusters +--- + +## Pausing and resuming clusters + +Pausing a cluster allows you to save on compute costs without losing data or cluster configuration settings. There is no additional cost for paused clusters, although you must still pay for any disk and object storage that the paused cluster requires. + +Pausing a cluster drops all existing connections, blocks future actions such as editing the cluster, and stops monitoring. While paused, you can't make or maintain connections, or read, write, or edit cluster settings. Automatic backups are paused. However, backups taken while the cluster was running remain until their retention period expires. + +!!! Note + If you have defined the backup retention period for a cluster to be less that the duration of the pause, it is possible that write-ahead logs (WALs) may be deleted from the backup object store and resumption could fail. + +While paused, clusters are not upgraded or patched, but upgrades are applied when the cluster resumes. Pausing a high availability or Postgres Distributed cluster shuts down all cluster nodes. + +After seven days, single node and high availability clusters automatically resume. Resuming a cluster applies any pending maintenance upgrades. Monitoring begins again. + +### Pausing a cluster + +1. Go to the [Clusters](https://portal.biganimal.com/clusters) page in the [BigAnimal portal](https://portal.biganimal.com). +2. To pause the cluster, do one of the following: + - In the row for the cluster, at right, select the ellipsis icon and then select **Pause Cluster**. + - Select the cluster you want to pause. From **Quick Actions** on the cluster details page, select **Pause Cluster**. +3. Confirm that you want to pause the cluster. When the process finishes, the cluster status will show as Paused. + +### Resuming a cluster + +1. Go to the [Clusters](https://portal.biganimal.com/clusters) page in the [BigAnimal portal](https://portal.biganimal.com). +2. To resume the cluster, do one of the following: + - In the row for the cluster, at right, select the ellipsis icon and then select **Resume Cluster**. + - Select the cluster you want to resume. From **Quick Actions** on the cluster details page, select **Resume Cluster**. +3. Confirm that you want to resume the cluster. The process may take a few minutes. When it finishes, the cluster status will show as Healthy. diff --git a/product_docs/docs/biganimal/release/overview/05_database_version_policy.mdx b/product_docs/docs/biganimal/release/overview/05_database_version_policy.mdx index b63beac00c..7bd74d9c12 100644 --- a/product_docs/docs/biganimal/release/overview/05_database_version_policy.mdx +++ b/product_docs/docs/biganimal/release/overview/05_database_version_policy.mdx @@ -30,12 +30,12 @@ On November 20, 2023, BigAnimal will deprecate support for PostgreSQL 11 and EDB BigAnimal will automatically upgrade your Postgres 11 instances to a later version at the end of six months. Customers who purchased Extended Life Support are exempt. To purchase Extended Life Support, contact Sales. BigAnimal reserves the right to upgrade sooner in case of a security issue. -| Action or Recommendation | Date | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | -| BigAnimal no longer supports version 11. | November 20, 2023 | -| The PostgreSQL community plans to deprecate PostgreSQL 11 and won't provide any security patches after this date. | November 9, 2023 | -| Start upgrading your BigAnimal instances to a later major version starting on this date. You can use pg_dump to restore your cluster into a later version. | May 20, 2023 | -| You can't create a new instance with PostgreSQL major version 11 in the BigAnimal interfaces after this date. | May 20, 2023 | -| If you manually restore a cluster, you can't restore it with Postgres 11 after this date. You will need to restore that Postgres 11 cluster into a newer version of Postgres, for example, PostgreSQL version 15. | May 20, 2023 | -| BigAnimal will force a major version upgrade and won't allow any new clusters to be provisioned or restored to version 11 even for customers previously using version 11. Only customers on Extended Life Support are exempt for the duration of their contract. If you don’t purchase Extended Life Support on this date, your clusters will be upgraded. | April 20, 2024 | -| Extended Life Support starts six months after PostgreSQL community deprecates version 11. BigAnimal reserves the right to upgrade in case of a security issue. | April 20, 2024 | +| Action or Recommendation | Dates - Postgres 11 | Dates - Postgres 12 | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------- | +| BigAnimal no longer supports the Postgres version. | November 20, 2023 | December 9, 2024 | +| The PostgreSQL community plans to deprecate the version and won't provide any security patches after this date. | November 9, 2023 | November 14, 2024 | +| Start upgrading your BigAnimal instances to a later major version starting on this date. You can use pg_dump to restore your cluster into a later version. | Until May 20, 2023 | Until June 9, 2024 | +| You can't create a new instance with Postgres version in the BigAnimal interfaces after this date. | May 20, 2023 | June 9, 2024 | +| If you manually restore a cluster, you can't restore it with Postgres version after this date. You will need to restore that Postgres cluster into a newer version of Postgres. | May 20, 2023 | June 9, 2024 | +| BigAnimal will force a major version upgrade and won't allow any new clusters to be provisioned or restored to the old Postgres version. Only customers on Extended Life Support are exempt for the duration of their contract. If you don’t purchase Extended Life Support on this date, your clusters will be upgraded. | April 20, 2024 | May 9, 2025 | +| Extended Life Support starts six months after PostgreSQL community deprecates the Postgres version. BigAnimal reserves the right to upgrade in case of a security issue. | April 20, 2024 | May 9, 2025 | diff --git a/product_docs/docs/biganimal/release/using_cluster/managing_replicas.mdx b/product_docs/docs/biganimal/release/using_cluster/managing_replicas.mdx index 2f0727e496..18b2a312b2 100644 --- a/product_docs/docs/biganimal/release/using_cluster/managing_replicas.mdx +++ b/product_docs/docs/biganimal/release/using_cluster/managing_replicas.mdx @@ -4,7 +4,7 @@ title: "Managing replicas" ## Create a faraway replica -You can create faraway replicas in different active regions in your cloud. There's no limit on the number of faraway replicas each cluster can have. However, the added resources and data transfers can increase your cloud costs. +You can create faraway replicas in any active regions in your cloud. There's no limit on the number of faraway replicas each cluster can have. However, the added resources and data transfers can increase your cloud costs. 1. Go to the [Clusters](https://portal.biganimal.com/clusters) page. A list of previously created clusters appears. @@ -14,7 +14,7 @@ You can create faraway replicas in different active regions in your cloud. There 1. On the **Cluster Settings** tab, enter a name for your replica in the **Cluster Name** field. -1. Skip to the **Region** section and select an active region where you want to deploy your replica. The password and database type values are inherited from the source cluster. +1. Skip to the **Region** section and select an active region where you want to deploy your replica. You can also choose to deploy your replica in the same region as the source cluster. The password and database type values are inherited from the source cluster. 1. Select the instance type in the **Instance Type** section. See [Creating a cluster](/biganimal/latest/getting_started/creating_a_cluster/#cluster-settings-tab) for details on instance type settings. diff --git a/product_docs/docs/efm/4/efm_deploy_arch/04_efm_client_connect_failover.mdx b/product_docs/docs/efm/4/efm_deploy_arch/04_efm_client_connect_failover.mdx index e7666482b9..0ce6778c93 100644 --- a/product_docs/docs/efm/4/efm_deploy_arch/04_efm_client_connect_failover.mdx +++ b/product_docs/docs/efm/4/efm_deploy_arch/04_efm_client_connect_failover.mdx @@ -38,5 +38,7 @@ You don't need to configure the virtual IP configuration in `efm.properties` (`v JDBC | Yes | All supported versions | Supply multiple hosts in the connection string, and set the `targetServerType` attribute as primary. Example: `jdbc:postgresql://host1:5444,host2:5444/accounting?targetServerType=primary`. More information: https://jdbc.postgresql.org/documentation/head/connect.html#connection-failover libpq | Yes | 10 and above | Supply multiple hosts in the connection string, and set the `target_session_attrs` attribute as read-write. Example: `postgresql://host1:5444,host2:5444/edb?target_session_attrs=read-write`. More information: https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING .NET | Yes | 6 and above | Supply multiple hosts in the connection string, and set the Target Session Attributes attribute as primary. Example: `Host=host1,host2;Username=test;Password=test;Target Session Attributes=primary`. More information: https://www.npgsql.org/doc/failover-and-load-balancing.html + go - jackc/pgx | Yes | 5 and above | Use `libpq` syntax as shown above. More information: https://pkg.go.dev/github.com/jackc/pgx#ConnConfig + psycopyg3 | Yes | All supported versions | Use `libpq` syntax as shown above. More information: https://www.psycopg.org/psycopg3/docs/api/connections.html OCL | Yes | 10 and above | OCL is based on `libpq`, hence check `libpq` for details. ODBC | No | | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/index.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/index.mdx index 9f25ed8523..5db7e33c11 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/index.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/index.mdx @@ -5,6 +5,6 @@ redirects: - /epas/latest/epas_compat_cat_views/pg_views/ #generated for docs/epas/reorg-role-use-case-mode --- -System catalog views are present in PostgreSQL. They may have extra information when accessed in EDB Postgres Advanced Server. The [`PG_USER`](pg_user) view is an example of a system catalog view that provides additional information specific to EDB Postgres Advanced Server. +System catalog views are present in PostgreSQL. They might have extra information when accessed in EDB Postgres Advanced Server. The [`PG_USER`](pg_user) view is an example of a system catalog view that provides additional information specific to EDB Postgres Advanced Server. -For the complete list of the System Catalogs see [PostgreSQL System Catalogs](https://www.postgresql.org/docs/current/catalogs.html). \ No newline at end of file +For the complete list of the system catalogs, see [System Catalogs](https://www.postgresql.org/docs/current/catalogs.html) in the PostgreSQL documentation. \ No newline at end of file diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_attribute.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_attribute.mdx index 7e4a132b67..3f626e66f9 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_attribute.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_attribute.mdx @@ -2,8 +2,10 @@ title: "PG_ATTRIBUTE" --- -The `PG_ATTRIBUTE` view provides information about table columns. There is one `PG_ATTRIBUTE` row for every column in every table in the database. In addition to the information in the [PostgreSQL pg_attribute description](https://www.postgresql.org/docs/current/catalog-pg-attribute.html), EDB Postgres Advanced Server provides the following information: +The `PG_ATTRIBUTE` view provides information about table columns. There's one `PG_ATTRIBUTE` row for every column in every table in the database. + +In addition to the information in the [PostgreSQL pg_attribute description](https://www.postgresql.org/docs/current/catalog-pg-attribute.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ----------------- | --------- | -------------------------------------------------------------------------------------- | -| attishidden | boolean | Column included in SELECT * expansion | +| attishidden | Boolean | Column included in SELECT * expansion | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_authid.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_authid.mdx index eb56977324..9899416ede 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_authid.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_authid.mdx @@ -2,13 +2,15 @@ title: "PG_AUTHID" --- -The `PG_AUTHID` view provides information about database authorization identifiers (that is, roles). A role includes users and groups. In addition to the information in the [PostgreSQL pg_authid description](https://www.postgresql.org/docs/current/catalog-pg-authid.html), EDB Postgres Advanced Server provides the following information: +The `PG_AUTHID` view provides information about database authorization identifiers (that is, roles). A role includes users and groups. + +In addition to the information in the [PostgreSQL pg_authid description](https://www.postgresql.org/docs/current/catalog-pg-authid.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | --------------------- | ------------------------ | --------------------------------------------------------------------- | | rolaccountstatus | smallint | Account status of the role | -| rolcreatedblink | boolean | Specifies whether the role is allowed to create databases link | -| rolcreatepublicdblink | boolean | Specifies whether the role is allowed to create public databases link | -| roldroppublicdblink | boolean | Specifies whether the role is allowed to drop public databases links | -| rolpolicyexempt | boolean | Specifies whether the role is allowed to bypass VPD policies | +| rolcreatedblink | Boolean | Specifies whether the role is allowed to create databases link | +| rolcreatepublicdblink | Boolean | Specifies whether the role is allowed to create public databases link | +| roldroppublicdblink | Boolean | Specifies whether the role is allowed to drop public databases links | +| rolpolicyexempt | Boolean | Specifies whether the role is allowed to bypass VPD policies | | rolprofile | oid | Object identifier for the role's profile | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_class.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_class.mdx index ce82e79d7f..ecbd8ae401 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_class.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_class.mdx @@ -2,10 +2,12 @@ title: "PG_CLASS" --- -The `PG_CLASS` view provides information about tables and other objects that have columns or in other ways are similar to a table. This includes indexes, sequences, views, and other objects. In the context of this table "objects" refer to "relations." In addition to the information in the [PostgreSQL pg_class description](https://www.postgresql.org/docs/current/catalog-pg-class.html), EDB Postgres Advanced Server provides the following information: +The `PG_CLASS` view provides information about tables and other objects that have columns or are similar to a table in other ways. This information includes indexes, sequences, views, and other objects. In the context of this table, *objects* refers to *relations*. + +In addition to the information in the [PostgreSQL pg_class description](https://www.postgresql.org/docs/current/catalog-pg-class.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | --------------------- | ------- | ----------------------------------------------------------------------------------------------------- | -| relbackingtable | "char" | Identifies whether a table is backing relation for any other object. The default value is `d` for a normal object and `q` for queue tables. We store the relbackingtable as `q` for all the backing objects of QUEUE TABLE (backing table, index, toast table, and so forth). | -| relhasredactionpolicy | boolean | Specifies whether object has a redaction policy | -| relpartname | text | Partition name | +| relbackingtable | "char" | Identifies whether a table is backing relation for any other object. The default value is `d` for a normal object and `q` for queue tables. The relbackingtable is stored as `q` for all the backing objects of QUEUE TABLE (backing table, index, toast table, and so forth). | +| relhasredactionpolicy | Boolean | Specifies whether object has a redaction policy. | +| relpartname | text | Partition name. | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_collation.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_collation.mdx index 06a033944e..e4027608b3 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_collation.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_collation.mdx @@ -2,9 +2,11 @@ title: "PG_COLLATION" --- -The `PG_COLLATION` view describes the available collations, which map SQL names to operating system locale categories. In addition to the information in the [PostgreSQL pg_collation description](https://www.postgresql.org/docs/current/catalog-pg-collation.html), EDB Postgres Advanced Server provides the following information: +The `PG_COLLATION` view describes the available collations, which map SQL names to operating system locale categories. + +In addition to the information in the [PostgreSQL pg_collation description](https://www.postgresql.org/docs/current/catalog-pg-collation.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------ | ---- | ---------------------------------- | -| collicu | name | An ICU short form string, or empty | -| collicurules | text | ICU collation rules | +| collicu | name | An ICU short-form string or empty. An ICU short form is a method of specifying collation attributes. | +| collicurules | text | ICU collation rules. | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_database.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_database.mdx index 429269a751..59c7b0465f 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_database.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_database.mdx @@ -2,10 +2,12 @@ title: "PG_DATABASE" --- -The `PG_DATABASE` view provides information about the available databases. In addition to the information in the [PostgreSQL pg_database description](https://www.postgresql.org/docs/current/catalog-pg-database.html), EDB Postgres Advanced Server provides the following information: +The `PG_DATABASE` view provides information about the available databases. + +In addition to the information in the [PostgreSQL pg_database description](https://www.postgresql.org/docs/current/catalog-pg-database.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | -------------- | ------- | ----------------------------------------------------------------------------------------------------- | -| datacu | name | An ICU short form string, or empty. An ICU short form is a method of specifying collation attributes. | -| datacurules | text | ICU collation rules | -| datredwoodlike | boolean | Disable backslash-escape in LIKE patterns | +| datacu | name | An ICU short-form string or empty. An ICU short form is a method of specifying collation attributes. | +| datacurules | text | ICU collation rules. | +| datredwoodlike | Boolean | Disables backslash-escape in LIKE patterns. | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_namespace.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_namespace.mdx index 501e4f3dcc..c426e5dc70 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_namespace.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_namespace.mdx @@ -2,15 +2,17 @@ title: "PG_NAMESPACE" --- -The `PG_NAMESPACE` view describes namespaces, which are the structures underlying SQL schemas. Each namespace can have a separate collection of relations, types, and so forth without name conflicts. In addition to the information in the [PostgreSQL pg_namespace description](https://www.postgresql.org/docs/current/catalog-pg-namespace.html), EDB Postgres Advanced Server provides the following information: +The `PG_NAMESPACE` view describes namespaces, which are the structures underlying SQL schemas. Each namespace can have a separate collection of relations, types, and so forth without name conflicts. + +In addition to the information in the [PostgreSQL pg_namespace description](https://www.postgresql.org/docs/current/catalog-pg-namespace.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------------ | ------- | ----------------------------------------------------------------------------------- | | nspbodysrc | text | The object identifier of the parent table | -| nspcompoundtrigger | boolean | Specifies whether this a compound trigger's package | +| nspcompoundtrigger | Boolean | Specifies whether this a compound trigger's package | | nspforeignserver | oid | Object identifier of the foreign server where the foreign namespace resides | | nspheadsrc | text | Header for the package | | nspobjecttype | oid | Object identifier of the type to which this package belongs | | nspparent | oid | Object identifier of the schema (namespace) of the package (0 for a regular schema) | | nspremoteschema | text | Name of the foreign namespace | -| nspsecdef | boolean | Specifies whether the namespace (package) is a security definer | +| nspsecdef | Boolean | Specifies whether the namespace (package) is a security definer | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_partitioned_table.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_partitioned_table.mdx index c6ba73b9c3..a718502b0f 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_partitioned_table.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_partitioned_table.mdx @@ -2,7 +2,9 @@ title: "PG_PARTITIONED_TABLE" --- -The `PG_PARTITIONED_TABLE` view provides information about how tables are partitioned. In addition to the information in the [PostgreSQL pg_partitioned_table description](https://www.postgresql.org/docs/current/catalog-pg-partitioned-table.html), EDB Postgres Advanced Server provides the following information: +The `PG_PARTITIONED_TABLE` view provides information about how tables are partitioned. + +In addition to the information in the [PostgreSQL pg_partitioned_table description](https://www.postgresql.org/docs/current/catalog-pg-partitioned-table.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------------- | ------------ | ------------------------------------------ | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_proc.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_proc.mdx index 6f431704f9..bb770c5fb7 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_proc.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_proc.mdx @@ -2,11 +2,13 @@ title: "PG_PROC" --- -The `PG_PROC` view provides information about functions, procedures, aggregate functions, and window functions (collectively also known as routines). In addition to the information in the [PostgreSQL pg_proc description](https://www.postgresql.org/docs/current/catalog-pg-proc.html), EDB Postgres Advanced Server provides the following information: +The `PG_PROC` view provides information about functions, procedures, aggregate functions, and window functions (collectively also known as routines). + +In addition to the information in the [PostgreSQL pg_proc description](https://www.postgresql.org/docs/current/catalog-pg-proc.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------------- | -------- | --------------------------------------------------------------------- | -| proaccess | "char" | Determines PUBLIC/PRIVATE; only used when `pronamespace` is a package | +| proaccess | "char" | Determines PUBLIC/PRIVATE; used only when `pronamespace` is a package | | proargdeclaredmodes | "char"[] | Parameter modes; NULL if the same as `proargmodes` | | prolineno | integer | Line number relative to the package body | | promemberattrs | text | Object method attributes, such as final, overriding, or instantiable | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_subscription.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_subscription.mdx index 3efe996b29..0e9abebef7 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_subscription.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_subscription.mdx @@ -2,9 +2,11 @@ title: "PG_SUBSCRIPTION" --- -The `PG_SUBSCRIPTION` view provides information about all existing logical replication subscriptions. In addition to the information in the [PostgreSQL pg_subscription description](https://www.postgresql.org/docs/current/catalog-pg-subscription.html), EDB Postgres Advanced Server provides the following information: +The `PG_SUBSCRIPTION` view provides information about all existing logical replication subscriptions. + +In addition to the information in the [PostgreSQL pg_subscription description](https://www.postgresql.org/docs/current/catalog-pg-subscription.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------------- | ------- | ----------------------------------------------------------- | -| subpasswordrequired | boolean | Specifies whether the connection requires a password | -| subrunasowner | boolean | Specifies whether replication run as the subscription owner | +| subpasswordrequired | Boolean | Specifies whether the connection requires a password | +| subrunasowner | Boolean | Specifies whether replication runs as the subscription owner | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_synonym.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_synonym.mdx index 0f7cc2d1b0..fe8fd9d8be 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_synonym.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_synonym.mdx @@ -2,12 +2,12 @@ title: "PG_SYNONYM" --- -The `PG_SYNONYM` view defines system "synonym" relations (pg_synonym) along with the relation's initial contents, if any. PostgreSQL does not provide a system catalog for `PG_SYNONYM`. +The `PG_SYNONYM` view defines system synonym relations (pg_synonym) along with the relation's initial contents, if any. PostgreSQL doesn't provide a system catalog for `PG_SYNONYM`. | Name | Type | Description | | ------------ | ---- | ------------------------------------------------------- | | oid | oid | | -| synlink | text | Name of the database link, or an empty string | +| synlink | text | Name of the database link or an empty string | | synname | name | Name of the synonym | | synnamespace | oid | Namespace where the synonym resides | | synobjname | text | Name of the base object referenced by the synonym | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_trigger.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_trigger.mdx index af4e9d019f..3d4a93cbb8 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_trigger.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_trigger.mdx @@ -2,7 +2,9 @@ title: "PG_TRIGGER" --- -The `PG_TRIGGER` view provides information about triggers on tables and views. In addition to the information in the [PostgreSQL pg_trigger description](https://www.postgresql.org/docs/current/catalog-pg-trigger.html), EDB Postgres Advanced Server provides the following information: +The `PG_TRIGGER` view provides information about triggers on tables and views. + +In addition to the information in the [PostgreSQL pg_trigger description](https://www.postgresql.org/docs/current/catalog-pg-trigger.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | ------------ | -------- | -------------------------------------------------------------------------- | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_type.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_type.mdx index 3a29c77750..700ec97d2e 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_type.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_type.mdx @@ -2,9 +2,11 @@ title: "PG_TYPE" --- -The `PG_TYPE` view provides information about data types. In addition to the information in the [PostgreSQL pg_type description](https://www.postgresql.org/docs/current/catalog-pg-type.html), EDB Postgres Advanced Server provides the following information: +The `PG_TYPE` view provides information about data types. + +In addition to the information in the [PostgreSQL pg_type description](https://www.postgresql.org/docs/current/catalog-pg-type.html), EDB Postgres Advanced Server provides the following information. | Name | Type | Description | | --------- | ------ | --------------------------------------------- | -| typaccess | "char" | Specifies whether types contained in packages have PUBLIC or PRIVATE access. This field only matters when there is a packageId in `typnamespace`. | -| typattrs | text | Type modifiers, such as FINAL or INSTANTIABLE | | +| typaccess | "char" | Specifies whether types contained in packages have PUBLIC or PRIVATE access. This field matters only when there's a packageId in `typnamespace`. | +| typattrs | text | Type modifiers, such as FINAL or INSTANTIABLE. | | diff --git a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_user.mdx b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_user.mdx index 4948a2fd67..b34662a75c 100644 --- a/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_user.mdx +++ b/product_docs/docs/epas/16/reference/oracle_compatibility_reference/epas_compat_cat_views/pg_views/pg_user.mdx @@ -8,6 +8,6 @@ The `PG_USER` view provides information about the database users. It provides in | Name | Type | Description | | ----------------- | --------- | -------------------------------------------------------------------------------------- | -| uselockdate | date | The time when the account was last locked; null if the account was never locked before.| -| useaccountstatus | integer | Bit mask identifying user account status. | -| usepasswordexpire | date | The time after which a password change will be forced at the next login. | +| uselockdate | date | The time when the account was last locked; null if the account was never locked before | +| useaccountstatus | integer | Bit mask identifying user account status | +| usepasswordexpire | date | The time after which a password change is forced at the next login | diff --git a/product_docs/docs/lasso/4/describe.mdx b/product_docs/docs/lasso/4/describe.mdx index 4dac95001d..ceb027008f 100644 --- a/product_docs/docs/lasso/4/describe.mdx +++ b/product_docs/docs/lasso/4/describe.mdx @@ -1006,8 +1006,8 @@ period. **Depth:** Surface -**Security Impact:** *Low* — -no known security impact. +**Security impact:** Low — +No known security impact. ### Databases (`postgresql_databases`) @@ -1199,8 +1199,8 @@ Age of current oldest running backend/transaction/query in the cluster. **Depth:** Surface -**Security Impact:** *Low* — -no known security impact. +**Security impact:** Low — +No known security impact. ### Active locks (`postgresql_running_locks`) diff --git a/product_docs/docs/lasso/4/release-notes.mdx b/product_docs/docs/lasso/4/release-notes.mdx index c4342ea117..729fc7f6de 100644 --- a/product_docs/docs/lasso/4/release-notes.mdx +++ b/product_docs/docs/lasso/4/release-notes.mdx @@ -10,13 +10,13 @@ Lasso Version 4.12.0 includes the following enhancements and bug fixes: | Type | Description | Addresses | |----------------|-------------|-----------| -| Feature | Now produces file postgresql/conns_per_second.out, which shows the current rate of new connections established to the database during an observation period of 3 seconds. | DC-892 | -| Feature | Now produces file postgresql/running_activity_maxage.out, which shows the age of the oldest running backend, transaction and query in the database. | DC-893 | -| Bug fix | Fixed an issue where extremely large data files were allowed to be included in the Lasso report, in some situations causing elevated memory usage. Now by default any data file larger than 500 MB is discarded (configurable with a new command line argument `--local-size-limit`) with a corresponding entry in the new contents.data file. | RT100724, DC-944 | -| Bug fix | Fixed an issue where Lasso RPM packages were marked as obsolete, even if they were the latest version. | RT100304, DC-899 | -| Bug fix | Fixed an issue where the Lasso lock file was not being deleted at the end of the execution. | DC-894 | +| Feature | Now produce the file `postgresql/conns_per_second.out`, which shows the current rate of new connections established to the database during an observation period of 3 seconds. | DC-892 | +| Feature | Now produce the file `postgresql/running_activity_maxage.out`, which shows the age of the oldest running backend, transaction, and query in the database. | DC-893 | +| Bug fix | Fixed an issue where extremely large data files were allowed to be included in the Lasso report. In some situations, this condition caused elevated memory usage. Now, by default any data file larger than 500 MB is discarded (configurable with a new command line argument `--local-size-limit`) with a corresponding entry in the new `contents.data` file. | RT100724, DC-944 | +| Bug fix | Fixed an issue where Lasso RPM packages were marked as obsolete even if they were the latest version. | RT100304, DC-899 | +| Bug fix | Fixed an issue where the Lasso lock file wasn't being deleted at the end of the execution. | DC-894 | -!!! Important Deprecation Notice +!!! Important Deprecation notice - PostgreSQL 11 is now EOL and considered deprecated (DC-945). !!! diff --git a/product_docs/docs/migration_toolkit/55/installing/linux_x86_64/index.mdx b/product_docs/docs/migration_toolkit/55/installing/linux_x86_64/index.mdx index c5b5a54b90..a8bb63be26 100644 --- a/product_docs/docs/migration_toolkit/55/installing/linux_x86_64/index.mdx +++ b/product_docs/docs/migration_toolkit/55/installing/linux_x86_64/index.mdx @@ -20,6 +20,7 @@ navigation: - mtk_sles_12 - mtk_ubuntu_22 - mtk_ubuntu_20 + - mtk_ubuntu_18 - mtk_debian_11 - mtk_debian_10 --- diff --git a/product_docs/docs/pgd/3.7/bdr/backup.mdx b/product_docs/docs/pgd/3.7/bdr/backup.mdx index 5b8b3e2f85..5f26dd505f 100644 --- a/product_docs/docs/pgd/3.7/bdr/backup.mdx +++ b/product_docs/docs/pgd/3.7/bdr/backup.mdx @@ -164,7 +164,7 @@ would also include changes from other nodes that have been committed by `T1`, even though they were not applied on `N1` until later. To request multi-origin PITR, use the standard syntax in -the recovery.conf file: +the postgresql.conf file: ``` recovery_target_time = T1 @@ -222,7 +222,7 @@ of a single BDR node, optionally plus WAL archives: - Restore a single PostgreSQL node from a physical backup of one of the BDR nodes. - If you have WAL archives associated with the backup, create a suitable - `recovery.conf` and start PostgreSQL in recovery to replay up to the latest + `postgresql.conf` and start PostgreSQL in recovery to replay up to the latest state. You can specify a alternative `recovery_target` here if needed. - Start the restored node, or promote it to read/write if it was in standby recovery. Keep it fenced from any surviving nodes! diff --git a/product_docs/docs/pgd/4/backup.mdx b/product_docs/docs/pgd/4/backup.mdx index fd61bdc2c2..bd5adbac32 100644 --- a/product_docs/docs/pgd/4/backup.mdx +++ b/product_docs/docs/pgd/4/backup.mdx @@ -164,7 +164,7 @@ would also include changes from other nodes that have been committed by `T1`, even though they were not applied on `N1` until later. To request multi-origin PITR, use the standard syntax in -the recovery.conf file: +the postgresql.conf file: ``` recovery_target_time = T1 @@ -222,7 +222,7 @@ of a single BDR node, optionally plus WAL archives: - Restore a single PostgreSQL node from a physical backup of one of the BDR nodes. - If you have WAL archives associated with the backup, create a suitable - `recovery.conf` and start PostgreSQL in recovery to replay up to the latest + `postgresql.conf` and start PostgreSQL in recovery to replay up to the latest state. You can specify a alternative `recovery_target` here if needed. - Start the restored node, or promote it to read/write if it was in standby recovery. Keep it fenced from any surviving nodes! diff --git a/product_docs/docs/pgd/4/bdr/nodes.mdx b/product_docs/docs/pgd/4/bdr/nodes.mdx index 0501afe1bf..94dfb47d80 100644 --- a/product_docs/docs/pgd/4/bdr/nodes.mdx +++ b/product_docs/docs/pgd/4/bdr/nodes.mdx @@ -312,10 +312,9 @@ BDR: - The connection between BDR primary and standby uses streaming replication through a physical replication slot. - The standby has: - - `recovery.conf` (for PostgreSQL <12, for PostgreSQL 12+ these settings are in `postgres.conf`): + - `postgresql.conf`: - `primary_conninfo` pointing to the primary - `primary_slot_name` naming a physical replication slot on the primary to be used only by this standby - - `postgresql.conf`: - `shared_preload_libraries = 'bdr'`, there can be other plugins in the list as well, but don't include pglogical - `hot_standby = on` - `hot_standby_feedback = on` diff --git a/product_docs/docs/pgd/4/rel_notes/pgd_4.3.3_rel_notes.mdx b/product_docs/docs/pgd/4/rel_notes/pgd_4.3.3_rel_notes.mdx index 6064cc6d61..bd890d45bb 100644 --- a/product_docs/docs/pgd/4/rel_notes/pgd_4.3.3_rel_notes.mdx +++ b/product_docs/docs/pgd/4/rel_notes/pgd_4.3.3_rel_notes.mdx @@ -6,11 +6,12 @@ redirects: --- Released: 14 Nov 2023 +Updated: 18 Jan 2024 EDB Postgres Distributed version 4.3.3 is a patch release of EDB Postgres Distributed 4, which includes bug fixes for issues identified in previous versions. !!! Note -This version is required for EDB Postgres Advanced Server versions 12.14.18, 13.10.14, 14.10.0 and later. +This version is required for EDB Postgres Advanced Server versions 12.15, 13.11, 14.10, 15.5 and later. !!! | Component | Version | Type | Description | diff --git a/product_docs/docs/pgd/5/backup.mdx b/product_docs/docs/pgd/5/backup.mdx index aaf0aa0573..95e74ab8e1 100644 --- a/product_docs/docs/pgd/5/backup.mdx +++ b/product_docs/docs/pgd/5/backup.mdx @@ -165,7 +165,7 @@ also includes changes from other nodes that were committed by `T1`, even though they weren't applied on `N1` until later. To request multi-origin PITR, use the standard syntax in -the `recovery.conf` file: +the `postgresql.conf` file: ``` recovery_target_time = T1 @@ -223,7 +223,7 @@ of a single PGD node, optionally plus WAL archives: - Restore a single PostgreSQL node from a physical backup of one of the PGD nodes. - If you have WAL archives associated with the backup, create a suitable - `recovery.conf` and start PostgreSQL in recovery to replay up to the latest + `postgresql.conf` and start PostgreSQL in recovery to replay up to the latest state. You can specify an alternative `recovery_target` here if needed. - Start the restored node, or promote it to read/write if it was in standby recovery. Keep it fenced from any surviving nodes! diff --git a/product_docs/docs/pgd/5/ddl.mdx b/product_docs/docs/pgd/5/ddl.mdx index c9c86be702..dfd94a9848 100644 --- a/product_docs/docs/pgd/5/ddl.mdx +++ b/product_docs/docs/pgd/5/ddl.mdx @@ -122,6 +122,8 @@ function. Two kinds of locks enforce correctness of replicated DDL with PGD. +### The global DDL lock + The first kind is known as a global DDL lock and is used only when `ddl_locking = on`. A global DDL lock prevents any other DDL from executing on the cluster while each DDL statement runs. This ensures full correctness in the general case but @@ -133,7 +135,9 @@ another DDL command, even if it affects different tables. To acquire a lock on DDL operations, the PGD node executing DDL contacts the other nodes in a PGD group and asks them to grant it the exclusive right to -execute DDL. The lock request is sent by the regular replication stream, and the +execute DDL. + +The lock request is sent by the regular replication stream, and the nodes respond by the replication stream as well. So it's important that nodes (or at least a majority of the nodes) run without much replication delay. Otherwise it might take a long time for the node to acquire the DDL @@ -150,6 +154,11 @@ take a long time to acquire the lock. Hence it's preferable to run DDLs from a single node or the nodes that have nearly caught up with replication changes originating at other nodes. +A global DDL Lock has to be granted by a majority of data and witness nodes where a majority is N/2+1 +of the eligible nodes. Subscriber-only nodes are not eligible to participate. + +### The global DML lock + The second kind is known as a global DML lock or relation DML lock. This kind of lock is used when either `ddl_locking = on` or `ddl_locking = dml`, and the DDL statement might cause in-flight DML statements to fail. These failures can occur when you add or modify a constraint, @@ -177,6 +186,10 @@ can be reached and are keeping up reasonably well with the current write rate. If such DDL commands must be performed while a node is down, first remove the down node from the configuration. +A global DML lock is granted when *ALL* the eligible data nodes agree to grant it. +Witness and subscriber-only nodes are not eligible to participate. + + If a DDL statement isn't replicated, no global locks are acquired. Locking behavior is specified by the `bdr.ddl_locking` parameter, as diff --git a/product_docs/docs/pgd/5/limitations.mdx b/product_docs/docs/pgd/5/limitations.mdx index a0a2ce827b..6babc8bbfb 100644 --- a/product_docs/docs/pgd/5/limitations.mdx +++ b/product_docs/docs/pgd/5/limitations.mdx @@ -74,6 +74,12 @@ within commit scope rules. Consult the [Durability limitations](durability/limitations) section for a full and current listing. +## Mixed PGD versions + +PGD has been developed to [enable rolling upgrades of PGD](upgrades) by allowing mixed versions of PGD to operate during the upgrade process. +We expect users to only run mixed versions during upgrades and, once an upgrade has been started, that they complete that upgrade. +We do not support running mixed versions of PGD other than while there is an upgrade taking place. + ## Other limitations This noncomprehensive list includes other limitations that are expected and diff --git a/product_docs/docs/pgd/5/reference/index.json b/product_docs/docs/pgd/5/reference/index.json index d1a477f5ec..cf4428c84f 100644 --- a/product_docs/docs/pgd/5/reference/index.json +++ b/product_docs/docs/pgd/5/reference/index.json @@ -171,20 +171,20 @@ "list-of-node-states": "/pgd/latest/reference/nodes#list-of-node-states", "node-management-commands": "/pgd/latest/reference/nodes#node-management-commands", "bdr_init_physical": "/pgd/latest/reference/nodes#bdr_init_physical", + "bdralter_node_group_config": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_group_config", + "bdralter_node_group_option": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_group_option", + "bdralter_node_interface": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_interface", + "bdralter_node_option": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_option", + "bdralter_subscription_enable": "/pgd/latest/reference/nodes-management-interfaces#bdralter_subscription_enable", + "bdralter_subscription_disable": "/pgd/latest/reference/nodes-management-interfaces#bdralter_subscription_disable", "bdrcreate_node": "/pgd/latest/reference/nodes-management-interfaces#bdrcreate_node", - "bdrdrop_node": "/pgd/latest/reference/nodes-management-interfaces#bdrdrop_node", "bdrcreate_node_group": "/pgd/latest/reference/nodes-management-interfaces#bdrcreate_node_group", - "bdralter_node_group_config": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_group_config", + "bdrdrop_node": "/pgd/latest/reference/nodes-management-interfaces#bdrdrop_node", "bdrjoin_node_group": "/pgd/latest/reference/nodes-management-interfaces#bdrjoin_node_group", - "bdrswitch_node_group": "/pgd/latest/reference/nodes-management-interfaces#bdrswitch_node_group", + "bdrpart_node": "/pgd/latest/reference/nodes-management-interfaces#bdrpart_node", "bdrpromote_node": "/pgd/latest/reference/nodes-management-interfaces#bdrpromote_node", + "bdrswitch_node_group": "/pgd/latest/reference/nodes-management-interfaces#bdrswitch_node_group", "bdrwait_for_join_completion": "/pgd/latest/reference/nodes-management-interfaces#bdrwait_for_join_completion", - "bdrpart_node": "/pgd/latest/reference/nodes-management-interfaces#bdrpart_node", - "bdralter_node_interface": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_interface", - "bdralter_subscription_enable": "/pgd/latest/reference/nodes-management-interfaces#bdralter_subscription_enable", - "bdralter_subscription_disable": "/pgd/latest/reference/nodes-management-interfaces#bdralter_subscription_disable", - "bdralter_node_group_option": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_group_option", - "bdralter_node_option": "/pgd/latest/reference/nodes-management-interfaces#bdralter_node_option", "bdrcreate_proxy": "/pgd/latest/reference/routing#bdrcreate_proxy", "bdralter_proxy_option": "/pgd/latest/reference/routing#bdralter_proxy_option", "bdrdrop_proxy": "/pgd/latest/reference/routing#bdrdrop_proxy", diff --git a/product_docs/docs/pgd/5/reference/index.mdx b/product_docs/docs/pgd/5/reference/index.mdx index 61b935425c..39d9f1c34e 100644 --- a/product_docs/docs/pgd/5/reference/index.mdx +++ b/product_docs/docs/pgd/5/reference/index.mdx @@ -241,20 +241,20 @@ The reference section is a definitive listing of all functions, views and comman ## [Node management interfaces](nodes-management-interfaces) + * [`bdr.alter_node_group_config`](nodes-management-interfaces#bdralter_node_group_config) + * [`bdr.alter_node_group_option`](nodes-management-interfaces#bdralter_node_group_option) + * [`bdr.alter_node_interface`](nodes-management-interfaces#bdralter_node_interface) + * [`bdr.alter_node_option`](nodes-management-interfaces#bdralter_node_option) + * [`bdr.alter_subscription_enable`](nodes-management-interfaces#bdralter_subscription_enable) + * [`bdr.alter_subscription_disable`](nodes-management-interfaces#bdralter_subscription_disable) * [`bdr.create_node`](nodes-management-interfaces#bdrcreate_node) - * [`bdr.drop_node`](nodes-management-interfaces#bdrdrop_node) * [`bdr.create_node_group`](nodes-management-interfaces#bdrcreate_node_group) - * [`bdr.alter_node_group_config`](nodes-management-interfaces#bdralter_node_group_config) + * [`bdr.drop_node`](nodes-management-interfaces#bdrdrop_node) * [`bdr.join_node_group`](nodes-management-interfaces#bdrjoin_node_group) - * [`bdr.switch_node_group`](nodes-management-interfaces#bdrswitch_node_group) + * [`bdr.part_node`](nodes-management-interfaces#bdrpart_node) * [`bdr.promote_node`](nodes-management-interfaces#bdrpromote_node) + * [`bdr.switch_node_group`](nodes-management-interfaces#bdrswitch_node_group) * [`bdr.wait_for_join_completion`](nodes-management-interfaces#bdrwait_for_join_completion) - * [`bdr.part_node`](nodes-management-interfaces#bdrpart_node) - * [`bdr.alter_node_interface`](nodes-management-interfaces#bdralter_node_interface) - * [`bdr.alter_subscription_enable`](nodes-management-interfaces#bdralter_subscription_enable) - * [`bdr.alter_subscription_disable`](nodes-management-interfaces#bdralter_subscription_disable) - * [`bdr.alter_node_group_option`](nodes-management-interfaces#bdralter_node_group_option) - * [`bdr.alter_node_option`](nodes-management-interfaces#bdralter_node_option) ## [Routing functions](routing) diff --git a/product_docs/docs/pgd/5/reference/nodes-management-interfaces.mdx b/product_docs/docs/pgd/5/reference/nodes-management-interfaces.mdx index 403a515212..b8b10b343e 100644 --- a/product_docs/docs/pgd/5/reference/nodes-management-interfaces.mdx +++ b/product_docs/docs/pgd/5/reference/nodes-management-interfaces.mdx @@ -6,82 +6,256 @@ indexdepth: 2 You can add and remove nodes dynamically using the SQL interfaces. -## `bdr.create_node` +## `bdr.alter_node_group_config` -This function creates a node. +This function changes the configuration parameters of an existing PGD group. +Options with NULL value (default for all of them) aren't modified. ### Synopsis ```sql -bdr.create_node(node_name text, local_dsn text) +bdr.alter_node_group_config(node_group_name text, + insert_to_update boolean DEFAULT NULL, + update_to_insert boolean DEFAULT NULL, + ignore_redundant_updates boolean DEFAULT NULL, + check_full_tuple boolean DEFAULT NULL, + apply_delay interval DEFAULT NULL, + check_constraints boolean DEFAULT NULL, + num_writers int DEFAULT NULL, + enable_wal_decoder boolean DEFAULT NULL, + streaming_mode text DEFAULT NULL, + default_commit_scope text DEFAULT NULL) ``` ### Parameters -- `node_name` — Name of the new node. Only one node is allowed per - database. Valid node names consist of lowercase letters, numbers, - hyphens, and underscores. -- `local_dsn` — Connection string to the node. +- `node_group_name` — Name of an existing PGD group. The local node must be part + of the group. +- `insert_to_update` — Reserved for backward compatibility. +- `update_to_insert` — Reserved for backward compatibility. + This option is deprecated and will be disabled or removed in future + versions of PGD. Use `bdr.alter_node_set_conflict_resolver` instead. +- `ignore_redundant_updates` — Reserved for backward compatibility. +- `check_full_tuple` — Reserved for backward compatibility. +- `apply_delay` — Reserved for backward compatibility. +- `check_constraints` — Whether the apply process checks the constraints + when writing replicated data. + This option is deprecated and will be disabled or removed in future + versions of PGD. +- `num_writers` — Number of parallel writers for subscription backing + this node group. -1 means the default (as specified by the + GUC `bdr.writers_per_subscription`) is used. Valid values + are either -1 or a positive integer. +- `enable_wal_decoder` — Enables/disables the decoding worker process. + You can't enable the decoding worker process if `streaming_mode` is + already enabled. +- `streaming_mode` — Enables/disables streaming of large transactions. + When set to `off`, streaming is disabled. When set to any other value, + large transactions are decoded while they're still in progress, and the + changes are sent to the downstream. If the value is set to `file`, + then the incoming changes of streaming transactions are stored in a file + and applied only after the transaction is committed on upstream. If the + value is set to `writer`, then the incoming changes are directly sent to + one of the writers, if available. If parallel apply is disabled or no + writer is free to handle streaming transaction, then the changes are + written to a file and applied after the transaction is committed. If the + value is set to `auto`, PGD tries to intelligently pick between + `file` and `writer`, depending on the transaction property and available + resources. You can't enable `streaming_mode` if the WAL + decoder is already enabled. -### Notes + For more details, see [Transaction streaming](../transaction-streaming). -This function creates a record for the local node with the associated -public connection string. There can be only one local record, so once it's -created, the function reports an error if run again. +- `default_commit_scope` — The commit scope to use by default, + initially the `local` commit scope. This applies only to the + top-level node group. You can use individual rules for different + origin groups of the same commit scope. See + [Origin groups](../durability/commit-scopes/#origin-groups) for more details. -This function is a transactional function. You can roll it back and the -changes made by it are visible to the current transaction. +### Notes -The function holds lock on the newly created bdr node until the end of -the transaction. +This function passes a request to the group consensus mechanism to change +the defaults. The changes made are replicated globally using the consensus +mechanism. -## `bdr.drop_node` +The function isn't transactional. The request is processed in the background +so you can't roll back the function call. Also, the changes might not be +immediately visible to the current transaction. -Drops a node. +This function doesn't hold any locks. !!! Warning - This function isn't intended for regular use. Execute it only - if instructed by Technical Support. + When you use this function to change the `apply_delay` value, the + change doesn't apply to nodes that are already members of the + group. + This restriction has little consequence on production + use because this value normally isn't used outside of testing. -This function removes the metadata for a given node from the local -database. The node can be either: -- The local node, in which case all the node metadata is removed, - including information about remote nodes. -- A remote node, in which case only metadata for that specific - node is removed. +## `bdr.alter_node_group_option` + +Modify the PGD node group routing configuration ### Synopsis ```sql -bdr.drop_node(node_name text, cascade boolean DEFAULT false, force boolean DEFAULT false) +bdr.alter_node_group_option(node_group_name text, + config_key text, + config_value text); ``` ### Parameters -- `node_name` — Name of an existing node. -- `cascade` — Deprecated, will be removed in the future. -- `force` — Circumvents all sanity checks and forces the removal of - all metadata for the given PGD node despite a possible danger of - causing inconsistencies. Only Technical Support uses a forced node drop - in case of emergencies related to - parting. +- `node_group_name` — Name of the group to be changed. +- `config_key` — Key of the option in the node group to be changed. +- `config_value` — New value to be set for the given key. + +## `bdr.alter_node_interface` + +This function changes the connection string (`DSN`) of a specified node. + +### Synopsis + +```sql +bdr.alter_node_interface(node_name text, interface_dsn text) +``` + +### Parameters + +- `node_name` — Name of an existing node to alter. +- `interface_dsn` — New connection string for a node. ### Notes -Before you run this, part the node using `bdr.part_node()`. +Run this function and make the changes only on the local node. This means that you normally execute it on every node in the +PGD group, including the node that is being changed. -This function removes metadata for a given node from the local database. The node -can be the local node, in which case all the node metadata are removed, -including information about remote nodes. Or it can be the remote node, in -which case only metadata for that specific node is removed. +This function is transactional. You can roll it back, and the changes are +visible to the current transaction. -!!! Note - PGD can have a maximum of 1024 node records (both ACTIVE and PARTED) - at one time because each node has a unique sequence number - assigned to it, for use by snowflakeid and timeshard sequences. - PARTED nodes aren't automatically cleaned up. If this - becomes a problem, you can use this function to remove those records. +The function holds lock on the local node. + + +## `bdr.alter_node_option` + +Modify the PGD node routing configuration + +### Synopsis + +```sql +bdr.alter_node_option(node_name text, + config_key text, + config_value text); +``` + +### Parameters + +- `node_name` — Name of the node to be changed. +- `config_key` — Key of the option in the node to be changed. +- `config_value` — New value to be set for the given key. + +## `bdr.alter_subscription_enable` + +This function enables either the specified subscription or all the subscriptions of the +local PGD node. This is also known as resume subscription. +No error is thrown if the subscription is already enabled. +Returns the number of subscriptions affected by this operation. + +### Synopsis + +```sql +bdr.alter_subscription_enable( + subscription_name name DEFAULT NULL, + immediate boolean DEFAULT false +) +``` + +### Parameters + +- `subscription_name` — Name of the subscription to enable. If NULL + (the default), all subscriptions on the local node are enabled. +- `immediate` — This currently has no effect. + +### Notes + +This function isn't replicated and affects only local node subscriptions +(either a specific node or all nodes). + +This function is transactional. You can roll it back, and the current transaction can see any catalog changes. The subscription workers are started +by a background process after the transaction has committed. + +## `bdr.alter_subscription_disable` + +This function disables either the specified subscription or all the +subscriptions of the local PGD node. Optionally, it can also immediately stop +all the workers associated with the disabled subscriptions. This is also known as pause +subscription. No error is thrown if the subscription is already disabled. +Returns the number of subscriptions affected by this operation. + +### Synopsis + +```sql +bdr.alter_subscription_disable( + subscription_name name DEFAULT NULL, + immediate boolean DEFAULT false, + fast boolean DEFAULT true +) +``` + +### Parameters + +- `subscription_name` — Name of the subscription to disable. If NULL + (the default), all subscriptions on the local node are disabled. +- `immediate` — Used to force the action immediately, stopping + all the workers associated with the disabled subscription. When this option is + `true`, you can't run this function inside of the transaction block. +- `fast` — This argument influences the behavior of `immediate`. + If set to `true` (the default) it stops all the workers associated with the + disabled subscription without waiting for them to finish current work. + +### Notes + +This function isn't replicated and affects only local node subscriptions +(either a specific subscription or all subscriptions). + +This function is transactional. You can roll it back, and the current transaction can see any catalog changes. +However, the timing of the subscription +worker stopping depends on the value of `immediate`. If set to `true`, the +workers receive the stop without waiting for the `COMMIT`. If the `fast` +argument is set to `true`, the interruption of the workers doesn't wait for +current work to finish. + + + + +## `bdr.create_node` + +This function creates a node. + +### Synopsis + +```sql +bdr.create_node(node_name text, local_dsn text) +``` + +### Parameters + +- `node_name` — Name of the new node. Only one node is allowed per + database. Valid node names consist of lowercase letters, numbers, + hyphens, and underscores. +- `local_dsn` — Connection string to the node. + +### Notes + +This function creates a record for the local node with the associated +public connection string. There can be only one local record, so once it's +created, the function reports an error if run again. + +This function is a transactional function. You can roll it back and the +changes made by it are visible to the current transaction. + +The function holds lock on the newly created bdr node until the end of +the transaction. ## `bdr.create_node_group` @@ -128,90 +302,55 @@ You can call `bdr.wait_for_join_completion` to wait until they are. The group creation doesn't hold any locks. -## `bdr.alter_node_group_config` -This function changes the configuration parameters of an existing PGD group. -Options with NULL value (default for all of them) aren't modified. +## `bdr.drop_node` -### Synopsis +Drops a node. -```sql -bdr.alter_node_group_config(node_group_name text, - insert_to_update boolean DEFAULT NULL, - update_to_insert boolean DEFAULT NULL, - ignore_redundant_updates boolean DEFAULT NULL, - check_full_tuple boolean DEFAULT NULL, - apply_delay interval DEFAULT NULL, - check_constraints boolean DEFAULT NULL, - num_writers int DEFAULT NULL, - enable_wal_decoder boolean DEFAULT NULL, - streaming_mode text DEFAULT NULL, - default_commit_scope text DEFAULT NULL) -``` +!!! Warning + This function isn't intended for regular use. Execute it only + if instructed by Technical Support. -### Parameters +This function removes the metadata for a given node from the local +database. The node can be either: -- `node_group_name` — Name of an existing PGD group. The local node must be part - of the group. -- `insert_to_update` — Reserved for backward compatibility. -- `update_to_insert` — Reserved for backward compatibility. - This option is deprecated and will be disabled or removed in future - versions of PGD. Use `bdr.alter_node_set_conflict_resolver` instead. -- `ignore_redundant_updates` — Reserved for backward compatibility. -- `check_full_tuple` — Reserved for backward compatibility. -- `apply_delay` — Reserved for backward compatibility. -- `check_constraints` — Whether the apply process checks the constraints - when writing replicated data. - This option is deprecated and will be disabled or removed in future - versions of PGD. -- `num_writers` — Number of parallel writers for subscription backing - this node group. -1 means the default (as specified by the - GUC `bdr.writers_per_subscription`) is used. Valid values - are either -1 or a positive integer. -- `enable_wal_decoder` — Enables/disables the decoding worker process. - You can't enable the decoding worker process if `streaming_mode` is - already enabled. -- `streaming_mode` — Enables/disables streaming of large transactions. - When set to `off`, streaming is disabled. When set to any other value, - large transactions are decoded while they're still in progress, and the - changes are sent to the downstream. If the value is set to `file`, - then the incoming changes of streaming transactions are stored in a file - and applied only after the transaction is committed on upstream. If the - value is set to `writer`, then the incoming changes are directly sent to - one of the writers, if available. If parallel apply is disabled or no - writer is free to handle streaming transaction, then the changes are - written to a file and applied after the transaction is committed. If the - value is set to `auto`, PGD tries to intelligently pick between - `file` and `writer`, depending on the transaction property and available - resources. You can't enable `streaming_mode` if the WAL - decoder is already enabled. +- The local node, in which case all the node metadata is removed, + including information about remote nodes. +- A remote node, in which case only metadata for that specific + node is removed. - For more details, see [Transaction streaming](../transaction-streaming). +### Synopsis -- `default_commit_scope` — The commit scope to use by default, - initially the `local` commit scope. This applies only to the - top-level node group. You can use individual rules for different - origin groups of the same commit scope. See - [Origin groups](../durability/commit-scopes/#origin-groups) for more details. +```sql +bdr.drop_node(node_name text, cascade boolean DEFAULT false, force boolean DEFAULT false) +``` + +### Parameters + +- `node_name` — Name of an existing node. +- `cascade` — Deprecated, will be removed in the future. +- `force` — Circumvents all sanity checks and forces the removal of + all metadata for the given PGD node despite a possible danger of + causing inconsistencies. Only Technical Support uses a forced node drop + in case of emergencies related to + parting. ### Notes -This function passes a request to the group consensus mechanism to change -the defaults. The changes made are replicated globally using the consensus -mechanism. +Before you run this, part the node using `bdr.part_node()`. -The function isn't transactional. The request is processed in the background -so you can't roll back the function call. Also, the changes might not be -immediately visible to the current transaction. +This function removes metadata for a given node from the local database. The node +can be the local node, in which case all the node metadata are removed, +including information about remote nodes. Or it can be the remote node, in +which case only metadata for that specific node is removed. -This function doesn't hold any locks. +!!! Note + PGD can have a maximum of 1024 node records (both ACTIVE and PARTED) + at one time because each node has a unique sequence number + assigned to it, for use by snowflakeid and timeshard sequences. + PARTED nodes aren't automatically cleaned up. If this + becomes a problem, you can use this function to remove those records. -!!! Warning - When you use this function to change the `apply_delay` value, the - change doesn't apply to nodes that are already members of the - group. - This restriction has little consequence on production - use because this value normally isn't used outside of testing. ## `bdr.join_node_group` @@ -267,94 +406,6 @@ on each node. Node join doesn't hold any locks in the PGD group. -## `bdr.switch_node_group` - -This function switches the local node from its current subgroup to another subgroup within the same existing PGD node group. - -### Synopsis - -```sql -bdr.switch_node_group ( - node_group_name text, - wait_for_completion boolean DEFAULT true -) -``` - -### Parameters - -- `node_group_name` — Name of the PGD group or subgroup. -- `wait_for_completion` — Wait for the switch process to complete before - returning. Defaults to `true`. - -If `wait_for_completion` is specified as `false`, -this is an asynchronous call that returns as soon as the switching procedure starts. -You can see progress of the switch in logs and the -`bdr.event_summary` information view or by calling the -`bdr.wait_for_join_completion()` function after `bdr.switch_node_group()` returns. - -### Notes - -This function passes a request to the group consensus mechanism. -The changes made are replicated globally by the consensus mechanism. - -The function isn't transactional. The switching process happens in the -background and you can't roll it back. The changes are visible only -to the local transaction if `wait_for_completion` was set to `true` or by calling -`bdr.wait_for_join_completion` later. - -The local node changes membership from its current subgroup to another subgroup within the same PGD node group without needing to part the cluster. The node's kind must match that of existing nodes within the target subgroup. - -Node switching doesn't hold any locks in the PGD group. - -Restrictions: Currently, the function only allows switching between a subgroup and its PGD node group. To effect a move between subgroups it is necessary to make two separate calls: 1) switch from subgroup to node group and, 2) switch from node group to other subgroup. - - -## `bdr.promote_node` - -This function promotes a local logical standby node to a full member of the PGD group. - -### Synopsis - -```sql -bdr.promote_node(wait_for_completion boolean DEFAULT true) -``` - -### Notes - -This function passes a request to the group consensus mechanism to change -the defaults. The changes made are replicated globally by the consensus -mechanism. - -The function isn't transactional. The promotion process happens in the -background, and you can't roll it back. The changes are visible only -to the local transaction if `wait_for_completion` was set to `true` or by calling -`bdr.wait_for_join_completion` later. - -The promotion process holds lock against other promotions. This lock doesn't -block other `bdr.promote_node` calls but prevents the background process of -promotion from moving forward on more than one node at a time. - -## `bdr.wait_for_join_completion` - -This function waits for the join procedure of a local node to finish. - -### Synopsis - -```sql -bdr.wait_for_join_completion(verbose_progress boolean DEFAULT false) -``` - -### Parameters - -- `verbose_progress` — Optionally prints information about individual steps - taken during the join procedure. - -### Notes - -This function waits until the checks state of the local node reaches the target -state, which was set by `bdr.create_node_group`, `bdr.join_node_group`, or -`bdr.promote_node`. - ## `bdr.part_node` Removes (parts) the node from the PGD group but doesn't remove data @@ -421,135 +472,92 @@ resynchronization and can leave the other nodes in an inconsistent state. The parting process doesn't hold any locks. -## `bdr.alter_node_interface` +## `bdr.promote_node` -This function changes the connection string (`DSN`) of a specified node. +This function promotes a local logical standby node to a full member of the PGD group. ### Synopsis ```sql -bdr.alter_node_interface(node_name text, interface_dsn text) +bdr.promote_node(wait_for_completion boolean DEFAULT true) ``` -### Parameters - -- `node_name` — Name of an existing node to alter. -- `interface_dsn` — New connection string for a node. - ### Notes -Run this function and make the changes only on the local node. This means that you normally execute it on every node in the -PGD group, including the node that is being changed. +This function passes a request to the group consensus mechanism to change +the defaults. The changes made are replicated globally by the consensus +mechanism. -This function is transactional. You can roll it back, and the changes are -visible to the current transaction. +The function isn't transactional. The promotion process happens in the +background, and you can't roll it back. The changes are visible only +to the local transaction if `wait_for_completion` was set to `true` or by calling +`bdr.wait_for_join_completion` later. -The function holds lock on the local node. +The promotion process holds lock against other promotions. This lock doesn't +block other `bdr.promote_node` calls but prevents the background process of +promotion from moving forward on more than one node at a time. -## `bdr.alter_subscription_enable` +## `bdr.switch_node_group` -This function enables either the specified subscription or all the subscriptions of the -local PGD node. This is also known as resume subscription. -No error is thrown if the subscription is already enabled. -Returns the number of subscriptions affected by this operation. +This function switches the local node from its current subgroup to another subgroup within the same existing PGD node group. ### Synopsis ```sql -bdr.alter_subscription_enable( - subscription_name name DEFAULT NULL, - immediate boolean DEFAULT false +bdr.switch_node_group ( + node_group_name text, + wait_for_completion boolean DEFAULT true ) ``` ### Parameters -- `subscription_name` — Name of the subscription to enable. If NULL - (the default), all subscriptions on the local node are enabled. -- `immediate` — This currently has no effect. - -### Notes - -This function isn't replicated and affects only local node subscriptions -(either a specific node or all nodes). - -This function is transactional. You can roll it back, and the current transaction can see any catalog changes. The subscription workers are started -by a background process after the transaction has committed. +- `node_group_name` — Name of the PGD group or subgroup. +- `wait_for_completion` — Wait for the switch process to complete before + returning. Defaults to `true`. -## `bdr.alter_subscription_disable` +If `wait_for_completion` is specified as `false`, +this is an asynchronous call that returns as soon as the switching procedure starts. +You can see progress of the switch in logs and the +`bdr.event_summary` information view or by calling the +`bdr.wait_for_join_completion()` function after `bdr.switch_node_group()` returns. -This function disables either the specified subscription or all the -subscriptions of the local PGD node. Optionally, it can also immediately stop -all the workers associated with the disabled subscriptions. This is also known as pause -subscription. No error is thrown if the subscription is already disabled. -Returns the number of subscriptions affected by this operation. +### Notes -### Synopsis +This function passes a request to the group consensus mechanism. +The changes made are replicated globally by the consensus mechanism. -```sql -bdr.alter_subscription_disable( - subscription_name name DEFAULT NULL, - immediate boolean DEFAULT false, - fast boolean DEFAULT true -) -``` +The function isn't transactional. The switching process happens in the +background and you can't roll it back. The changes are visible only +to the local transaction if `wait_for_completion` was set to `true` or by calling +`bdr.wait_for_join_completion` later. -### Parameters +The local node changes membership from its current subgroup to another subgroup within the same PGD node group without needing to part the cluster. The node's kind must match that of existing nodes within the target subgroup. -- `subscription_name` — Name of the subscription to disable. If NULL - (the default), all subscriptions on the local node are disabled. -- `immediate` — Used to force the action immediately, stopping - all the workers associated with the disabled subscription. When this option is - `true`, you can't run this function inside of the transaction block. -- `fast` — This argument influences the behavior of `immediate`. - If set to `true` (the default) it stops all the workers associated with the - disabled subscription without waiting for them to finish current work. +Node switching doesn't hold any locks in the PGD group. -### Notes +Restrictions: Currently, the function only allows switching between a subgroup and its PGD node group. To effect a move between subgroups it is necessary to make two separate calls: 1) switch from subgroup to node group and, 2) switch from node group to other subgroup. -This function isn't replicated and affects only local node subscriptions -(either a specific subscription or all subscriptions). -This function is transactional. You can roll it back, and the current transaction can see any catalog changes. -However, the timing of the subscription -worker stopping depends on the value of `immediate`. If set to `true`, the -workers receive the stop without waiting for the `COMMIT`. If the `fast` -argument is set to `true`, the interruption of the workers doesn't wait for -current work to finish. -## `bdr.alter_node_group_option` +## `bdr.wait_for_join_completion` -Modify the PGD node group routing configuration +This function waits for the join procedure of a local node to finish. ### Synopsis ```sql -bdr.alter_node_group_option(node_group_name text, - config_key text, - config_value text); +bdr.wait_for_join_completion(verbose_progress boolean DEFAULT false) ``` ### Parameters -- `node_group_name` — Name of the group to be changed. -- `config_key` — Key of the option in the node group to be changed. -- `config_value` — New value to be set for the given key. - - -## `bdr.alter_node_option` - -Modify the PGD node routing configuration - -### Synopsis +- `verbose_progress` — Optionally prints information about individual steps + taken during the join procedure. -```sql -bdr.alter_node_option(node_name text, - config_key text, - config_value text); -``` +### Notes -### Parameters +This function waits until the checks state of the local node reaches the target +state, which was set by `bdr.create_node_group`, `bdr.join_node_group`, or +`bdr.promote_node`. -- `node_name` — Name of the node to be changed. -- `config_key` — Key of the option in the node to be changed. -- `config_value` — New value to be set for the given key. diff --git a/product_docs/docs/pge/15/administration/01_setting_configuration_parameters.mdx b/product_docs/docs/pge/15/administration/01_setting_configuration_parameters.mdx new file mode 100644 index 0000000000..516b381838 --- /dev/null +++ b/product_docs/docs/pge/15/administration/01_setting_configuration_parameters.mdx @@ -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'; +``` + + + +## 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" +``` diff --git a/product_docs/docs/pge/15/administration/index.mdx b/product_docs/docs/pge/15/administration/index.mdx new file mode 100644 index 0000000000..8ab4adf725 --- /dev/null +++ b/product_docs/docs/pge/15/administration/index.mdx @@ -0,0 +1,11 @@ +--- +title: "Administration" +indexCards: simple +navigation: +- 01_configuration_parameters +--- + +EDB Postgres Extended Server includes features to help you to maintain, secure, and operate EDB Postgres Extended Server databases. + +* [Setting Configuration Parameters](01_setting_configuration_parameters) covers how to configure GUC parameters at runtime, modifying `postgresql.conf` for persistent changes and editing `pg_hba.conf` to change access and authentication settings. + diff --git a/product_docs/docs/pge/15/index.mdx b/product_docs/docs/pge/15/index.mdx index 5d0e4175f1..2380afb2ad 100644 --- a/product_docs/docs/pge/15/index.mdx +++ b/product_docs/docs/pge/15/index.mdx @@ -5,6 +5,7 @@ navigation: - release_notes - deploy_options - installing + - administration - "#Features" - tde - replication diff --git a/product_docs/docs/pge/15/installing/component_locations.mdx b/product_docs/docs/pge/15/installing/component_locations.mdx new file mode 100644 index 0000000000..be17564989 --- /dev/null +++ b/product_docs/docs/pge/15/installing/component_locations.mdx @@ -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/pge15/bin` | +| Libraries | `/usr/edb/pge15/lib` | +| Cluster configuration files | `/var/lib/edb-pge/15` | +| Documentation | `/usr/edb/pge15/share/man` | +| Contrib | `/usr/edb/pge15/share/contrib` | +| Data | `/var/lib/edb-pge/15/data` | +| Logs | `/var/log/edb/pge15` | +| Lock files | `/var/lock/edb/pge15` | +| Backup area | `/var/lib/edb-pge/15/backups` | +| Templates | `/usr/edb/pge15/share` | +| Procedural Languages | `/usr/edb/pge15/lib` | +| Development Headers | `/usr/edb/pge15/include` | +| Shared data | `/usr/edb/pge15/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/15/bin` | +| Libraries | `/usr/lib/edb-pge/15/lib` | +| Cluster configuration files | `/var/lib/edb-pge/15/main` | +| Data | `/var/lib/edb-pge/15/main` | +| Logs | `/var/log/edb-pge/` | +| Lock files | `/var/lock/edb/pge15` | diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_centos_7.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_centos_7.mdx index 3c46ca81aa..df0655ef11 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_centos_7.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_centos_7.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo yum -y install edb-postgresextended-server edb-postgresextended-contrib +sudo yum -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_10.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_10.mdx index 33db78f670..4e7f4b623a 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_10.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_10.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-15 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. +## 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-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_11.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_11.mdx index c557e2d2b0..4fc5f58adf 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_11.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_debian_11.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-15 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. +## 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-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_8.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_8.mdx index ccd0fc2dd4..235b09f8a4 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_8.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_8.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_9.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_9.mdx index 9dde370c88..707fe0310c 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_9.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_other_linux_9.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_7.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_7.mdx index 72b8a36b46..0a53c62cb8 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_7.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_7.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo yum -y install edb-postgresextended-server edb-postgresextended-contrib +sudo yum -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_8.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_8.mdx index 04a9ee7570..aeecd6608a 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_8.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_8.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_9.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_9.mdx index ab4f396ec8..f8c3b54ceb 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_9.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_rhel_9.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended15-server edb-postgresextended15-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended15-server edb-postgresextended15-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration was successful, connecting to your cluster, and creating the user password. + +First, you need to initialize and start the database cluster. The `edb-pge-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/edb/pge15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_18.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_18.mdx index d82b4dc55b..f113e765b7 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_18.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_18.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-15 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended-15. +## 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-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_20.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_20.mdx index 1de88ccf30..2f500bd4e2 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_20.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_20.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-15 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended-15. +## 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-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_22.mdx b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_22.mdx index b09984f5fe..eca1aaa786 100644 --- a/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_22.mdx +++ b/product_docs/docs/pge/15/installing/linux_x86_64/pge_ubuntu_22.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- edb-postgresextended--contrib +sudo apt-get -y install edb-postgresextended-15 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be edb-postgresextended-15 edb-postgresextended-15-contrib. +## 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-15-setup` script creates a cluster. + +```shell +sudo PGSETUP_INITDB_OPTIONS="-E UTF-8" /usr/lib/edb-pge/15/bin/edb-pge-15-setup initdb + +sudo systemctl start edb-pge-15 +``` + +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) +``` diff --git a/product_docs/docs/pge/16/administration/01_setting_configuration_parameters.mdx b/product_docs/docs/pge/16/administration/01_setting_configuration_parameters.mdx new file mode 100644 index 0000000000..516b381838 --- /dev/null +++ b/product_docs/docs/pge/16/administration/01_setting_configuration_parameters.mdx @@ -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'; +``` + + + +## 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" +``` diff --git a/product_docs/docs/pge/16/administration/index.mdx b/product_docs/docs/pge/16/administration/index.mdx new file mode 100644 index 0000000000..8ab4adf725 --- /dev/null +++ b/product_docs/docs/pge/16/administration/index.mdx @@ -0,0 +1,11 @@ +--- +title: "Administration" +indexCards: simple +navigation: +- 01_configuration_parameters +--- + +EDB Postgres Extended Server includes features to help you to maintain, secure, and operate EDB Postgres Extended Server databases. + +* [Setting Configuration Parameters](01_setting_configuration_parameters) covers how to configure GUC parameters at runtime, modifying `postgresql.conf` for persistent changes and editing `pg_hba.conf` to change access and authentication settings. + diff --git a/product_docs/docs/pge/16/index.mdx b/product_docs/docs/pge/16/index.mdx index 435b975ade..35dc89b718 100644 --- a/product_docs/docs/pge/16/index.mdx +++ b/product_docs/docs/pge/16/index.mdx @@ -5,6 +5,7 @@ navigation: - release_notes - deploy_options - installing + - administration - "#Features" - tde - replication diff --git a/product_docs/docs/pge/16/installing/component_locations.mdx b/product_docs/docs/pge/16/installing/component_locations.mdx new file mode 100644 index 0000000000..daf1a791b0 --- /dev/null +++ b/product_docs/docs/pge/16/installing/component_locations.mdx @@ -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` | diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_centos_7.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_centos_7.mdx index 01113704c4..8baf86c14d 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_centos_7.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_centos_7.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo yum -y install edb-postgresextended-server edb-postgresextended-contrib +sudo yum -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_10.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_10.mdx index 33db78f670..959593b1c1 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_10.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_10.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-16 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. +## 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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_11.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_11.mdx index c557e2d2b0..189cbcad2f 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_11.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_debian_11.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-16 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 15, the package name would be `edb-postgresextended-15`. +## 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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_8.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_8.mdx index b863505f92..d906afce5f 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_8.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_8.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_9.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_9.mdx index 56a3aba8f2..bafb876251 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_9.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_other_linux_9.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_7.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_7.mdx index 929d3d34f4..056d4b2be4 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_7.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_7.mdx @@ -46,7 +46,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo yum -y install edb-postgresextended-server edb-postgresextended-contrib +sudo yum -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_8.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_8.mdx index a934a41881..546c95cb66 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_8.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_8.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_9.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_9.mdx index dcbd74b2d8..c324e321d6 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_9.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_rhel_9.mdx @@ -40,7 +40,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo dnf -y install edb-postgresextended-server edb-postgresextended-contrib +sudo dnf -y install edb-postgresextended16-server edb-postgresextended16-contrib ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended16-server edb-postgresextended16-contrib. +## Initial configuration + +Getting started with your cluster involves logging in, ensuring the installation and initial configuration 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/edb/pge16/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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_18.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_18.mdx index 050bce1b6a..63c4056cda 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_18.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_18.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-16 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be 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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_20.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_20.mdx index acff9b221d..7f310a7a15 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_20.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_20.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- +sudo apt-get -y install edb-postgresextended-16 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be 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) +``` diff --git a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_22.mdx b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_22.mdx index 3db02a85df..61a6656848 100644 --- a/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_22.mdx +++ b/product_docs/docs/pge/16/installing/linux_x86_64/pge_ubuntu_22.mdx @@ -35,7 +35,90 @@ Before you begin the installation process: ## Install the package ```shell -sudo apt-get -y install edb-postgresextended- edb-postgresextended--contrib +sudo apt-get -y install edb-postgresextended-16 ``` -Where `` is the version of EDB Postgres Extended Server you are installing. For example, if you are installing version 16, the package name would be edb-postgresextended-16 edb-postgresextended-16-contrib. +## 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) +``` diff --git a/src/pages/index.js b/src/pages/index.js index 9d6e1e434f..9d40cf99c4 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -68,24 +68,27 @@ const Page = () => {

- - EDB Postgres Advanced Server 16 released + + EDB Postgres Extended Server Enhanced Installation Details

- The latest version of EDB Postgres Advanced Server brings - together expanded Oracle database compatibility with the - innovations and fixes of PostgreSQL v16.1 + We've expanded installation instructions to cover + post-install configuration, intial exploration, and + component locations for all supported platforms.

Find out more → @@ -107,25 +110,26 @@ const Page = () => {

- Postgres for Kubernetes updates + Lasso 4.12 Released

- EDB Postgres for Kubernetes versions 1.21.1, 1.20.4, 1.19.6, - and 1.18.8 build long-term support and expanded platform - compatibility on the latest versions of CloudNativePG. + Lasso, EDB's support diagnostics tool, has been updated to + version 4.12. Documentation now better covers installation + requirements and provides enhanced clarity what and how can + be collected.

Find out more →