From 6e20fac2f544df2dfc03465ea466f63721f46394 Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 9 Mar 2023 14:42:27 -0500 Subject: [PATCH 01/47] Transporter: alpha docs --- product_docs/docs/transporter/alpha/index.mdx | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 product_docs/docs/transporter/alpha/index.mdx diff --git a/product_docs/docs/transporter/alpha/index.mdx b/product_docs/docs/transporter/alpha/index.mdx new file mode 100644 index 00000000000..29257e4a5ef --- /dev/null +++ b/product_docs/docs/transporter/alpha/index.mdx @@ -0,0 +1,3 @@ +--- +title: Transporter +--- \ No newline at end of file From 9e8289c6f8495c09f0db3576b476c36fca1d17fb Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 9 Mar 2023 16:56:35 -0500 Subject: [PATCH 02/47] adding product to the required files hide version --- build-sources.json | 3 ++- gatsby-config.js | 1 + product_docs/docs/transporter/alpha/index.mdx | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/build-sources.json b/build-sources.json index f63e134e382..8ffa95d84e0 100644 --- a/build-sources.json +++ b/build-sources.json @@ -33,5 +33,6 @@ "slony": true, "tde": true, "tpa": true, - "wait_states": true + "wait_states": true, + "transporter": true } diff --git a/gatsby-config.js b/gatsby-config.js index 3a13673d006..ac8dec99ee7 100644 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -102,6 +102,7 @@ const sourceToPluginConfig = { name: "wait_states", path: "advocacy_docs/pg_extensions/wait_states", }, + transporter: { name: "transporter", path: "product_docs/docs/transporter" }, }; const externalSourcePlugins = () => { diff --git a/product_docs/docs/transporter/alpha/index.mdx b/product_docs/docs/transporter/alpha/index.mdx index 29257e4a5ef..d740d1e899a 100644 --- a/product_docs/docs/transporter/alpha/index.mdx +++ b/product_docs/docs/transporter/alpha/index.mdx @@ -1,3 +1,4 @@ --- title: Transporter +hideVersion: true --- \ No newline at end of file From f3e3a7d439d7b23a35d463a6930fdb1d92ef8f38 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 7 Jun 2023 11:24:53 +0200 Subject: [PATCH 03/47] Add basic text about EDB Transporter --- product_docs/docs/transporter/alpha/index.mdx | 4 ---- product_docs/docs/transporter/preview/index.mdx | 6 ++++++ 2 files changed, 6 insertions(+), 4 deletions(-) delete mode 100644 product_docs/docs/transporter/alpha/index.mdx create mode 100644 product_docs/docs/transporter/preview/index.mdx diff --git a/product_docs/docs/transporter/alpha/index.mdx b/product_docs/docs/transporter/alpha/index.mdx deleted file mode 100644 index d740d1e899a..00000000000 --- a/product_docs/docs/transporter/alpha/index.mdx +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: Transporter -hideVersion: true ---- \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/index.mdx b/product_docs/docs/transporter/preview/index.mdx new file mode 100644 index 00000000000..918152ed3d2 --- /dev/null +++ b/product_docs/docs/transporter/preview/index.mdx @@ -0,0 +1,6 @@ +--- +title: EDB Transporter +hideVersion: true +--- + +EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal or on-premise EPAS/Postgres. From cb85100fcb69bebc5207c2974bd51b0118c6b3da Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 7 Jun 2023 12:10:26 +0200 Subject: [PATCH 04/47] EDB Transporter preview docs --- .../docs/transporter/preview/index.mdx | 14 +- .../transporter/preview/installing/index.mdx | 21 ++ .../preview/installing/installing_debian.mdx | 64 +++++ .../preview/installing/installing_rhel.mdx | 57 ++++ .../preview/preparing_db/index.mdx | 18 ++ .../preparing_oracle_source_databases.mdx | 259 ++++++++++++++++++ .../preparing_postgres_source_databases.mdx | 118 ++++++++ .../preparing_target_databases.mdx | 12 + .../transporter/preview/release_notes.mdx | 15 + .../preview/supported_versions.mdx | 38 +++ .../transporter/preview/usage_overview.mdx | 82 ++++++ src/components/icon/iconNames.js | 1 + src/constants/products.js | 4 + src/pages/index.js | 1 + 14 files changed, 703 insertions(+), 1 deletion(-) create mode 100644 product_docs/docs/transporter/preview/installing/index.mdx create mode 100644 product_docs/docs/transporter/preview/installing/installing_debian.mdx create mode 100644 product_docs/docs/transporter/preview/installing/installing_rhel.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/index.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx create mode 100644 product_docs/docs/transporter/preview/release_notes.mdx create mode 100644 product_docs/docs/transporter/preview/supported_versions.mdx create mode 100644 product_docs/docs/transporter/preview/usage_overview.mdx diff --git a/product_docs/docs/transporter/preview/index.mdx b/product_docs/docs/transporter/preview/index.mdx index 918152ed3d2..63b48ad5e1f 100644 --- a/product_docs/docs/transporter/preview/index.mdx +++ b/product_docs/docs/transporter/preview/index.mdx @@ -1,6 +1,18 @@ --- title: EDB Transporter hideVersion: true +directoryDefaults: + description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." +navigation: + - release_notes + - supported_versions + - installing + - preparing_db + - usage_overview --- -EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal or on-premise EPAS/Postgres. +EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases. + +EDB BigAnimal targets are supported with optional VPC peering for reduced migration cost and improved performance. + +See our [usage overview](usage_overview/#usage_overview) for more information. diff --git a/product_docs/docs/transporter/preview/installing/index.mdx b/product_docs/docs/transporter/preview/installing/index.mdx new file mode 100644 index 00000000000..7e4caa64d60 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/index.mdx @@ -0,0 +1,21 @@ +--- +navTitle: "Installing" +title: "Installing EDB Transporter Software" +hideVersion: true +--- + + + +## Installation Guidance + +- [Installation for Debian and derivatives](installing_debian) +- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) + +## Upgrade Guidance + +Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt in any data migration. +These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter +are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. + +Incompatible upgrades are documented in the [release notes](../release_notes/#release_notes) and can be identified +by major version number increases. diff --git a/product_docs/docs/transporter/preview/installing/installing_debian.mdx b/product_docs/docs/transporter/preview/installing/installing_debian.mdx new file mode 100644 index 00000000000..48f6e6c3646 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/installing_debian.mdx @@ -0,0 +1,64 @@ +--- +title: "Installation for Debian and derivatives" +--- + + + +## Prerequisites / Repository Setup + +Quick Setup: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ + | sudo -E bash +``` + +Specific distribution or architecture: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ + | sudo -E distro=some-distro codename=some-codename arch=some-arch bash +``` + +Install Manually: + +```shell +distro="some-distro" # for example "ubuntu" +codename="some-codename" # for example "xenial" + +apt-get install -y debian-keyring # debian only +apt-get install -y debian-archive-keyring # debian only +apt-get install -y apt-transport-https +# For Debian Stretch, Ubuntu 16.04 and later +keyring_location=/usr/share/keyrings/enterprisedb-dev-archive-keyring.gpg +# For Debian Jessie, Ubuntu 15.10 and earlier +keyring_location=/etc/apt/trusted.gpg.d/enterprisedb-dev.gpg +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' | gpg --dearmor >> ${keyring_location} +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.txt?distro=${distro}&codename=${codename}' > /etc/apt/sources.list.d/enterprisedb-dev.list +apt-get update +``` + +How to remove the repository: + +```shell +rm /etc/apt/sources.list.d/enterprisedb-dev.list +apt-get clean +rm -rf /var/lib/apt/lists/* +apt-get update +``` + +## Installation + +CDCReader: + +```shell +sudo apt-get install cdcreader=1.4-1.4766136665.17.1.jammy +``` + +CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/preview/installing/installing_rhel.mdx new file mode 100644 index 00000000000..324f11c49b8 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/installing_rhel.mdx @@ -0,0 +1,57 @@ +--- +title: "Installation for Red Hat Enterprise Linux (RHEL) and derivatives" +--- + + + +## Prerequisites / Repository Setup + +Quick setup: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ + | sudo -E bash +``` + +Specific distribution or architecture: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ + | sudo -E distro=some-distro codename=some-codename arch=some-arch bash +``` + +Install Manually: + +```shell +distro="some-distro" # for example "el" +codename="some-codename" # for example "8" + +yum install yum-utils pygpgme +rpm --import 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.rpm.txt?distro=${distro}&codename=${codename}' > /tmp/enterprisedb-dev.repo +yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' +yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' +``` + +How to remove the repository: + +```shell +rm /etc/yum.repos.d/enterprisedb-dev.repo +rm /etc/yum.repos.d/enterprisedb-dev-source.repo +``` + +## Installation + +CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/preparing_db/index.mdx b/product_docs/docs/transporter/preview/preparing_db/index.mdx new file mode 100644 index 00000000000..8ca92c4a60e --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/index.mdx @@ -0,0 +1,18 @@ +--- +title: "Preparing Databases" +hideVersion: true + +navigation: + - preparing_oracle_source_databases + - preparing_postgres_source_databases + - preparing_target_databases +--- + +Select a link to access the applicable preparing instructions: + +## Source Databases +#### [Oracle](preparing_oracle_source_databases) +#### [Postgres](preparing_postgres_source_databases) + +## [Target Databases](preparing_target_databases) + diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx new file mode 100644 index 00000000000..59443b57145 --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx @@ -0,0 +1,259 @@ +--- +title: "Preparing Oracle Source Databases" +--- + + + +Configuring Oracle for EDB Transporter migrations requires a user with `sysdba` privileges. + +An Oracle source database should be configured to enable archive log mode, enable supplemental logging for the database and table columns of interest, +ensure adequate redo log space is available, and to create a user with limited privileges to carry out the data migration. + +SQL statements in this guidance should be executed with `sqlplus` or a similar client. + +``` +# You will be prompted for the password for $ORA_USER +sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba +``` + +Reference: + - `$ORA_HOST`: The Oracle DB hostname + - `$ORA_PORT`: The Oracle DB port + - `$ORA_SID`: The Oracle System ID for the DB or CDB/PDB combination + - `$ORA_USER`: An Oracle DB username capable of using `sysdba` privileges + +## Oracle Configuration + +### 1. Enable Archive Log mode + +Oracle Database can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVELOG` mode, filled redo logs are archived rather than put back into log rotation to be overwritten. This is necessary for the Change-Data-Capture (CDC) process to use LogMiner and produce a complete history of changes after an initial consistent snapshot. + +To see which mode a database is in, use the following command: + +``` +archive log list; +``` + +The returned content will indicate which mode the database is in. + +``` +Database log mode Archive Mode +...or +Database log mode No Archive Mode +``` + +If `ARCHIVELOG` mode is enabled, confirm the size of your recovery file destination is appropriate +for your workload with your DBA. If archive logging is not enabled follow the guidance below. + +It's necessary to enable a fast recovery area when enabling archive log mode. For more information on enabling an Oracle fast recovery area, see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F). + +Below, values to be specified by the user are represented in a `$FOO` naming format. + +``` +ORACLE_SID=$YOUR_SID sqlplus /nolog + +CONNECT $SYSDBA_USER/$SYSDBA_USER_PWD AS SYSDBA +alter system set db_recovery_file_dest_size = $RECOVERY_FILE_DEST_SIZE; +alter system set db_recovery_file_dest = '$RECOVERY_FILE_DEST' scope=spfile; +shutdown immediate +startup mount +alter database archivelog; +alter database open; +archive log list; +exit; +``` + +The `archive log list` output should indicate the database is now in archive log mode. + +Reference: + - `$YOUR_SID`: The Oracle DB System ID + - `$SYSDBA_USER`: The name of a user with `sysdba` privileges + - `$SYSDBA_USER_PWD`: The password for `$SYSDBA_USER` + - `$RECOVERY_FILE_DEST_SIZE`: The size allowed for the recovery behavior + - e.g. `100G` for 100 GigaBytes + - `$RECOVERY_FILE_DEST`: The filesystem path for an Oracle fast recovery area + - This may be a directory, filesystem, or Oracle Automatic Storage Management; consult your DB admins + +### 2. Enable Database Supplemental Logging + +Supplemental logging refers to the capture of additional information, such as "before" state, in Oracle redo logs. This extra redo log information is necessary for some log-based applications, such as EDB Transporter, to capture change events. Please see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) for additional information. + +Supplemental logging can be enabled at the database and table level. The following command will enable minimal supplemental logging at the database level required for LogMiner to function. + +``` +ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; +``` + +### 3. Enable Supplemental Logging for Table Columns + +For every table we'd like to migrate we must enable supplemental logging. To do +so for all columns in a table the following statement can be applied: + +``` +ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; +``` + +`ALTER` all table-columns desired for migration. + +Reference: + - `$TABLE`: The identifier for the table to be migrated + +### 4. Verify Redo Logs for Adequate Count / Size + +EDB Transporter's migration process involves two phases -- the first is a consistent snapshot and the second is continuous streaming of database changes. This stream of database changes is powered by LogMiner and the Oracle DB redo logs. + +Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Additionally, undersized logs will cause frequent log switching and impact migration performance. + +The following commands can be used to examine the state of the database redo logs. +``` +SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; + + GROUP# TYPE MEMBER +---------- ------- -------------------------------------------------- + 1 ONLINE /opt/oracle/oradata/ORCLCDB/redo03.log + 2 ONLINE /opt/oracle/oradata/ORCLCDB/redo01.log + 3 ONLINE /opt/oracle/oradata/ORCLCDB/redo04.log + +SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; + + GROUP# ARC MB STATUS +---------- --- --- ---------------- + 1 YES 2000 INACTIVE + 3 YES 2000 INACTIVE + 3 NO 2000 CURRENT +``` + +In the above example we see three log groups, each with one file-member, of size 2000 MegaBytes. This may be too +small for many production databases. The redo logs can be safely adjusted with synchronous commands as in the following +statements: + +``` + ALTER DATABASE ADD LOGFILE GROUP 4 ('/opt/oracle/oradata/ORCLCDB/redo04.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 5 ('/opt/oracle/oradata/ORCLCDB/redo05.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 6 ('/opt/oracle/oradata/ORCLCDB/redo06.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 7 ('/opt/oracle/oradata/ORCLCDB/redo07.log') SIZE 8G; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER DATABASE DROP LOGFILE GROUP 1; + ALTER DATABASE DROP LOGFILE GROUP 2; + ALTER DATABASE DROP LOGFILE GROUP 3; +``` + +This would result in four new 8 GigaByte log groups, each group having a single log file. + +Consult with your DBA for appropriate production sizing. + +### 5. Create a User with Limited Privileges for Data Migration + +#### Tablespace Preparation + +It's necessary to provide a database user with adquate roles to carry out the change-data-capture (CDC) process. + +First, it's recommended to create a tablespace for the CDC user. For container databases we'll need to create a pluggable database as well. + +The following statements are examples of creating a tablespace and datafiles for CDC migration. Your database settings may vary but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size will result in a maximum of 32GB +of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, it may be necessary to add multiple `AUTOEXTEND` datafiles +when this limit may be exceeded. + +``` +-- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace +CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; + +-- For CDB/PDB deployments we must specify at least one tablespace datafile for the PDB +CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1/logminer_tbs_1.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +-- Additional data files can be added with as follows +ALTER TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +``` + +Reference: + - `$TABLESPACE_NAME`: The tablespace name to be used by the CDC migration user + +#### User Creation and Access Grants + +With the tablespace files in place a user can be created with appropriate access grants +for CDC migration. + +For a CDB/PDB database setup, note the tablespace default and quota: +``` + CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD + DEFAULT TABLESPACE $TABLESPACE_NAME + QUOTA UNLIMITED ON $TABLESPACE_NAME + CONTAINER=ALL; + GRANT CREATE SESSION TO $MIGRATION_USER CONTAINER=ALL; + GRANT SET CONTAINER TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER CONTAINER=ALL; + GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER CONTAINER=ALL; + GRANT LOGMINING TO $MIGRATION_USER CONTAINER=ALL; + GRANT CREATE TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT LOCK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT CREATE SEQUENCE TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; +``` + +For a non-CDB database: + +``` + CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD + DEFAULT TABLESPACE $TABLESPACE_NAME + QUOTA UNLIMITED ON $TABLESPACE_NAME; + GRANT CREATE SESSION TO $MIGRATION_USER; + GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER; + GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER; + GRANT SELECT ANY TABLE TO $MIGRATION_USER; + GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER; + GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER; + GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER; + GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER; + GRANT LOGMINING TO $MIGRATION_USER; + GRANT CREATE TABLE TO $MIGRATION_USER; + GRANT LOCK ANY TABLE TO $MIGRATION_USER; + GRANT CREATE SEQUENCE TO $MIGRATION_USER; + GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER; + GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER; + GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER; + GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER; +``` + +Reference: + - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access + - `$MIGRATION_USER_PASSWORD`: The password for the migration user + - `$TABLESPACE_NAME`: The tablespace for `$MIGRATION_USER` + +### 3. Grant `SELECT` on Source Tables + +The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support +granting access to an entire schema so this needs to be done table-by-table. + +``` +GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER +``` + +Reference: + - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access + - `$TABLE_NAME`: The name of an individual table to be migrated + +## More Information + + After completing the preparation outlined in this guide your database is ready for CDC migration. + + For additional information, feel free to reference the [Debezium Oracle Connector](https://debezium.io/documentation/reference/2.2/index.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx new file mode 100644 index 00000000000..dbb1b745c33 --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx @@ -0,0 +1,118 @@ +--- +title: "Preparing Postgres Source Databases" +--- + + + +Configuring Postgres for EDB Transporter requires administrative privileges. A CDC migration role with limited privileges +is created for data migration. + +SQL statements in this guidance should be executed with `psql` or a similar client. + +``` +# You will be promted for the password associated with `PG_USERNAME` +psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME +``` + +Reference: + - `PG_DB_NAME`: The name of the Postgres database to connect to + - `PG_HOST`: The Postgres database host + - `PG_PORT`: The Postgres database port + - `PG_USERNAME`: An administrative user capable of creating roles, granting roles, altering ownership of tables-to-migrate, and creating a replication slot + +## Postgres Configuration + +### 1. Verify Postgres Configuration + +A few configuration entries for Postgres should be verified or set. + +1. Ensure the `wal_level` is configured as `logical`. + +The CDC migration process leverages Postgres logical decoding. Setting this to `logical` enables logical decoding of the Postgres Write-Ahead-Log (WAL). + +2. Ensure `max_wal_senders` configured appropriately + +`max_wal_senders` should be set to at least `1` if EDB Transporter migration is the first streaming +client for your database. Other streaming clients may be present and you should consult your DBA +for the appropriate value for streaming client connectivity. + +3. Ensure `max_replication_slots` configured appropriately + +`max_replication_slots` must be at least `1` for the CDC migration process. This value may be +higher if your organization makes use of Postgres replication capabilities. + +Please see the [Postgres replication documentation](https://www.postgresql.org/docs/current/runtime-config-replication.html) +for more information. + +4. Ensure `max_wal_size` configured to ensure adequate WAL LSN lifetime + +The `max_wal_size` value should be large enough that production traffic is generating +mostly timed-checkpoints and not requested-checkpoints based on WAL size. + +Additionally, the streaming migration process requires changes to be available in the WAL until +they can be streamed to durable message storage in EDB Transporter's cloud infrastructure. Setting +`max_wal_size` too small can not only impact performance but interfere with the migration process by allowing +Postgres LSNs to be dropped from the WAL before they can be streamed. + +Please see this [EDB blog post on tuning](https://www.enterprisedb.com/blog/tuning-maxwalsize-postgresql) `max_wal_size`. + +Please see the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html) +for more information. + +### 2. Create New Roles and Grant Acccess for CDC Migration + +First create a new role for CDC Migration with the `LOGIN` and `REPLICATION` abilities granted. + +``` +CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; +``` + +`$MIGRATION_ROLE` needs to own the source tables in order to autocreate Postgres Publications. Because the source tables are already owned by another role, we create a role / user which can act as the new owner and grant this "replication group" role to +both the current table owner and also to `$MIGRATION_ROLE`. + +``` +CREATE ROLE $REPLICATION_GROUP; +GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; +GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; +ALTER TABLE $TABLE_NAME OWNER TO $REPLICATION_GROUP +``` +Reference: + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `$ORIGINAL_OWNER`: The original production owner of the table + - `$REPLICATION_GROUP`: The name of a role used to own the source tables to be migrated -- for Publication autocreation + +### 3. Grant `SELECT` on Source Tables to the CDC Migration Role + +The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. Access can be granted across a schema +or on a table-by-table basis. + +``` +-- For an entire schema's tables +ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE + +-- Table by table +GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE +``` + +Reference: + - `$DB_SCHEMA`: The database schema name for the tables to be migrated + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `$TABLE_NAME`: The name of an individual table to be migrated + +### 4. Create a Logical Replication Slot + +The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source we'll need to create a replication slot for our CDC migration role. + +``` +PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); +``` + +Reference: + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `pgoutput`: The logical decoding plugin used by EDB Transporter, supplied by Postgres. + +## More Information + + After completing the preparation outlined in this guide your database is ready for CDC migration. + + For additional information, feel free to reference the [Debezium Postgres Connector](https://debezium.io/documentation/reference/stable/connectors/postgresql.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx new file mode 100644 index 00000000000..d818c7255df --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx @@ -0,0 +1,12 @@ +--- +title: "Preparing Target Databases" +--- + + + +Migration data is written to the target database over a normal JDBC connection. It's expected that a database user is available with permissions to write to target tables. + +The target database schema must exist prior to starting the data migration. +EDB Transporter provides a fault-tolerant method for migrating Change-Data-Capture (CDC) events to the target. If a CDC event doesn't match the target schema CDCWriter will stop writing data to the target until the schema mismatched is resolved. + +Target tables should be empty. If a target table has rows, such as from testing, these should be removed e.g. with `TRUNCATE`. \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/release_notes.mdx b/product_docs/docs/transporter/preview/release_notes.mdx new file mode 100644 index 00000000000..d36d0da0b58 --- /dev/null +++ b/product_docs/docs/transporter/preview/release_notes.mdx @@ -0,0 +1,15 @@ +--- +title: "Release Notes" +--- + + + +# Version 2.0.0 + +New features, enhancements, bug fixes, and other changes in EDB Transporter 2.0.0 include: + +| Type | Description | +|---------------|-----------------------------------------------------------------------------------------------| +| Major Release | Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing | +| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | +| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | diff --git a/product_docs/docs/transporter/preview/supported_versions.mdx b/product_docs/docs/transporter/preview/supported_versions.mdx new file mode 100644 index 00000000000..eb86deb0356 --- /dev/null +++ b/product_docs/docs/transporter/preview/supported_versions.mdx @@ -0,0 +1,38 @@ +--- +title: "Product compatibility" +--- + + + +Supported Database and Operating System Versions +-- +Database Versions +--- +The following database versions are supported -- please see additional notes in later sections. + +| Database Version | Supported | Notes | +|------------------|-----------|-------| +| Postgres 11 - 15 | Y | | +| EPAS 11 - 15 | Y | | +| Oracle 11g | Y | | +| Oracle 12c | Y | | +| Oracle 18c | Y | | +| Oracle 19c | Y | | +| Oracle 21c | Y | | + +Oracle +---- +The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. Please see +our [Oracle source configuration guidance](preparing_oracle_source_databases/#preparing_oracle_source_databases). + +Both Container Databases (CDB/PDB) and non-CDB sources are supported. + +Postgres / EPAS +---- +Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_postgres_source_databases/#preparing_postgres_source_databases). + +When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_target_databases/#preparing_target_databases). + +Operating Systems +--- +EDB Transporter's customer-side software can be run on Linux and Mac OS systems. The source/target database may be run on any system including Windows. diff --git a/product_docs/docs/transporter/preview/usage_overview.mdx b/product_docs/docs/transporter/preview/usage_overview.mdx new file mode 100644 index 00000000000..5e4e06769b1 --- /dev/null +++ b/product_docs/docs/transporter/preview/usage_overview.mdx @@ -0,0 +1,82 @@ +--- +title: "Usage Overview" +--- + + + +The EDB Transporter migration lifecycle is as follows: + - Ensure schema compatibility + - Prepare source and target databases + - Install and run customer-side EDB Transporter software + - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) + - EDB staff deploys cloud infrastructure (control components and a message bus) + - EDB staff initiate and manage the data migration until completion + - Integrity validation and post-migration checks are performed + - Customer-side software can be stopped and removed + - Cloud infrastructure is deprovisioned by EDB staff + +Schema Compatibility +--- + +Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) +prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. +A limited number of Oracle data types and features are not supported by EDB Transporter. + +Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed +comments on supported data types. Unsupported data types are briefly detailed below. + +Unsupported Oracle Data Type +--- + - BFILE + - LONG + - LONG RAW + - RAW + - UROWID + - User-defined types (REF, Varrays, Nested Tables) + - ANY + - XML + - Spatial + +EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. + +Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. + + +Source and Target DB Preparation +--- +See our guides on preparing [Oracle sources](preparing_oracle_source_databases/#preparing_oracle_sources), +[Postgres sources](preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_target_databases/#preparing_target_databases). + +Installing and Configuring EDB Transporter Software +--- +See our guide on [installing and configuring](installing_customer_side_software/#installing_customer_side_software) EDB Transporter software. +EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). + +Migrating Data +--- +Migration Creation and Status +---- +Source and target database schema are used to specify data to migrate along with +configurabilty for performance or e.g. excluding source data. + +Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to +execute Change-Data-Capture (CDC) event streaming from source to target database. An initial +snapshot occurs followed by a transition to the streaming phase of CDC event production. + +Managing Ongoing Migrations +---- +EDB can work with customers and manage in-progress migrations in order to: + - Exclude problematic source data + - Pause and resume migrations + - Optimize migration performance + +Several indepedent migrations can be configured and managed using the same CDCReader, CDCWriter, +and EDB-managed cloud EDB Transporter components. + +Migration Completion and Removal +---- +To complete the migration, source database traffic should be stopped and streaming migration +allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. +Target database integrity can be validated and application cutover to the target performed. + +After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. diff --git a/src/components/icon/iconNames.js b/src/components/icon/iconNames.js index 6c216ce9dcf..861ced8f4c0 100644 --- a/src/components/icon/iconNames.js +++ b/src/components/icon/iconNames.js @@ -279,5 +279,6 @@ const iconNames = { NOT_FOUND: "color/NotFound", SERVER_ERROR: "color/ServerError", SUN: "color/Sun", + EDB_TRANSPORTER: "Migration", }; export default iconNames; diff --git a/src/constants/products.js b/src/constants/products.js index d5f943834f5..53ff93bf749 100644 --- a/src/constants/products.js +++ b/src/constants/products.js @@ -79,4 +79,8 @@ export const products = { tde: { name: "Transparent Data Encryption", iconName: IconNames.SECURITY }, tpa: { name: "Trusted Postgres Architect", iconName: IconNames.INSTANCES }, wait_states: { name: "EDB Wait States", iconName: IconNames.POSTGRESQL }, + transporter: { + name: "EDB Transporter", + iconName: IconNames.EDB_TRANSPORTER, + }, }; diff --git a/src/pages/index.js b/src/pages/index.js index 2efd46d417f..b1c1679541c 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -325,6 +325,7 @@ const Page = () => ( Migration Toolkit Replication Server + EDB Transporter Date: Tue, 13 Jun 2023 14:24:40 -0400 Subject: [PATCH 05/47] Add docs for transporter db config validation scripts --- .../preparing_oracle_source_databases.mdx | 11 ++++++++++- .../preparing_postgres_source_databases.mdx | 9 +++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx index 59443b57145..2cb19a9f4fc 100644 --- a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx @@ -239,7 +239,7 @@ Reference: - `$MIGRATION_USER_PASSWORD`: The password for the migration user - `$TABLESPACE_NAME`: The tablespace for `$MIGRATION_USER` -### 3. Grant `SELECT` on Source Tables +### 6. Grant `SELECT` on Source Tables The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support granting access to an entire schema so this needs to be done table-by-table. @@ -252,6 +252,15 @@ Reference: - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access - `$TABLE_NAME`: The name of an individual table to be migrated +### 7. Validate Configuration + +CDCReader installation comes with a helper script that will validate the Oracle configuration and help you identify any issues. Once you have configured the database, it is recommended to run the script and ensure all checks are passed. + +``` +# Run the script without arguments to print the usage. +/opt/cdcreader/oracleConfigValidation.sh +``` + ## More Information After completing the preparation outlined in this guide your database is ready for CDC migration. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx index dbb1b745c33..97bd8d1f62f 100644 --- a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx @@ -59,6 +59,15 @@ Please see this [EDB blog post on tuning](https://www.enterprisedb.com/blog/tuni Please see the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html) for more information. +#### Config Validation Script + +CDCReader installation comes with a helper script that will validate the Postgres configuration and help you identify any issues. Once you have configured the database, it is recommended to run the script and ensure all checks are passed. + +``` +# Run the script without arguments to print the usage. +/opt/cdcreader/postgresConfigValidation.sh +``` + ### 2. Create New Roles and Grant Acccess for CDC Migration First create a new role for CDC Migration with the `LOGIN` and `REPLICATION` abilities granted. From d8c01055a727ae478c876a5f187023d0619f7607 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 14 Jun 2023 10:28:18 +0200 Subject: [PATCH 06/47] EDB Transporter preview docs --- .../docs/transporter/2_preview/index.mdx | 34 ++++++++ .../2_preview/installing/index.mdx | 11 +++ .../installing/installing_debian.mdx | 0 .../installing/installing_rhel.mdx | 0 .../transporter/2_preview/known_issues.mdx | 6 ++ .../transporter/2_preview/limitations.mdx | 23 ++++++ .../transporter/2_preview/migrating_data.mdx | 26 ++++++ .../preparing_db/index.mdx | 1 - .../preparing_oracle_source_databases.mdx | 0 .../preparing_postgres_source_databases.mdx | 0 .../preparing_target_databases.mdx | 0 .../transporter/2_preview/quick_start.mdx | 28 +++++++ .../transporter/2_preview/rel_notes/index.mdx | 17 ++++ .../rel_notes/rel_notes_2.0.0_preview.mdx | 14 ++++ .../supported_versions.mdx | 41 ++++------ .../transporter/2_preview/terminology.mdx | 21 +++++ .../index.mdx => 2_preview/upgrading.mdx} | 15 +--- .../docs/transporter/preview/index.mdx | 18 ---- .../transporter/preview/release_notes.mdx | 15 ---- .../transporter/preview/usage_overview.mdx | 82 ------------------- 20 files changed, 200 insertions(+), 152 deletions(-) create mode 100644 product_docs/docs/transporter/2_preview/index.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/index.mdx rename product_docs/docs/transporter/{preview => 2_preview}/installing/installing_debian.mdx (100%) rename product_docs/docs/transporter/{preview => 2_preview}/installing/installing_rhel.mdx (100%) create mode 100644 product_docs/docs/transporter/2_preview/known_issues.mdx create mode 100644 product_docs/docs/transporter/2_preview/limitations.mdx create mode 100644 product_docs/docs/transporter/2_preview/migrating_data.mdx rename product_docs/docs/transporter/{preview => 2_preview}/preparing_db/index.mdx (95%) rename product_docs/docs/transporter/{preview => 2_preview}/preparing_db/preparing_oracle_source_databases.mdx (100%) rename product_docs/docs/transporter/{preview => 2_preview}/preparing_db/preparing_postgres_source_databases.mdx (100%) rename product_docs/docs/transporter/{preview => 2_preview}/preparing_db/preparing_target_databases.mdx (100%) create mode 100644 product_docs/docs/transporter/2_preview/quick_start.mdx create mode 100644 product_docs/docs/transporter/2_preview/rel_notes/index.mdx create mode 100644 product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx rename product_docs/docs/transporter/{preview => 2_preview}/supported_versions.mdx (51%) create mode 100644 product_docs/docs/transporter/2_preview/terminology.mdx rename product_docs/docs/transporter/{preview/installing/index.mdx => 2_preview/upgrading.mdx} (51%) delete mode 100644 product_docs/docs/transporter/preview/index.mdx delete mode 100644 product_docs/docs/transporter/preview/release_notes.mdx delete mode 100644 product_docs/docs/transporter/preview/usage_overview.mdx diff --git a/product_docs/docs/transporter/2_preview/index.mdx b/product_docs/docs/transporter/2_preview/index.mdx new file mode 100644 index 00000000000..c36d0a3acec --- /dev/null +++ b/product_docs/docs/transporter/2_preview/index.mdx @@ -0,0 +1,34 @@ +--- +title: EDB Transporter +directoryDefaults: + description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." +navigation: + - rel_notes + - known_issues + - quick_start + - "#Concepts" + - terminology + - usage_overview + - "#Planning" + - supported_versions + - limitations + - "#Installing" + - installing + - upgrading + - "#Using" + - preparing_db + - migrating_data +--- + +EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique +known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them +to a destination database, reshaping the data to the schema of the destination database in the process. + +By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting and importing +that came with traditional migration. + +EDB Transporter is built on Kafka, a data-streaming technology, and Debezium, which uses that technology to move captured data between databases. + +Where the source or destination database is on-premises or in a private cloud, then EDB Transporter’s CDCReader or CDCWriter need to be installed. +This will enable you and EDB’s team to plan and start your migration. + diff --git a/product_docs/docs/transporter/2_preview/installing/index.mdx b/product_docs/docs/transporter/2_preview/installing/index.mdx new file mode 100644 index 00000000000..c43e42949b3 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/index.mdx @@ -0,0 +1,11 @@ +--- +navTitle: "Installing" +title: "Installing EDB Transporter Software" +--- + + + +## Installation Guidance + +- [Installation for Debian and derivatives](installing_debian) +- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) diff --git a/product_docs/docs/transporter/preview/installing/installing_debian.mdx b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx similarity index 100% rename from product_docs/docs/transporter/preview/installing/installing_debian.mdx rename to product_docs/docs/transporter/2_preview/installing/installing_debian.mdx diff --git a/product_docs/docs/transporter/preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx similarity index 100% rename from product_docs/docs/transporter/preview/installing/installing_rhel.mdx rename to product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx diff --git a/product_docs/docs/transporter/2_preview/known_issues.mdx b/product_docs/docs/transporter/2_preview/known_issues.mdx new file mode 100644 index 00000000000..55cf70adfb2 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/known_issues.mdx @@ -0,0 +1,6 @@ +--- +title: "Known issues" +--- +This section discusses currently known issues in EDB Transporter. These known issues are expected to be resolved in a future release. + +- None known issues at this moment. diff --git a/product_docs/docs/transporter/2_preview/limitations.mdx b/product_docs/docs/transporter/2_preview/limitations.mdx new file mode 100644 index 00000000000..236500d1457 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/limitations.mdx @@ -0,0 +1,23 @@ +--- +title: "Limitations" +--- + +A limited number of Oracle data types and features are not supported by EDB Transporter. + +Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed +comments on supported data types. Unsupported data types are briefly detailed below. + +#### Unsupported Oracle Data Type + - BFILE + - LONG + - LONG RAW + - RAW + - UROWID + - User-defined types (REF, Varrays, Nested Tables) + - ANY + - XML + - Spatial + +EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. + +Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. diff --git a/product_docs/docs/transporter/2_preview/migrating_data.mdx b/product_docs/docs/transporter/2_preview/migrating_data.mdx new file mode 100644 index 00000000000..64dc2fba897 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/migrating_data.mdx @@ -0,0 +1,26 @@ +--- +title: "Migrating Data" +--- +### Migration Creation and Status +Source and target database schema are used to specify data to migrate along with +configurability for performance or e.g. excluding source data. + +Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to +execute Change-Data-Capture (CDC) event streaming from source to target database. An initial +snapshot occurs followed by a transition to the streaming phase of CDC event production. + +### Managing Ongoing Migrations +EDB can work with customers and manage in-progress migrations in order to: + - Exclude problematic source data + - Pause and resume migrations + - Optimize migration performance + +Several independent migrations can be configured and managed using the same CDCReader, CDCWriter, +and EDB-managed cloud EDB Transporter components. + +### Migration Completion and Removal +To complete the migration, source database traffic should be stopped and streaming migration +allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. +Target database integrity can be validated and application cutover to the target performed. + +After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. diff --git a/product_docs/docs/transporter/preview/preparing_db/index.mdx b/product_docs/docs/transporter/2_preview/preparing_db/index.mdx similarity index 95% rename from product_docs/docs/transporter/preview/preparing_db/index.mdx rename to product_docs/docs/transporter/2_preview/preparing_db/index.mdx index 8ca92c4a60e..ac07197633b 100644 --- a/product_docs/docs/transporter/preview/preparing_db/index.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/index.mdx @@ -1,6 +1,5 @@ --- title: "Preparing Databases" -hideVersion: true navigation: - preparing_oracle_source_databases diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx similarity index 100% rename from product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx rename to product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx similarity index 100% rename from product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx rename to product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx similarity index 100% rename from product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx rename to product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx diff --git a/product_docs/docs/transporter/2_preview/quick_start.mdx b/product_docs/docs/transporter/2_preview/quick_start.mdx new file mode 100644 index 00000000000..deb08e99e50 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/quick_start.mdx @@ -0,0 +1,28 @@ +--- +title: "Quick start" +--- + +The EDB Transporter migration lifecycle is as follows: + - Ensure schema compatibility + - Prepare source and target databases + - Install and run customer-side EDB Transporter software + - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) + - EDB staff deploys cloud infrastructure (control components and a message bus) + - EDB staff initiate and manage the data migration until completion + - Integrity validation and post-migration checks are performed + - Customer-side software can be stopped and removed + - Cloud infrastructure is deprovisioned by EDB staff + + +### Schema Compatibility + +Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) +prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. + +### Source and Target DB Preparation +See our guides on preparing [Oracle sources](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources), +[Postgres sources](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_db/preparing_target_databases/#preparing_target_databases). + +### Installing and Configuring EDB Transporter Software +See our guide on [installing and configuring](installing) EDB Transporter software. +EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). diff --git a/product_docs/docs/transporter/2_preview/rel_notes/index.mdx b/product_docs/docs/transporter/2_preview/rel_notes/index.mdx new file mode 100644 index 00000000000..eb14c89f08f --- /dev/null +++ b/product_docs/docs/transporter/2_preview/rel_notes/index.mdx @@ -0,0 +1,17 @@ +--- +title: "EDB Transporter Release notes" +navTitle: "Release notes" +navigation: +- rel_notes_2.0.0_preview +--- + +The EDB Transporter documentation describes the latest version of EDB +Transporter 2, including minor releases and patches. The release notes +provide information on what was new in each release. For new functionality +introduced in a minor or patch release, the content also indicates the release +that introduced the feature. + +| Release Date | EDB Postgres Distributed | +|--------------|------------------------------------------| +| 2023 Jun 9 | [2.0.0_preview](rel_notes_2.0.0_preview) | + diff --git a/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx b/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx new file mode 100644 index 00000000000..353c039ff38 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx @@ -0,0 +1,14 @@ +--- +title: "Release notes for EDB Transporter version 2.0.0_preview" +navTitle: "Version 2.0.0_preview" +--- + +EDB Transporter version 2.0.0_preview is a new major version of EDB Transporter. + +The highlights of this release include: + * Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing + +| Type | Description | +|-------------|------------------------------------------------------------------------------------------| +| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | +| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | diff --git a/product_docs/docs/transporter/preview/supported_versions.mdx b/product_docs/docs/transporter/2_preview/supported_versions.mdx similarity index 51% rename from product_docs/docs/transporter/preview/supported_versions.mdx rename to product_docs/docs/transporter/2_preview/supported_versions.mdx index eb86deb0356..c18ec2b67a8 100644 --- a/product_docs/docs/transporter/preview/supported_versions.mdx +++ b/product_docs/docs/transporter/2_preview/supported_versions.mdx @@ -4,35 +4,30 @@ title: "Product compatibility" -Supported Database and Operating System Versions --- -Database Versions ---- +## Database Versions + The following database versions are supported -- please see additional notes in later sections. -| Database Version | Supported | Notes | -|------------------|-----------|-------| -| Postgres 11 - 15 | Y | | -| EPAS 11 - 15 | Y | | -| Oracle 11g | Y | | -| Oracle 12c | Y | | -| Oracle 18c | Y | | -| Oracle 19c | Y | | -| Oracle 21c | Y | | - -Oracle ----- +| Database Version | Supported | +|------------------|-----------| +| Postgres 11 - 15 | Y | +| EPAS 11 - 15 | Y | +| Oracle 11g | Y | +| Oracle 12c | Y | +| Oracle 18c | Y | +| Oracle 19c | Y | +| Oracle 21c | Y | + +### Oracle The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. Please see -our [Oracle source configuration guidance](preparing_oracle_source_databases/#preparing_oracle_source_databases). +our [Oracle source configuration guidance](preparing_db/preparing_oracle_source_databases/#preparing_oracle_source_databases). Both Container Databases (CDB/PDB) and non-CDB sources are supported. -Postgres / EPAS ----- -Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_postgres_source_databases/#preparing_postgres_source_databases). +### Postgres / EPAS +Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_db/preparing_postgres_source_databases/#preparing_postgres_source_databases). -When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_target_databases/#preparing_target_databases). +When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_db/preparing_target_databases/#preparing_target_databases). -Operating Systems ---- +## Operating Systems EDB Transporter's customer-side software can be run on Linux and Mac OS systems. The source/target database may be run on any system including Windows. diff --git a/product_docs/docs/transporter/2_preview/terminology.mdx b/product_docs/docs/transporter/2_preview/terminology.mdx new file mode 100644 index 00000000000..f6490fe1c54 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/terminology.mdx @@ -0,0 +1,21 @@ +--- +title: "Terminology" +--- +The terminology that follows is important for understanding EDB Transporter functionality. + +#### Kafka +Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, +streaming analytics, data integration, and mission-critical applications. + +#### CDC +CDC is a set of software design patterns used to determine and track the data that has changed (the "deltas") so that action can be taken +using the changed data. + +#### Debezium +Debezium is an open source distributed platform for change data capture. + +#### CDCReader +Uses Debezium to performing CDC on the source DB and producing Kafka messages containing the change events. + +#### CDCWriter +Consumes CDC event messages from Kafka and writes them to the replication's Target Database. diff --git a/product_docs/docs/transporter/preview/installing/index.mdx b/product_docs/docs/transporter/2_preview/upgrading.mdx similarity index 51% rename from product_docs/docs/transporter/preview/installing/index.mdx rename to product_docs/docs/transporter/2_preview/upgrading.mdx index 7e4caa64d60..2a3c75d1038 100644 --- a/product_docs/docs/transporter/preview/installing/index.mdx +++ b/product_docs/docs/transporter/2_preview/upgrading.mdx @@ -1,21 +1,10 @@ --- -navTitle: "Installing" -title: "Installing EDB Transporter Software" -hideVersion: true +title: "Upgrading" --- - - -## Installation Guidance - -- [Installation for Debian and derivatives](installing_debian) -- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) - -## Upgrade Guidance - Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt in any data migration. These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. -Incompatible upgrades are documented in the [release notes](../release_notes/#release_notes) and can be identified +Incompatible upgrades are documented in the [release notes](../rel_notes) and can be identified by major version number increases. diff --git a/product_docs/docs/transporter/preview/index.mdx b/product_docs/docs/transporter/preview/index.mdx deleted file mode 100644 index 63b48ad5e1f..00000000000 --- a/product_docs/docs/transporter/preview/index.mdx +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: EDB Transporter -hideVersion: true -directoryDefaults: - description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." -navigation: - - release_notes - - supported_versions - - installing - - preparing_db - - usage_overview ---- - -EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases. - -EDB BigAnimal targets are supported with optional VPC peering for reduced migration cost and improved performance. - -See our [usage overview](usage_overview/#usage_overview) for more information. diff --git a/product_docs/docs/transporter/preview/release_notes.mdx b/product_docs/docs/transporter/preview/release_notes.mdx deleted file mode 100644 index d36d0da0b58..00000000000 --- a/product_docs/docs/transporter/preview/release_notes.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Release Notes" ---- - - - -# Version 2.0.0 - -New features, enhancements, bug fixes, and other changes in EDB Transporter 2.0.0 include: - -| Type | Description | -|---------------|-----------------------------------------------------------------------------------------------| -| Major Release | Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing | -| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | -| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | diff --git a/product_docs/docs/transporter/preview/usage_overview.mdx b/product_docs/docs/transporter/preview/usage_overview.mdx deleted file mode 100644 index 5e4e06769b1..00000000000 --- a/product_docs/docs/transporter/preview/usage_overview.mdx +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: "Usage Overview" ---- - - - -The EDB Transporter migration lifecycle is as follows: - - Ensure schema compatibility - - Prepare source and target databases - - Install and run customer-side EDB Transporter software - - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) - - EDB staff deploys cloud infrastructure (control components and a message bus) - - EDB staff initiate and manage the data migration until completion - - Integrity validation and post-migration checks are performed - - Customer-side software can be stopped and removed - - Cloud infrastructure is deprovisioned by EDB staff - -Schema Compatibility ---- - -Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) -prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. -A limited number of Oracle data types and features are not supported by EDB Transporter. - -Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed -comments on supported data types. Unsupported data types are briefly detailed below. - -Unsupported Oracle Data Type ---- - - BFILE - - LONG - - LONG RAW - - RAW - - UROWID - - User-defined types (REF, Varrays, Nested Tables) - - ANY - - XML - - Spatial - -EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. - -Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. - - -Source and Target DB Preparation ---- -See our guides on preparing [Oracle sources](preparing_oracle_source_databases/#preparing_oracle_sources), -[Postgres sources](preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_target_databases/#preparing_target_databases). - -Installing and Configuring EDB Transporter Software ---- -See our guide on [installing and configuring](installing_customer_side_software/#installing_customer_side_software) EDB Transporter software. -EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). - -Migrating Data ---- -Migration Creation and Status ----- -Source and target database schema are used to specify data to migrate along with -configurabilty for performance or e.g. excluding source data. - -Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to -execute Change-Data-Capture (CDC) event streaming from source to target database. An initial -snapshot occurs followed by a transition to the streaming phase of CDC event production. - -Managing Ongoing Migrations ----- -EDB can work with customers and manage in-progress migrations in order to: - - Exclude problematic source data - - Pause and resume migrations - - Optimize migration performance - -Several indepedent migrations can be configured and managed using the same CDCReader, CDCWriter, -and EDB-managed cloud EDB Transporter components. - -Migration Completion and Removal ----- -To complete the migration, source database traffic should be stopped and streaming migration -allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. -Target database integrity can be validated and application cutover to the target performed. - -After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. From 57f53087db113e3f3e081b8767afa57b88ff1520 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 14 Jun 2023 14:16:25 +0200 Subject: [PATCH 07/47] EDB Transporter - Getting started --- .../{quick_start.mdx => getting_started.mdx} | 49 +++++++++++++------ .../docs/transporter/2_preview/index.mdx | 2 +- 2 files changed, 35 insertions(+), 16 deletions(-) rename product_docs/docs/transporter/2_preview/{quick_start.mdx => getting_started.mdx} (60%) diff --git a/product_docs/docs/transporter/2_preview/quick_start.mdx b/product_docs/docs/transporter/2_preview/getting_started.mdx similarity index 60% rename from product_docs/docs/transporter/2_preview/quick_start.mdx rename to product_docs/docs/transporter/2_preview/getting_started.mdx index deb08e99e50..8536824fd58 100644 --- a/product_docs/docs/transporter/2_preview/quick_start.mdx +++ b/product_docs/docs/transporter/2_preview/getting_started.mdx @@ -1,28 +1,47 @@ --- -title: "Quick start" +title: "Getting started" --- -The EDB Transporter migration lifecycle is as follows: - - Ensure schema compatibility - - Prepare source and target databases - - Install and run customer-side EDB Transporter software - - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) - - EDB staff deploys cloud infrastructure (control components and a message bus) - - EDB staff initiate and manage the data migration until completion - - Integrity validation and post-migration checks are performed - - Customer-side software can be stopped and removed - - Cloud infrastructure is deprovisioned by EDB staff - +Setting up an EDB Transporter migration consists of a number of steps. -### Schema Compatibility +### Planning + - Ensure schema compatibility Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. -### Source and Target DB Preparation +### Preparing + - Prepare source and target databases + +Each source and the target databases need to be prepared for the migration. This involves enable archive log mode and supplemental logging on the Oracle Database and create a User. + See our guides on preparing [Oracle sources](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources), [Postgres sources](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_db/preparing_target_databases/#preparing_target_databases). -### Installing and Configuring EDB Transporter Software +### Installing + - Install and run customer-side EDB Transporter software + See our guide on [installing and configuring](installing) EDB Transporter software. EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). + +### Sharing Migration Information + - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) + +To be able to create the migration, EDB staff needs to know the schemas and tables that are needed to migrate to the target database. +If the table/column names will be different from the source, EDB staff also needs the mapping for each table/column to their new names. + +Next steps are carried out by EDB Staff: + +### Deploying Infrastructure + - EDB staff deploys cloud infrastructure (control components and a message bus) + +### Beginning Migration + - EDB staff initiate and manage the data migration until completion + +### Validating Migration + - Integrity validation and post-migration checks are performed + +### Post-Migration Steps +Your migration is now up and running and will last as long as required. Once your data is across, and if you plan to stop the migration once that is done + - Customer-side software can be stopped and removed + - Cloud infrastructure is deprovisioned by EDB staff diff --git a/product_docs/docs/transporter/2_preview/index.mdx b/product_docs/docs/transporter/2_preview/index.mdx index c36d0a3acec..ab5de67cd9c 100644 --- a/product_docs/docs/transporter/2_preview/index.mdx +++ b/product_docs/docs/transporter/2_preview/index.mdx @@ -5,7 +5,7 @@ directoryDefaults: navigation: - rel_notes - known_issues - - quick_start + - getting_started - "#Concepts" - terminology - usage_overview From 81284b20504a4ec89894c08ce2b5092bf9f1b365 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 14 Jun 2023 14:54:08 +0200 Subject: [PATCH 08/47] EDB Transporter - Fix link --- product_docs/docs/transporter/2_preview/upgrading.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/transporter/2_preview/upgrading.mdx b/product_docs/docs/transporter/2_preview/upgrading.mdx index 2a3c75d1038..effde30e0fc 100644 --- a/product_docs/docs/transporter/2_preview/upgrading.mdx +++ b/product_docs/docs/transporter/2_preview/upgrading.mdx @@ -6,5 +6,5 @@ Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. -Incompatible upgrades are documented in the [release notes](../rel_notes) and can be identified +Incompatible upgrades are documented in the [release notes](rel_notes) and can be identified by major version number increases. From 0a752d927bdedddf07fb93fe50859a3dce297686 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 15 Jun 2023 15:50:20 -0400 Subject: [PATCH 09/47] First pass at editing transporter preview --- .../transporter/2_preview/getting_started.mdx | 55 +++--- .../docs/transporter/2_preview/index.mdx | 12 +- .../2_preview/installing/index.mdx | 6 +- .../installing/installing_debian.mdx | 14 +- .../2_preview/installing/installing_rhel.mdx | 12 +- .../transporter/2_preview/known_issues.mdx | 5 +- .../transporter/2_preview/limitations.mdx | 30 ++-- .../transporter/2_preview/migrating_data.mdx | 27 +-- .../2_preview/preparing_db/index.mdx | 12 +- .../preparing_oracle_source_databases.mdx | 159 ++++++++++-------- .../preparing_postgres_source_databases.mdx | 126 +++++++------- .../preparing_target_databases.mdx | 11 +- .../rel_notes/rel_notes_2.0.0_preview.mdx | 7 +- .../2_preview/supported_versions.mdx | 21 ++- .../transporter/2_preview/terminology.mdx | 23 ++- .../docs/transporter/2_preview/upgrading.mdx | 15 +- 16 files changed, 280 insertions(+), 255 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/getting_started.mdx b/product_docs/docs/transporter/2_preview/getting_started.mdx index 8536824fd58..42b54d18963 100644 --- a/product_docs/docs/transporter/2_preview/getting_started.mdx +++ b/product_docs/docs/transporter/2_preview/getting_started.mdx @@ -4,44 +4,45 @@ title: "Getting started" Setting up an EDB Transporter migration consists of a number of steps. -### Planning - - Ensure schema compatibility +## Planning: Ensure schema compatibility -Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) -prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. +Assess Oracle database sources for schema compatibility using the [EDB Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) before starting the data migration process. Address incompatible schemas or exclude them from the migration. -### Preparing - - Prepare source and target databases +### Preparing source and target databases -Each source and the target databases need to be prepared for the migration. This involves enable archive log mode and supplemental logging on the Oracle Database and create a User. +You need to prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: -See our guides on preparing [Oracle sources](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources), -[Postgres sources](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_db/preparing_target_databases/#preparing_target_databases). +- [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources) +- [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources) +- [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases) ### Installing - - Install and run customer-side EDB Transporter software -See our guide on [installing and configuring](installing) EDB Transporter software. -EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). +Install and run customer-side EDB Transporter software. For details, see [Installing EDB Transporter software](installing). -### Sharing Migration Information - - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) +EDB manages cloud assets required for the migration, such as Apache Kafka and other services offered by cloud service providers. -To be able to create the migration, EDB staff needs to know the schemas and tables that are needed to migrate to the target database. -If the table/column names will be different from the source, EDB staff also needs the mapping for each table/column to their new names. +### Sharing migration information -Next steps are carried out by EDB Staff: +Share tables-to-migrate information with EDB (schema, table, and column-name mapping between source and target). -### Deploying Infrastructure - - EDB staff deploys cloud infrastructure (control components and a message bus) +To be able to create the migration, EDB needs to know the schemas and tables needed to migrate to the target database. -### Beginning Migration - - EDB staff initiate and manage the data migration until completion +If the target table and column names are different from the source, EDB also needs the mapping for each table and column to its new name. -### Validating Migration - - Integrity validation and post-migration checks are performed +### EDB migration responsibilities -### Post-Migration Steps -Your migration is now up and running and will last as long as required. Once your data is across, and if you plan to stop the migration once that is done - - Customer-side software can be stopped and removed - - Cloud infrastructure is deprovisioned by EDB staff +EDB performs the next steps: + +- Deploying infrastructure. EDB deploys cloud infrastructure, which includes control components and a message bus. + +- Starting migration. EDB initiates and manages the data migration until complete. + +- Validating migration. EDB performs integrity validation and post-migration checks. + +### Post-migration steps + +After these steps, your migration is up and running and will last as long as required. After your data is across,if you plan to then stop the migration: + + - You can stop and remove customer-side software. + - EDB deprovisions cloud infrastructure. diff --git a/product_docs/docs/transporter/2_preview/index.mdx b/product_docs/docs/transporter/2_preview/index.mdx index ab5de67cd9c..dc031cea803 100644 --- a/product_docs/docs/transporter/2_preview/index.mdx +++ b/product_docs/docs/transporter/2_preview/index.mdx @@ -1,7 +1,7 @@ --- title: EDB Transporter directoryDefaults: - description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change event data streaming enables secure, fault tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." + description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change-event data streaming enables secure, fault-tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." navigation: - rel_notes - known_issues @@ -20,15 +20,11 @@ navigation: - migrating_data --- -EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique -known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them -to a destination database, reshaping the data to the schema of the destination database in the process. +EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them to a destination database, reshaping the data to the schema of the destination database in the process. -By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting and importing -that came with traditional migration. +By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting, and importing that came with traditional migration. EDB Transporter is built on Kafka, a data-streaming technology, and Debezium, which uses that technology to move captured data between databases. -Where the source or destination database is on-premises or in a private cloud, then EDB Transporter’s CDCReader or CDCWriter need to be installed. -This will enable you and EDB’s team to plan and start your migration. +When the source or destination database is on premises or in a private cloud, then you need to install EDB Transporter’s CDCReader or CDCWriter. You and EDB’s team can then plan and start your migration. diff --git a/product_docs/docs/transporter/2_preview/installing/index.mdx b/product_docs/docs/transporter/2_preview/installing/index.mdx index c43e42949b3..701779178b8 100644 --- a/product_docs/docs/transporter/2_preview/installing/index.mdx +++ b/product_docs/docs/transporter/2_preview/installing/index.mdx @@ -1,11 +1,13 @@ --- navTitle: "Installing" -title: "Installing EDB Transporter Software" +title: "Installing EDB Transporter software" --- -## Installation Guidance +## Installation guidance + +See: - [Installation for Debian and derivatives](installing_debian) - [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) diff --git a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx index 48f6e6c3646..a5d9c34797c 100644 --- a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx +++ b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx @@ -4,9 +4,9 @@ title: "Installation for Debian and derivatives" -## Prerequisites / Repository Setup +## Prerequisites/repository setup -Quick Setup: +Quick setup: ```shell curl -1sLf \ @@ -14,7 +14,7 @@ curl -1sLf \ | sudo -E bash ``` -Specific distribution or architecture: +Set up a Specific distribution or architecture: ```shell curl -1sLf \ @@ -22,7 +22,7 @@ curl -1sLf \ | sudo -E distro=some-distro codename=some-codename arch=some-arch bash ``` -Install Manually: +Install manually: ```shell distro="some-distro" # for example "ubuntu" @@ -40,7 +40,7 @@ curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.t apt-get update ``` -How to remove the repository: +To remove the repository: ```shell rm /etc/apt/sources.list.d/enterprisedb-dev.list @@ -51,13 +51,13 @@ apt-get update ## Installation -CDCReader: +Install CDCReader: ```shell sudo apt-get install cdcreader=1.4-1.4766136665.17.1.jammy ``` -CDCWriter: +Install CDCWriter: ```shell sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy diff --git a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx index 324f11c49b8..f89dff68714 100644 --- a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx +++ b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx @@ -4,7 +4,7 @@ title: "Installation for Red Hat Enterprise Linux (RHEL) and derivatives" -## Prerequisites / Repository Setup +## Prerequisites/repository setup Quick setup: @@ -14,7 +14,7 @@ curl -1sLf \ | sudo -E bash ``` -Specific distribution or architecture: +Set up a specific distribution or architecture: ```shell curl -1sLf \ @@ -22,7 +22,7 @@ curl -1sLf \ | sudo -E distro=some-distro codename=some-codename arch=some-arch bash ``` -Install Manually: +Install manually: ```shell distro="some-distro" # for example "el" @@ -35,7 +35,7 @@ yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' ``` -How to remove the repository: +To remove the repository: ```shell rm /etc/yum.repos.d/enterprisedb-dev.repo @@ -44,13 +44,13 @@ rm /etc/yum.repos.d/enterprisedb-dev-source.repo ## Installation -CDCReader: +Install CDCReader: ```shell sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 ``` -CDCWriter: +Install CDCWriter: ```shell sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 diff --git a/product_docs/docs/transporter/2_preview/known_issues.mdx b/product_docs/docs/transporter/2_preview/known_issues.mdx index 55cf70adfb2..065d897fdbc 100644 --- a/product_docs/docs/transporter/2_preview/known_issues.mdx +++ b/product_docs/docs/transporter/2_preview/known_issues.mdx @@ -1,6 +1,7 @@ --- title: "Known issues" --- -This section discusses currently known issues in EDB Transporter. These known issues are expected to be resolved in a future release. -- None known issues at this moment. +These EDB Transporter known issues are expected to be resolved in a future release. + +- Currently no known issues. diff --git a/product_docs/docs/transporter/2_preview/limitations.mdx b/product_docs/docs/transporter/2_preview/limitations.mdx index 236500d1457..6542c6c3d1e 100644 --- a/product_docs/docs/transporter/2_preview/limitations.mdx +++ b/product_docs/docs/transporter/2_preview/limitations.mdx @@ -2,22 +2,22 @@ title: "Limitations" --- -A limited number of Oracle data types and features are not supported by EDB Transporter. +A limited number of Oracle data types and features aren't supported by EDB Transporter. -Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed -comments on supported data types. Unsupported data types are briefly detailed below. +See the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed comments on supported data types. -#### Unsupported Oracle Data Type - - BFILE - - LONG - - LONG RAW - - RAW - - UROWID - - User-defined types (REF, Varrays, Nested Tables) - - ANY - - XML - - Spatial +Unsupported Oracle data types include: -EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. +- BFILE +- LONG +- LONG RAW +- RAW +- UROWID +- User-defined types (REF, Varrays, Nested Tables) +- ANY +- XML +- Spatial -Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. +Don't use EDB Transporter for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes currently aren't handled correctly. + +Also, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle might contain `Nan`, `+INF`, and `-INF` values. EDB Transporter doesn't support these values. diff --git a/product_docs/docs/transporter/2_preview/migrating_data.mdx b/product_docs/docs/transporter/2_preview/migrating_data.mdx index 64dc2fba897..fd19e4c38ba 100644 --- a/product_docs/docs/transporter/2_preview/migrating_data.mdx +++ b/product_docs/docs/transporter/2_preview/migrating_data.mdx @@ -1,26 +1,29 @@ --- -title: "Migrating Data" +title: "Migrating data" --- -### Migration Creation and Status +## Migration creation and status + Source and target database schema are used to specify data to migrate along with -configurability for performance or e.g. excluding source data. +configurability for performance or, for example, for excluding source data. -Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to -execute Change-Data-Capture (CDC) event streaming from source to target database. An initial +EDB's cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to +execute change data capture (CDC) event streaming from source to target database. An initial snapshot occurs followed by a transition to the streaming phase of CDC event production. -### Managing Ongoing Migrations -EDB can work with customers and manage in-progress migrations in order to: +## Managing ongoing migrations + +EDB can work with you and manage in-progress migrations to: - Exclude problematic source data - Pause and resume migrations - Optimize migration performance -Several independent migrations can be configured and managed using the same CDCReader, CDCWriter, +You can configure and manage several independent migrations using the same CDCReader, CDCWriter, and EDB-managed cloud EDB Transporter components. -### Migration Completion and Removal -To complete the migration, source database traffic should be stopped and streaming migration -allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. +## Migration completion and removal + +To complete the migration, stop source database traffic and allow streaming migration +to transfer all CDC events. You can then stop EDB Transporter CDCReader and CDCWriter. Target database integrity can be validated and application cutover to the target performed. -After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. +After confirming migration success, EDB decommissions all EDB Transporter cloud assets. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/index.mdx b/product_docs/docs/transporter/2_preview/preparing_db/index.mdx index ac07197633b..6b7b5c96ddc 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/index.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/index.mdx @@ -1,5 +1,5 @@ --- -title: "Preparing Databases" +title: "Preparing databases" navigation: - preparing_oracle_source_databases @@ -7,11 +7,9 @@ navigation: - preparing_target_databases --- -Select a link to access the applicable preparing instructions: +To prepare source databases, see either: +- [Preparing Oracle source databases](preparing_oracle_source_databases) +- [Preparing Postgres source databases](preparing_postgres_source_databases) -## Source Databases -#### [Oracle](preparing_oracle_source_databases) -#### [Postgres](preparing_postgres_source_databases) - -## [Target Databases](preparing_target_databases) +To prepare the target database, see [Preparing target databases](preparing_target_databases). diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 2cb19a9f4fc..2e0343a61d1 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -1,40 +1,55 @@ --- -title: "Preparing Oracle Source Databases" +title: "Preparing Oracle source databases" --- -Configuring Oracle for EDB Transporter migrations requires a user with `sysdba` privileges. +Configuring Oracle for EDB Transporter migrations requires `sysdba` privileges. -An Oracle source database should be configured to enable archive log mode, enable supplemental logging for the database and table columns of interest, -ensure adequate redo log space is available, and to create a user with limited privileges to carry out the data migration. +Configure an Oracle source database to: +- Enable archive log mode +- Enable supplemental logging for the database and table columns of interest +- Ensure adequate redo log space is available +- Create a user with limited privileges to carry out the data migration -SQL statements in this guidance should be executed with `sqlplus` or a similar client. +Execute SQL statements with sqlplus or a similar client. + +This command propmpts you for the password for $ORA_USER: ``` -# You will be prompted for the password for $ORA_USER sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba ``` -Reference: - - `$ORA_HOST`: The Oracle DB hostname - - `$ORA_PORT`: The Oracle DB port - - `$ORA_SID`: The Oracle System ID for the DB or CDB/PDB combination - - `$ORA_USER`: An Oracle DB username capable of using `sysdba` privileges +Where: + + - `$ORA_HOST` is the Oracle DB hostname. + - `$ORA_PORT` is the Oracle DB port. + - `$ORA_SID` is the Oracle System ID for the DB or CDB/PDB combination. + - `$ORA_USER` is an Oracle DB username with `sysdba` privileges. + +## Oracle configuration -## Oracle Configuration +To perform Oracle configuration: -### 1. Enable Archive Log mode +1. [Enable archive log mode](#enable_archive_log_mode). +1. [Enable database supplemental logging](#enable_database_supplemental_logging). +1. [Enable supplemental logging for table columns](#enable_supplemental_logging_for_table_columns). +1. [Verify redo logs for adequate count and size](#verify_redo_logs_for_adequate_count_and_size). +1. [Create a user with limited privileges for data migration](#create_a_user_with_limited_privileges_for_data_migration). +1. [Grant `SELECT` on source tables](#grant_select_on_source_tables). +1. [Validate configuration](#validate-configuration). -Oracle Database can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVELOG` mode, filled redo logs are archived rather than put back into log rotation to be overwritten. This is necessary for the Change-Data-Capture (CDC) process to use LogMiner and produce a complete history of changes after an initial consistent snapshot. +### Enable archive log mode -To see which mode a database is in, use the following command: +Oracle databases can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVELOG` mode, filled redo logs are archived rather than put back into log rotation to be overwritten. This mode is needed for the change data capture (CDC) process to use LogMiner and produce a complete history of changes after an initial consistent snapshot. + +To see the database mode: ``` archive log list; ``` -The returned content will indicate which mode the database is in. +The returned content indicates the database mode: ``` Database log mode Archive Mode @@ -42,12 +57,12 @@ Database log mode Archive Mode Database log mode No Archive Mode ``` -If `ARCHIVELOG` mode is enabled, confirm the size of your recovery file destination is appropriate -for your workload with your DBA. If archive logging is not enabled follow the guidance below. +If `ARCHIVELOG` mode is enabled, confirm with your DBA that the size of your recovery file destination is appropriate for your workload. + +When enabling archive log mode, you need to enable a fast recovery area. For more information on enabling an Oracle fast recovery area, see [Enabling the Fast Recovery Area](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F) in the Oracle documentation. -It's necessary to enable a fast recovery area when enabling archive log mode. For more information on enabling an Oracle fast recovery area, see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F). +To enable archive logging: -Below, values to be specified by the user are represented in a `$FOO` naming format. ``` ORACLE_SID=$YOUR_SID sqlplus /nolog @@ -63,48 +78,48 @@ archive log list; exit; ``` -The `archive log list` output should indicate the database is now in archive log mode. +Where: + - `$YOUR_SID` is the Oracle DB system ID. + - `$SYSDBA_USER` is the name of a user with `sysdba` privileges. + - `$SYSDBA_USER_PWD` is the password for `$SYSDBA_USER`. + - `$RECOVERY_FILE_DEST_SIZE` is the size allowed for the recovery behavior, for example, `100G` for 100 gigabytes. + - `$RECOVERY_FILE_DEST` is the file system path for an Oracle fast recovery area. This path can be a directory, file system, or Oracle Automatic Storage Management. Consult your DB admin for guidance. -Reference: - - `$YOUR_SID`: The Oracle DB System ID - - `$SYSDBA_USER`: The name of a user with `sysdba` privileges - - `$SYSDBA_USER_PWD`: The password for `$SYSDBA_USER` - - `$RECOVERY_FILE_DEST_SIZE`: The size allowed for the recovery behavior - - e.g. `100G` for 100 GigaBytes - - `$RECOVERY_FILE_DEST`: The filesystem path for an Oracle fast recovery area - - This may be a directory, filesystem, or Oracle Automatic Storage Management; consult your DB admins +The `archive log list` output shows the database is now in archive log mode. -### 2. Enable Database Supplemental Logging +### Enable database supplemental logging -Supplemental logging refers to the capture of additional information, such as "before" state, in Oracle redo logs. This extra redo log information is necessary for some log-based applications, such as EDB Transporter, to capture change events. Please see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) for additional information. +Supplemental logging refers to the capture of additional information in Oracle redo logs, such as "before" state. This extra redo log information is needed for some log-based applications, such as EDB Transporter, to capture change events. See [Supplemental Logging](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) in the Oracle documentation for more information. -Supplemental logging can be enabled at the database and table level. The following command will enable minimal supplemental logging at the database level required for LogMiner to function. +You can emable supplemental logging at the database and table level. The following command enables minimal supplemental logging required for LogMiner to function at the database level: ``` ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; ``` -### 3. Enable Supplemental Logging for Table Columns +### Enable supplemental logging for table columns -For every table we'd like to migrate we must enable supplemental logging. To do -so for all columns in a table the following statement can be applied: +For every table you want to migrate, you must enable supplemental logging. To do +so for all columns in a table, apply the following statement: ``` ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; ``` -`ALTER` all table-columns desired for migration. +Where: -Reference: - - `$TABLE`: The identifier for the table to be migrated + - `$TABLE` is the identifier for the table to migrate. -### 4. Verify Redo Logs for Adequate Count / Size +Use `ALTER` with all table columns you want to migrate. -EDB Transporter's migration process involves two phases -- the first is a consistent snapshot and the second is continuous streaming of database changes. This stream of database changes is powered by LogMiner and the Oracle DB redo logs. +### Verify redo logs for adequate count and size -Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Additionally, undersized logs will cause frequent log switching and impact migration performance. +EDB Transporter's migration process involves two phases. The first is a consistent snapshot. The second is continuous streaming of database changes. This stream of database changes is powered by LogMiner and the Oracle DB redo logs. + +Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Also, undersized logs cause frequent log switching and affect migration performance. + +To examine the state of the database redo logs, use these commands: -The following commands can be used to examine the state of the database redo logs. ``` SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; @@ -123,9 +138,8 @@ SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; 3 NO 2000 CURRENT ``` -In the above example we see three log groups, each with one file-member, of size 2000 MegaBytes. This may be too -small for many production databases. The redo logs can be safely adjusted with synchronous commands as in the following -statements: +This example uses three log groups of size 2000MB. Each group has one file member. This might be too +small for many production databases. You can safely adjust the redo logs with synchronous commands such as the following: ``` ALTER DATABASE ADD LOGFILE GROUP 4 ('/opt/oracle/oradata/ORCLCDB/redo04.log') SIZE 8G; @@ -143,21 +157,19 @@ statements: ALTER DATABASE DROP LOGFILE GROUP 3; ``` -This would result in four new 8 GigaByte log groups, each group having a single log file. +These commands result in four new 8GB log groups. Each group has a single log file. Consult with your DBA for appropriate production sizing. -### 5. Create a User with Limited Privileges for Data Migration +### Create a user with limited privileges for data migration -#### Tablespace Preparation +#### Tablespace preparation -It's necessary to provide a database user with adquate roles to carry out the change-data-capture (CDC) process. +Provide a database user with adequate roles to carry out the CDC process. -First, it's recommended to create a tablespace for the CDC user. For container databases we'll need to create a pluggable database as well. +Then, we recommend creating a tablespace for the CDC user. For container databases, you need to create a pluggable database as well. -The following statements are examples of creating a tablespace and datafiles for CDC migration. Your database settings may vary but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size will result in a maximum of 32GB -of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, it may be necessary to add multiple `AUTOEXTEND` datafiles -when this limit may be exceeded. +This example shows creating a tablespace and datafiles for CDC migration. Your database settings might vary, but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size results in a maximum of 32GB of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, you might need to add multiple `AUTOEXTEND` datafiles when this limit might be exceeded. ``` -- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace @@ -169,15 +181,15 @@ CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1 ALTER TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; ``` -Reference: - - `$TABLESPACE_NAME`: The tablespace name to be used by the CDC migration user +Where: + - `$TABLESPACE_NAME` is the tablespace name for the CDC migration user to use. -#### User Creation and Access Grants +#### User creation and access grants -With the tablespace files in place a user can be created with appropriate access grants -for CDC migration. +With the tablespace files in place, you can create a user with appropriate access grants for CDC migration. For a CDB/PDB database setup, note the tablespace default and quota: + ``` CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD DEFAULT TABLESPACE $TABLESPACE_NAME @@ -234,35 +246,36 @@ For a non-CDB database: GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER; ``` -Reference: - - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access - - `$MIGRATION_USER_PASSWORD`: The password for the migration user - - `$TABLESPACE_NAME`: The tablespace for `$MIGRATION_USER` +Where: + - `$MIGRATION_USER` is the name of the user to create for CDC migration table access. + - `$MIGRATION_USER_PASSWORD` is the password for the migration user. + - `$TABLESPACE_NAME` is the tablespace for `$MIGRATION_USER`. -### 6. Grant `SELECT` on Source Tables +### Grant `SELECT` on source tables The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support -granting access to an entire schema so this needs to be done table-by-table. +granting access to an entire schema, so you need to do this for each table. ``` GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER ``` -Reference: - - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access - - `$TABLE_NAME`: The name of an individual table to be migrated +Where: + - `$MIGRATION_USER` is the name of the user to create for CDC migration table access. + - `$TABLE_NAME` is the name of an individual table to migrate. + +### Validate configuration -### 7. Validate Configuration +CDCReader installation comes with a helper script that validates the Oracle configuration and helps you identify any issues. After you configure the database, we recommend running the script to ensure all checks pass. -CDCReader installation comes with a helper script that will validate the Oracle configuration and help you identify any issues. Once you have configured the database, it is recommended to run the script and ensure all checks are passed. +Run the script without arguments to print the usage: ``` -# Run the script without arguments to print the usage. /opt/cdcreader/oracleConfigValidation.sh ``` -## More Information +## More information - After completing the preparation outlined in this guide your database is ready for CDC migration. +Your database is ready for CDC migration. - For additional information, feel free to reference the [Debezium Oracle Connector](https://debezium.io/documentation/reference/2.2/index.html) documentation. +For more information, see the [Debezium Oracle Connector](https://debezium.io/documentation/reference/2.2/index.html) documentation. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index 97bd8d1f62f..dc07c02b328 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -1,83 +1,79 @@ --- -title: "Preparing Postgres Source Databases" +title: "Preparing Postgres source databases" --- -Configuring Postgres for EDB Transporter requires administrative privileges. A CDC migration role with limited privileges -is created for data migration. +Configuring Postgres for EDB Transporter requires administrative privileges. Create a change data capture (CDC) migration role with limited privileges for data migration. -SQL statements in this guidance should be executed with `psql` or a similar client. +Execute SQL statements with psql or a similar client. + ``` -# You will be promted for the password associated with `PG_USERNAME` psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME ``` -Reference: - - `PG_DB_NAME`: The name of the Postgres database to connect to - - `PG_HOST`: The Postgres database host - - `PG_PORT`: The Postgres database port - - `PG_USERNAME`: An administrative user capable of creating roles, granting roles, altering ownership of tables-to-migrate, and creating a replication slot +Where: + - `PG_DB_NAME` is the name of the Postgres database to connect to. + - `PG_HOST` is the Postgres database host. + - `PG_PORT` is the Postgres database port. + - `PG_USERNAME` is an administrative user who can create and grant roles, alter ownership of tables to migrate, and create a replication slot. -## Postgres Configuration +This command prompts you for the password associated with `PG_USERNAME`. -### 1. Verify Postgres Configuration +## Postgres configuration -A few configuration entries for Postgres should be verified or set. +To perform Postgres configuration: +1. [Verify Postgres configuration](#verify_postgres_configuration). +1. [Create new roles and grant acccess for CDC migration](#create_new_roles_and_grant_acccess_for_cdc_migration). +1. [Grant `SELECT` on source tables to the CDC migration role](#grant_select_on_source_tables_to_the_cdc_migration_role). +1. [Create a logical replication slot](#create_a_logical_replication_slot) -1. Ensure the `wal_level` is configured as `logical`. +### Verify Postgres configuration -The CDC migration process leverages Postgres logical decoding. Setting this to `logical` enables logical decoding of the Postgres Write-Ahead-Log (WAL). +Verify or set these configuration entries for Postgres. -2. Ensure `max_wal_senders` configured appropriately +1. Ensure `wal_level` is configured as `logical`. -`max_wal_senders` should be set to at least `1` if EDB Transporter migration is the first streaming -client for your database. Other streaming clients may be present and you should consult your DBA -for the appropriate value for streaming client connectivity. + The CDC migration process leverages Postgres logical decoding. Setting `wal_level` to `logical` enables logical decoding of the Postgres write-ahead log (WAL). -3. Ensure `max_replication_slots` configured appropriately +2. Ensure `max_wal_senders` is configured appropriately. -`max_replication_slots` must be at least `1` for the CDC migration process. This value may be -higher if your organization makes use of Postgres replication capabilities. + If EDB Transporter migration is the first streaming client for your database, set `max_wal_senders` to at least `1`. Other streaming clients might be present. Consult your DBA for the appropriate value for streaming client connectivity. -Please see the [Postgres replication documentation](https://www.postgresql.org/docs/current/runtime-config-replication.html) -for more information. +3. Ensure `max_replication_slots` is configured appropriately. -4. Ensure `max_wal_size` configured to ensure adequate WAL LSN lifetime + `max_replication_slots` must be at least `1` for the CDC migration process. This value can be higher if your organization uses Postgres replication. -The `max_wal_size` value should be large enough that production traffic is generating -mostly timed-checkpoints and not requested-checkpoints based on WAL size. + See the [Postgres replication documentation](https://www.postgresql.org/docs/current/runtime-config-replication.html) for more information. -Additionally, the streaming migration process requires changes to be available in the WAL until -they can be streamed to durable message storage in EDB Transporter's cloud infrastructure. Setting -`max_wal_size` too small can not only impact performance but interfere with the migration process by allowing -Postgres LSNs to be dropped from the WAL before they can be streamed. +4. Ensure `max_wal_size` is configured for adequate WAL LSN lifetime. -Please see this [EDB blog post on tuning](https://www.enterprisedb.com/blog/tuning-maxwalsize-postgresql) `max_wal_size`. + Set the `max_wal_size` value large enough that production traffic is generating mostly timed checkpoints and not requested checkpoints based on WAL size. -Please see the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html) -for more information. + The streaming migration process also requires changes to be available in the WAL until they can be streamed to durable message storage in EDB Transporter's cloud infrastructure. Setting `max_wal_size` too small can affect performance. It can also interfere with the migration process by allowing Postgres LSNs to be dropped from the WAL before they can be streamed. -#### Config Validation Script + For more information, see this [EDB blog post on tuning `max_wal_size`](https://www.enterprisedb.com/blog/tuning-maxwalsize-postgresql) and the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html). -CDCReader installation comes with a helper script that will validate the Postgres configuration and help you identify any issues. Once you have configured the database, it is recommended to run the script and ensure all checks are passed. +#### Config validation script + +CDCReader installation comes with a helper script that validates the Postgres configuration and helps you identify any issues. After you configure the database, we recommend running the script and ensuring all checks passed. + +Run the script without arguments to print the usage: ``` -# Run the script without arguments to print the usage. /opt/cdcreader/postgresConfigValidation.sh ``` -### 2. Create New Roles and Grant Acccess for CDC Migration +### Create new roles and grant acccess for CDC migration -First create a new role for CDC Migration with the `LOGIN` and `REPLICATION` abilities granted. +First, create a new role for CDC Migration with `LOGIN` and `REPLICATION` abilities granted: ``` CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; ``` -`$MIGRATION_ROLE` needs to own the source tables in order to autocreate Postgres Publications. Because the source tables are already owned by another role, we create a role / user which can act as the new owner and grant this "replication group" role to -both the current table owner and also to `$MIGRATION_ROLE`. +`$MIGRATION_ROLE` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and also to `$MIGRATION_ROLE`: ``` CREATE ROLE $REPLICATION_GROUP; @@ -85,43 +81,49 @@ GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; ALTER TABLE $TABLE_NAME OWNER TO $REPLICATION_GROUP ``` -Reference: - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `$ORIGINAL_OWNER`: The original production owner of the table - - `$REPLICATION_GROUP`: The name of a role used to own the source tables to be migrated -- for Publication autocreation -### 3. Grant `SELECT` on Source Tables to the CDC Migration Role +Where: + + - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. + - `$ORIGINAL_OWNER` is the original production owner of the table. + - `$REPLICATION_GROUP` is the name of a role used to own the source tables to migrate for publication autocreation. + +### Grant `SELECT` on source tables to the CDC migration role -The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. Access can be granted across a schema -or on a table-by-table basis. +The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. You can grant access across a schema +or for each table. + +For an entire schema's tables, use this command: ``` --- For an entire schema's tables ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE +``` --- Table by table +For each table, use: + +``` GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE ``` -Reference: - - `$DB_SCHEMA`: The database schema name for the tables to be migrated - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `$TABLE_NAME`: The name of an individual table to be migrated +Where: + - `$DB_SCHEMA` is the database schema name for the tables to migrate. + - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. + - `$TABLE_NAME` is the name of a table to migrate. -### 4. Create a Logical Replication Slot +### Create a logical replication slot -The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source we'll need to create a replication slot for our CDC migration role. +The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source, you need to create a replication slot for your CDC migration role: ``` PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); ``` -Reference: - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `pgoutput`: The logical decoding plugin used by EDB Transporter, supplied by Postgres. +Where: + - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. + - `pgoutput` is the logical decoding plugin supplied by Postgres that EDB Transporter uses. -## More Information +## More information - After completing the preparation outlined in this guide your database is ready for CDC migration. +Your database is ready for CDC migration. - For additional information, feel free to reference the [Debezium Postgres Connector](https://debezium.io/documentation/reference/stable/connectors/postgresql.html) documentation. +For more information, see the [Debezium Postgres Connector](https://debezium.io/documentation/reference/stable/connectors/postgresql.html) documentation. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx index d818c7255df..163dea2d584 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_target_databases.mdx @@ -1,12 +1,13 @@ --- -title: "Preparing Target Databases" +title: "Preparing target databases" --- -Migration data is written to the target database over a normal JDBC connection. It's expected that a database user is available with permissions to write to target tables. +Migration data is written to the target database over a normal JDBC connection. A database user with permissions to write to target tables must be available. -The target database schema must exist prior to starting the data migration. -EDB Transporter provides a fault-tolerant method for migrating Change-Data-Capture (CDC) events to the target. If a CDC event doesn't match the target schema CDCWriter will stop writing data to the target until the schema mismatched is resolved. +The target database schema must exist before you start the data migration. -Target tables should be empty. If a target table has rows, such as from testing, these should be removed e.g. with `TRUNCATE`. \ No newline at end of file +EDB Transporter provides a fault-tolerant method for migrating change data capture (CDC) events to the target. If a CDC event doesn't match the target schema, CDCWriter stops writing data to the target until you resolve the schema mismatch. + +Target tables must be empty. If a target table has rows, such as from testing, remove them, for example, with `TRUNCATE`. \ No newline at end of file diff --git a/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx b/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx index 353c039ff38..34dcbb423c8 100644 --- a/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx +++ b/product_docs/docs/transporter/2_preview/rel_notes/rel_notes_2.0.0_preview.mdx @@ -6,9 +6,10 @@ navTitle: "Version 2.0.0_preview" EDB Transporter version 2.0.0_preview is a new major version of EDB Transporter. The highlights of this release include: - * Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing + +* Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing | Type | Description | |-------------|------------------------------------------------------------------------------------------| -| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | -| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | +| Enhancement | Parallel table snapshots are available with Debezium 2.2.0. | +| Enhancement | EDB Transporter CDCWriter can now be used for non-BigAnimal migrations, including on-premises.| diff --git a/product_docs/docs/transporter/2_preview/supported_versions.mdx b/product_docs/docs/transporter/2_preview/supported_versions.mdx index c18ec2b67a8..8c90924f9ab 100644 --- a/product_docs/docs/transporter/2_preview/supported_versions.mdx +++ b/product_docs/docs/transporter/2_preview/supported_versions.mdx @@ -4,11 +4,11 @@ title: "Product compatibility" -## Database Versions +## Database versions -The following database versions are supported -- please see additional notes in later sections. +The following database versions are supported. -| Database Version | Supported | +| Database version | Supported | |------------------|-----------| | Postgres 11 - 15 | Y | | EPAS 11 - 15 | Y | @@ -19,15 +19,14 @@ The following database versions are supported -- please see additional notes in | Oracle 21c | Y | ### Oracle -The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. Please see -our [Oracle source configuration guidance](preparing_db/preparing_oracle_source_databases/#preparing_oracle_source_databases). +The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. For details, see [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_source_databases). -Both Container Databases (CDB/PDB) and non-CDB sources are supported. +Container databases (CDB/PDB) and non-CDB sources are supported. -### Postgres / EPAS -Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_db/preparing_postgres_source_databases/#preparing_postgres_source_databases). +### Postgres/EDB Postgres Advanced Server +Postgres and EDB Postgres Advanced Server sources require a database role or user that can manage replications. For details, see [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_source_databases). -When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_db/preparing_target_databases/#preparing_target_databases). +When used as a target, EDB Transporter requires a database role or user that can write to the appropriate target tables. For details, see the [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases). -## Operating Systems -EDB Transporter's customer-side software can be run on Linux and Mac OS systems. The source/target database may be run on any system including Windows. +## Operating systems +EDB Transporter's customer-side software can run on Linux and Mac OS systems. You can run the source or target database on any system, including Windows. diff --git a/product_docs/docs/transporter/2_preview/terminology.mdx b/product_docs/docs/transporter/2_preview/terminology.mdx index f6490fe1c54..7228de15afb 100644 --- a/product_docs/docs/transporter/2_preview/terminology.mdx +++ b/product_docs/docs/transporter/2_preview/terminology.mdx @@ -3,19 +3,18 @@ title: "Terminology" --- The terminology that follows is important for understanding EDB Transporter functionality. -#### Kafka -Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, -streaming analytics, data integration, and mission-critical applications. +## Kafka +Apache Kafka is an open-source, distributed-event, streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. + -#### CDC -CDC is a set of software design patterns used to determine and track the data that has changed (the "deltas") so that action can be taken -using the changed data. +## Change data capture (CDC) +CDC is a set of software design patterns used to determine and track the data that changed (the "deltas") so that you can take action using the changed data. -#### Debezium -Debezium is an open source distributed platform for change data capture. +## Debezium +Debezium is an open-source distributed platform for change data capture. -#### CDCReader -Uses Debezium to performing CDC on the source DB and producing Kafka messages containing the change events. +## CDCReader +CDCReader uses Debezium to perform CDC on the source database and produce Kafka messages containing the change events. -#### CDCWriter -Consumes CDC event messages from Kafka and writes them to the replication's Target Database. +## CDCWriter +CDCWriter consumes CDC event messages from Kafka and writes them to the replication's target database. diff --git a/product_docs/docs/transporter/2_preview/upgrading.mdx b/product_docs/docs/transporter/2_preview/upgrading.mdx index effde30e0fc..4d811c1db3b 100644 --- a/product_docs/docs/transporter/2_preview/upgrading.mdx +++ b/product_docs/docs/transporter/2_preview/upgrading.mdx @@ -2,9 +2,18 @@ title: "Upgrading" --- -Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt in any data migration. -These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter -are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. +Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt to any data migration. +These components are designed to terminate and restart gracefully. + +To upgrade the software: + +1. Stop the software you're upgrading (CDCReader or CDCWriter). + +1. Install and start a new version of that software. + +Data migration resumes. + + Incompatible upgrades are documented in the [release notes](rel_notes) and can be identified by major version number increases. From 6c965e64d22d8854ee8eee56cb00a249224edffb Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 15 Jun 2023 16:08:30 -0400 Subject: [PATCH 10/47] Fixed links and other formatting issues --- .../transporter/2_preview/getting_started.mdx | 10 +++++----- .../2_preview/installing/installing_debian.mdx | 4 ++-- .../2_preview/installing/installing_rhel.mdx | 2 +- .../docs/transporter/2_preview/known_issues.mdx | 2 +- .../preparing_oracle_source_databases.mdx | 16 +++++++--------- .../preparing_postgres_source_databases.mdx | 8 ++++---- 6 files changed, 20 insertions(+), 22 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/getting_started.mdx b/product_docs/docs/transporter/2_preview/getting_started.mdx index 42b54d18963..c64b3e826b2 100644 --- a/product_docs/docs/transporter/2_preview/getting_started.mdx +++ b/product_docs/docs/transporter/2_preview/getting_started.mdx @@ -8,7 +8,7 @@ Setting up an EDB Transporter migration consists of a number of steps. Assess Oracle database sources for schema compatibility using the [EDB Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) before starting the data migration process. Address incompatible schemas or exclude them from the migration. -### Preparing source and target databases +## Preparing source and target databases You need to prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: @@ -16,13 +16,13 @@ You need to prepare each source and the target databases needed for the migratio - [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources) - [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases) -### Installing +## Installing Install and run customer-side EDB Transporter software. For details, see [Installing EDB Transporter software](installing). EDB manages cloud assets required for the migration, such as Apache Kafka and other services offered by cloud service providers. -### Sharing migration information +## Sharing migration information Share tables-to-migrate information with EDB (schema, table, and column-name mapping between source and target). @@ -30,7 +30,7 @@ To be able to create the migration, EDB needs to know the schemas and tables nee If the target table and column names are different from the source, EDB also needs the mapping for each table and column to its new name. -### EDB migration responsibilities +## EDB migration responsibilities EDB performs the next steps: @@ -40,7 +40,7 @@ EDB performs the next steps: - Validating migration. EDB performs integrity validation and post-migration checks. -### Post-migration steps +## Post-migration steps After these steps, your migration is up and running and will last as long as required. After your data is across,if you plan to then stop the migration: diff --git a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx index a5d9c34797c..77b8a9c86a6 100644 --- a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx +++ b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx @@ -14,7 +14,7 @@ curl -1sLf \ | sudo -E bash ``` -Set up a Specific distribution or architecture: +Set up a specific distribution or architecture: ```shell curl -1sLf \ @@ -40,7 +40,7 @@ curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.t apt-get update ``` -To remove the repository: +Remove the repository: ```shell rm /etc/apt/sources.list.d/enterprisedb-dev.list diff --git a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx index f89dff68714..1cf91e96314 100644 --- a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx +++ b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx @@ -35,7 +35,7 @@ yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' ``` -To remove the repository: +Remove the repository: ```shell rm /etc/yum.repos.d/enterprisedb-dev.repo diff --git a/product_docs/docs/transporter/2_preview/known_issues.mdx b/product_docs/docs/transporter/2_preview/known_issues.mdx index 065d897fdbc..78879383fa0 100644 --- a/product_docs/docs/transporter/2_preview/known_issues.mdx +++ b/product_docs/docs/transporter/2_preview/known_issues.mdx @@ -4,4 +4,4 @@ title: "Known issues" These EDB Transporter known issues are expected to be resolved in a future release. -- Currently no known issues. +- There are currently no known issues. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 2e0343a61d1..57b5f8f7c99 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -31,12 +31,12 @@ Where: To perform Oracle configuration: -1. [Enable archive log mode](#enable_archive_log_mode). -1. [Enable database supplemental logging](#enable_database_supplemental_logging). -1. [Enable supplemental logging for table columns](#enable_supplemental_logging_for_table_columns). -1. [Verify redo logs for adequate count and size](#verify_redo_logs_for_adequate_count_and_size). -1. [Create a user with limited privileges for data migration](#create_a_user_with_limited_privileges_for_data_migration). -1. [Grant `SELECT` on source tables](#grant_select_on_source_tables). +1. [Enable archive log mode](#enable-archive-log-mode). +1. [Enable database supplemental logging](#enable-database-supplemental-logging). +1. [Enable supplemental logging for table columns](#enable-supplemental-logging-for-table-columns). +1. [Verify redo logs for adequate count and size](#verify-redo-logs-for-adequate-count-and-size). +1. [Create a user with limited privileges for data migration](#create-a-user-with-limited-privileges-for-data-migration). +1. [Grant `SELECT` on source tables](#grant-select-on-source-tables). 1. [Validate configuration](#validate-configuration). ### Enable archive log mode @@ -106,9 +106,7 @@ so for all columns in a table, apply the following statement: ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; ``` -Where: - - - `$TABLE` is the identifier for the table to migrate. +Where `$TABLE` is the identifier for the table to migrate. Use `ALTER` with all table columns you want to migrate. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index dc07c02b328..9ae9d723d60 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -24,10 +24,10 @@ This command prompts you for the password associated with `PG_USERNAME`. ## Postgres configuration To perform Postgres configuration: -1. [Verify Postgres configuration](#verify_postgres_configuration). -1. [Create new roles and grant acccess for CDC migration](#create_new_roles_and_grant_acccess_for_cdc_migration). -1. [Grant `SELECT` on source tables to the CDC migration role](#grant_select_on_source_tables_to_the_cdc_migration_role). -1. [Create a logical replication slot](#create_a_logical_replication_slot) +1. [Verify Postgres configuration](#verify-postgres-configuration). +1. [Create new roles and grant acccess for CDC migration](#create-new-roles-and-grant-acccess-for-cdc-migration). +1. [Grant `SELECT` on source tables to the CDC migration role](#grant-select-on-source-tables-to-the-cdc-migration-role). +1. [Create a logical replication slot](#create-a-logical-replication-slot) ### Verify Postgres configuration From 9944a8dcfcb75d21c0c774500f2a892d0196ad06 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 15 Jun 2023 16:09:58 -0400 Subject: [PATCH 11/47] Update preparing_postgres_source_databases.mdx Removed comment --- .../preparing_db/preparing_postgres_source_databases.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index 9ae9d723d60..fd497b60f20 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -7,7 +7,6 @@ title: "Preparing Postgres source databases" Configuring Postgres for EDB Transporter requires administrative privileges. Create a change data capture (CDC) migration role with limited privileges for data migration. Execute SQL statements with psql or a similar client. - ``` psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME From 39833b5725acb5425525fb9d5ecda2536448a3e0 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 15 Jun 2023 16:12:08 -0400 Subject: [PATCH 12/47] Update terminology.mdx Removed hyphen and removed comment. --- product_docs/docs/transporter/2_preview/terminology.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/terminology.mdx b/product_docs/docs/transporter/2_preview/terminology.mdx index 7228de15afb..c445544034e 100644 --- a/product_docs/docs/transporter/2_preview/terminology.mdx +++ b/product_docs/docs/transporter/2_preview/terminology.mdx @@ -4,8 +4,7 @@ title: "Terminology" The terminology that follows is important for understanding EDB Transporter functionality. ## Kafka -Apache Kafka is an open-source, distributed-event, streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. - +Apache Kafka is an open-source, distributed-event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. ## Change data capture (CDC) CDC is a set of software design patterns used to determine and track the data that changed (the "deltas") so that you can take action using the changed data. From fac436ffd312008c2ba00084f11381d1bcb75237 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 15 Jun 2023 16:14:11 -0400 Subject: [PATCH 13/47] Update upgrading.mdx Removed comment --- product_docs/docs/transporter/2_preview/upgrading.mdx | 2 -- 1 file changed, 2 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/upgrading.mdx b/product_docs/docs/transporter/2_preview/upgrading.mdx index 4d811c1db3b..de0299d91e8 100644 --- a/product_docs/docs/transporter/2_preview/upgrading.mdx +++ b/product_docs/docs/transporter/2_preview/upgrading.mdx @@ -13,7 +13,5 @@ To upgrade the software: Data migration resumes. - - Incompatible upgrades are documented in the [release notes](rel_notes) and can be identified by major version number increases. From e7e8249ec8e424de717bcc4779e759588541abcb Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Mon, 19 Jun 2023 15:51:44 +0200 Subject: [PATCH 14/47] EDB Transporter - Code blocks type --- .../preparing_oracle_source_databases.mdx | 28 +++++++++---------- .../preparing_postgres_source_databases.mdx | 18 ++++++------ 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 57b5f8f7c99..56216a1ff4d 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -16,7 +16,7 @@ Execute SQL statements with sqlplus or a similar client. This command propmpts you for the password for $ORA_USER: -``` +```shell sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba ``` @@ -45,26 +45,26 @@ Oracle databases can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVE To see the database mode: -``` +```sql archive log list; ``` The returned content indicates the database mode: -``` +```sql Database log mode Archive Mode ...or Database log mode No Archive Mode ``` -If `ARCHIVELOG` mode is enabled, confirm with your DBA that the size of your recovery file destination is appropriate for your workload. +If `ARCHIVELOG` mode is enabled, confirm with your DBA that the size of your recovery file destination is appropriate for your workload. When enabling archive log mode, you need to enable a fast recovery area. For more information on enabling an Oracle fast recovery area, see [Enabling the Fast Recovery Area](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F) in the Oracle documentation. To enable archive logging: -``` +```sql ORACLE_SID=$YOUR_SID sqlplus /nolog CONNECT $SYSDBA_USER/$SYSDBA_USER_PWD AS SYSDBA @@ -93,7 +93,7 @@ Supplemental logging refers to the capture of additional information in Oracle r You can emable supplemental logging at the database and table level. The following command enables minimal supplemental logging required for LogMiner to function at the database level: -``` +```sql ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; ``` @@ -102,7 +102,7 @@ ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; For every table you want to migrate, you must enable supplemental logging. To do so for all columns in a table, apply the following statement: -``` +```sql ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; ``` @@ -118,7 +118,7 @@ Database changes have a limited lifetime on the redo logs before the change is n To examine the state of the database redo logs, use these commands: -``` +```sql SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; GROUP# TYPE MEMBER @@ -139,7 +139,7 @@ SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; This example uses three log groups of size 2000MB. Each group has one file member. This might be too small for many production databases. You can safely adjust the redo logs with synchronous commands such as the following: -``` +```sql ALTER DATABASE ADD LOGFILE GROUP 4 ('/opt/oracle/oradata/ORCLCDB/redo04.log') SIZE 8G; ALTER DATABASE ADD LOGFILE GROUP 5 ('/opt/oracle/oradata/ORCLCDB/redo05.log') SIZE 8G; ALTER DATABASE ADD LOGFILE GROUP 6 ('/opt/oracle/oradata/ORCLCDB/redo06.log') SIZE 8G; @@ -169,7 +169,7 @@ Then, we recommend creating a tablespace for the CDC user. For container databas This example shows creating a tablespace and datafiles for CDC migration. Your database settings might vary, but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size results in a maximum of 32GB of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, you might need to add multiple `AUTOEXTEND` datafiles when this limit might be exceeded. -``` +```sql -- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; @@ -188,7 +188,7 @@ With the tablespace files in place, you can create a user with appropriate acces For a CDB/PDB database setup, note the tablespace default and quota: -``` +```sql CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD DEFAULT TABLESPACE $TABLESPACE_NAME QUOTA UNLIMITED ON $TABLESPACE_NAME @@ -218,7 +218,7 @@ For a CDB/PDB database setup, note the tablespace default and quota: For a non-CDB database: -``` +```sql CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD DEFAULT TABLESPACE $TABLESPACE_NAME QUOTA UNLIMITED ON $TABLESPACE_NAME; @@ -254,7 +254,7 @@ Where: The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support granting access to an entire schema, so you need to do this for each table. -``` +```sql GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER ``` @@ -268,7 +268,7 @@ CDCReader installation comes with a helper script that validates the Oracle conf Run the script without arguments to print the usage: -``` +```shell /opt/cdcreader/oracleConfigValidation.sh ``` diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index fd497b60f20..fd2461ccd3e 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -8,11 +8,13 @@ Configuring Postgres for EDB Transporter requires administrative privileges. Cre Execute SQL statements with psql or a similar client. -``` +Run the next command to connect to the source Database using psql: + +```shell psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME ``` -Where: +Where: - `PG_DB_NAME` is the name of the Postgres database to connect to. - `PG_HOST` is the Postgres database host. - `PG_PORT` is the Postgres database port. @@ -60,7 +62,7 @@ CDCReader installation comes with a helper script that validates the Postgres co Run the script without arguments to print the usage: -``` +```shell /opt/cdcreader/postgresConfigValidation.sh ``` @@ -68,13 +70,13 @@ Run the script without arguments to print the usage: First, create a new role for CDC Migration with `LOGIN` and `REPLICATION` abilities granted: -``` +```sql CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; ``` `$MIGRATION_ROLE` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and also to `$MIGRATION_ROLE`: -``` +```sql CREATE ROLE $REPLICATION_GROUP; GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; @@ -94,13 +96,13 @@ or for each table. For an entire schema's tables, use this command: -``` +```sql ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE ``` For each table, use: -``` +```sql GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE ``` @@ -113,7 +115,7 @@ Where: The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source, you need to create a replication slot for your CDC migration role: -``` +```sql PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); ``` From e0c200a9fcafaf311e16791827c130e6425cfc4a Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Mon, 19 Jun 2023 12:33:29 -0400 Subject: [PATCH 15/47] Changed dollar signs to standard variable braces --- .../preparing_oracle_source_databases.mdx | 154 +++++++++--------- 1 file changed, 77 insertions(+), 77 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 56216a1ff4d..f1638ae3a59 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -14,18 +14,18 @@ Configure an Oracle source database to: Execute SQL statements with sqlplus or a similar client. -This command propmpts you for the password for $ORA_USER: +This command propmpts you for the password for <ORA_USER>: ```shell -sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba +sqlplus @:/ as sysdba ``` Where: - - `$ORA_HOST` is the Oracle DB hostname. - - `$ORA_PORT` is the Oracle DB port. - - `$ORA_SID` is the Oracle System ID for the DB or CDB/PDB combination. - - `$ORA_USER` is an Oracle DB username with `sysdba` privileges. + - `` is the Oracle DB hostname. + - `` is the Oracle DB port. + - `` is the Oracle System ID for the DB or CDB/PDB combination. + - `` is an Oracle DB username with `sysdba` privileges. ## Oracle configuration @@ -65,11 +65,11 @@ To enable archive logging: ```sql -ORACLE_SID=$YOUR_SID sqlplus /nolog +ORACLE_SID= sqlplus /nolog -CONNECT $SYSDBA_USER/$SYSDBA_USER_PWD AS SYSDBA -alter system set db_recovery_file_dest_size = $RECOVERY_FILE_DEST_SIZE; -alter system set db_recovery_file_dest = '$RECOVERY_FILE_DEST' scope=spfile; +CONNECT /_PWD AS SYSDBA +alter system set db_recovery_file_dest_size = ; +alter system set db_recovery_file_dest = '' scope=spfile; shutdown immediate startup mount alter database archivelog; @@ -79,11 +79,11 @@ exit; ``` Where: - - `$YOUR_SID` is the Oracle DB system ID. - - `$SYSDBA_USER` is the name of a user with `sysdba` privileges. - - `$SYSDBA_USER_PWD` is the password for `$SYSDBA_USER`. - - `$RECOVERY_FILE_DEST_SIZE` is the size allowed for the recovery behavior, for example, `100G` for 100 gigabytes. - - `$RECOVERY_FILE_DEST` is the file system path for an Oracle fast recovery area. This path can be a directory, file system, or Oracle Automatic Storage Management. Consult your DB admin for guidance. + - `` is the Oracle DB system ID. + - `` is the name of a user with `sysdba` privileges. + - `` is the password for ``. + - `` is the size allowed for the recovery behavior, for example, `100G` for 100 gigabytes. + - `` is the file system path for an Oracle fast recovery area. This path can be a directory, file system, or Oracle Automatic Storage Management. Consult your DB admin for guidance. The `archive log list` output shows the database is now in archive log mode. @@ -103,10 +103,10 @@ For every table you want to migrate, you must enable supplemental logging. To do so for all columns in a table, apply the following statement: ```sql -ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; +ALTER TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; ``` -Where `$TABLE` is the identifier for the table to migrate. +Where `
` is the identifier for the table to migrate. Use `ALTER` with all table columns you want to migrate. @@ -119,7 +119,7 @@ Database changes have a limited lifetime on the redo logs before the change is n To examine the state of the database redo logs, use these commands: ```sql -SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; +SELECT GROUP#, TYPE, MEMBER FROM V; GROUP# TYPE MEMBER ---------- ------- -------------------------------------------------- @@ -127,7 +127,7 @@ SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; 2 ONLINE /opt/oracle/oradata/ORCLCDB/redo01.log 3 ONLINE /opt/oracle/oradata/ORCLCDB/redo04.log -SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; +SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V; GROUP# ARC MB STATUS ---------- --- --- ---------------- @@ -171,16 +171,16 @@ This example shows creating a tablespace and datafiles for CDC migration. Your d ```sql -- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace -CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +CREATE TABLESPACE DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; -- For CDB/PDB deployments we must specify at least one tablespace datafile for the PDB -CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1/logminer_tbs_1.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +CREATE TABLESPACE DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1/logminer_tbs_1.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; -- Additional data files can be added with as follows -ALTER TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +ALTER TABLESPACE DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; ``` Where: - - `$TABLESPACE_NAME` is the tablespace name for the CDC migration user to use. + - `` is the tablespace name for the CDC migration user to use. #### User creation and access grants @@ -189,78 +189,78 @@ With the tablespace files in place, you can create a user with appropriate acces For a CDB/PDB database setup, note the tablespace default and quota: ```sql - CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD - DEFAULT TABLESPACE $TABLESPACE_NAME - QUOTA UNLIMITED ON $TABLESPACE_NAME + CREATE USER BY + DEFAULT TABLESPACE + QUOTA UNLIMITED ON CONTAINER=ALL; - GRANT CREATE SESSION TO $MIGRATION_USER CONTAINER=ALL; - GRANT SET CONTAINER TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER CONTAINER=ALL; - GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER CONTAINER=ALL; - GRANT LOGMINING TO $MIGRATION_USER CONTAINER=ALL; - GRANT CREATE TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT LOCK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT CREATE SEQUENCE TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; + GRANT CREATE SESSION TO CONTAINER=ALL; + GRANT SET CONTAINER TO CONTAINER=ALL; + GRANT SELECT ON V_\ to CONTAINER=ALL; + GRANT FLASHBACK ANY TABLE TO CONTAINER=ALL; + GRANT SELECT ANY TABLE TO CONTAINER=ALL; + GRANT SELECT_CATALOG_ROLE TO CONTAINER=ALL; + GRANT EXECUTE_CATALOG_ROLE TO CONTAINER=ALL; + GRANT SELECT ANY TRANSACTION TO CONTAINER=ALL; + GRANT SELECT ANY DICTIONARY TO CONTAINER=ALL; + GRANT LOGMINING TO CONTAINER=ALL; + GRANT CREATE TABLE TO CONTAINER=ALL; + GRANT LOCK ANY TABLE TO CONTAINER=ALL; + GRANT CREATE SEQUENCE TO CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR TO CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR_D TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\ TO CONTAINER=ALL; ``` For a non-CDB database: ```sql - CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD - DEFAULT TABLESPACE $TABLESPACE_NAME - QUOTA UNLIMITED ON $TABLESPACE_NAME; - GRANT CREATE SESSION TO $MIGRATION_USER; - GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER; - GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER; - GRANT SELECT ANY TABLE TO $MIGRATION_USER; - GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER; - GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER; - GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER; - GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER; - GRANT LOGMINING TO $MIGRATION_USER; - GRANT CREATE TABLE TO $MIGRATION_USER; - GRANT LOCK ANY TABLE TO $MIGRATION_USER; - GRANT CREATE SEQUENCE TO $MIGRATION_USER; - GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER; - GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER; - GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER; - GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER; + CREATE USER + DEFAULT TABLESPACE + QUOTA UNLIMITED ON ; + GRANT CREATE SESSION TO ; + GRANT SELECT ON V_\ to ; + GRANT FLASHBACK ANY TABLE TO ; + GRANT SELECT ANY TABLE TO ; + GRANT SELECT_CATALOG_ROLE TO ; + GRANT EXECUTE_CATALOG_ROLE TO ; + GRANT SELECT ANY TRANSACTION TO ; + GRANT SELECT ANY DICTIONARY TO ; + GRANT LOGMINING TO ; + GRANT CREATE TABLE TO ; + GRANT LOCK ANY TABLE TO ; + GRANT CREATE SEQUENCE TO ; + GRANT EXECUTE ON DBMS_LOGMNR TO ; + GRANT EXECUTE ON DBMS_LOGMNR_D TO ; + GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\ TO ; ``` Where: - - `$MIGRATION_USER` is the name of the user to create for CDC migration table access. - - `$MIGRATION_USER_PASSWORD` is the password for the migration user. - - `$TABLESPACE_NAME` is the tablespace for `$MIGRATION_USER`. + - `` is the name of the user to create for CDC migration table access. + - `` is the password for the migration user. + - `` is the tablespace for ``. ### Grant `SELECT` on source tables -The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support +The new `` needs `SELECT` access to source tables. Oracle doesn't support granting access to an entire schema, so you need to do this for each table. ```sql -GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER +GRANT SELECT ON TO ``` Where: - - `$MIGRATION_USER` is the name of the user to create for CDC migration table access. - - `$TABLE_NAME` is the name of an individual table to migrate. + - `` is the name of the user to create for CDC migration table access. + - `` is the name of an individual table to migrate. ### Validate configuration From 24e87acc35c0998b411870275295fc05f61745f8 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Tue, 20 Jun 2023 10:15:48 +0200 Subject: [PATCH 16/47] EDB Transporter - Revert "change dollar signs" on oracle table names --- .../preparing_oracle_source_databases.mdx | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index f1638ae3a59..403c6edb9c6 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -119,7 +119,7 @@ Database changes have a limited lifetime on the redo logs before the change is n To examine the state of the database redo logs, use these commands: ```sql -SELECT GROUP#, TYPE, MEMBER FROM V; +SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; GROUP# TYPE MEMBER ---------- ------- -------------------------------------------------- @@ -127,7 +127,7 @@ SELECT GROUP#, TYPE, MEMBER FROM V; 2 ONLINE /opt/oracle/oradata/ORCLCDB/redo01.log 3 ONLINE /opt/oracle/oradata/ORCLCDB/redo04.log -SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V; +SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; GROUP# ARC MB STATUS ---------- --- --- ---------------- @@ -195,7 +195,7 @@ For a CDB/PDB database setup, note the tablespace default and quota: CONTAINER=ALL; GRANT CREATE SESSION TO CONTAINER=ALL; GRANT SET CONTAINER TO CONTAINER=ALL; - GRANT SELECT ON V_\ to CONTAINER=ALL; + GRANT SELECT ON V_\$DATABASE to CONTAINER=ALL; GRANT FLASHBACK ANY TABLE TO CONTAINER=ALL; GRANT SELECT ANY TABLE TO CONTAINER=ALL; GRANT SELECT_CATALOG_ROLE TO CONTAINER=ALL; @@ -208,12 +208,12 @@ For a CDB/PDB database setup, note the tablespace default and quota: GRANT CREATE SEQUENCE TO CONTAINER=ALL; GRANT EXECUTE ON DBMS_LOGMNR TO CONTAINER=ALL; GRANT EXECUTE ON DBMS_LOGMNR_D TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; - GRANT SELECT ON V_\ TO CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_LOGS TO CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO CONTAINER=ALL; + GRANT SELECT ON V_\$LOGFILE TO CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVED_LOG TO CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO CONTAINER=ALL; + GRANT SELECT ON V_\$TRANSACTION TO CONTAINER=ALL; ``` For a non-CDB database: @@ -223,7 +223,7 @@ For a non-CDB database: DEFAULT TABLESPACE QUOTA UNLIMITED ON ; GRANT CREATE SESSION TO ; - GRANT SELECT ON V_\ to ; + GRANT SELECT ON V_$DATABASE to ; GRANT FLASHBACK ANY TABLE TO ; GRANT SELECT ANY TABLE TO ; GRANT SELECT_CATALOG_ROLE TO ; @@ -236,12 +236,12 @@ For a non-CDB database: GRANT CREATE SEQUENCE TO ; GRANT EXECUTE ON DBMS_LOGMNR TO ; GRANT EXECUTE ON DBMS_LOGMNR_D TO ; - GRANT SELECT ON V_\ TO ; - GRANT SELECT ON V_\ TO ; - GRANT SELECT ON V_\ TO ; - GRANT SELECT ON V_\ TO ; - GRANT SELECT ON V_\ TO ; - GRANT SELECT ON V_\ TO ; + GRANT SELECT ON V_\$LOGMNR_LOGS TO ; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO ; + GRANT SELECT ON V_\$LOGFILE TO ; + GRANT SELECT ON V_\$ARCHIVED_LOG TO ; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO ; + GRANT SELECT ON V_\$TRANSACTION TO ; ``` Where: From ee92f6bd236ac24ad80a10bc5f4d448f182533aa Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Tue, 20 Jun 2023 12:10:14 -0400 Subject: [PATCH 17/47] fixed vars in postgres file --- .../preparing_postgres_source_databases.mdx | 46 +++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index fd2461ccd3e..82c571b4624 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -11,16 +11,16 @@ Execute SQL statements with psql or a similar client. Run the next command to connect to the source Database using psql: ```shell -psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME +psql -h -p -U -d ``` Where: - - `PG_DB_NAME` is the name of the Postgres database to connect to. - - `PG_HOST` is the Postgres database host. - - `PG_PORT` is the Postgres database port. - - `PG_USERNAME` is an administrative user who can create and grant roles, alter ownership of tables to migrate, and create a replication slot. + - `` is the name of the Postgres database to connect to. + - `` is the Postgres database host. + - `` is the Postgres database port. + - `` is an administrative user who can create and grant roles, alter ownership of tables to migrate, and create a replication slot. -This command prompts you for the password associated with `PG_USERNAME`. +This command prompts you for the password associated with ``. ## Postgres configuration @@ -71,56 +71,56 @@ Run the script without arguments to print the usage: First, create a new role for CDC Migration with `LOGIN` and `REPLICATION` abilities granted: ```sql -CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; +CREATE ROLE WITH REPLICATION LOGIN PASSWORD ; ``` -`$MIGRATION_ROLE` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and also to `$MIGRATION_ROLE`: +`` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and also to ``: ```sql -CREATE ROLE $REPLICATION_GROUP; -GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; -GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; -ALTER TABLE $TABLE_NAME OWNER TO $REPLICATION_GROUP +CREATE ROLE ; +GRANT TO ; +GRANT TO ; +ALTER TABLE OWNER TO ``` Where: - - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. - - `$ORIGINAL_OWNER` is the original production owner of the table. - - `$REPLICATION_GROUP` is the name of a role used to own the source tables to migrate for publication autocreation. + - `` is the name of the Postgres role or user to use for CDC migration database access. + - `` is the original production owner of the table. + - `` is the name of a role used to own the source tables to migrate for publication autocreation. ### Grant `SELECT` on source tables to the CDC migration role -The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. You can grant access across a schema +The new `` needs `SELECT` access to source tables. You can grant access across a schema or for each table. For an entire schema's tables, use this command: ```sql -ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE +ALTER DEFAULT PRIVILEGES IN SCHEMA GRANT SELECT ON TABLES to ``` For each table, use: ```sql -GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE +GRANT SELECT ON TO ``` Where: - - `$DB_SCHEMA` is the database schema name for the tables to migrate. - - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. - - `$TABLE_NAME` is the name of a table to migrate. + - `` is the database schema name for the tables to migrate. + - `` is the name of the Postgres role or user to use for CDC migration database access. + - `` is the name of a table to migrate. ### Create a logical replication slot The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source, you need to create a replication slot for your CDC migration role: ```sql -PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); +PERFORM pg_create_logical_replication_slot('', 'pgoutput'); ``` Where: - - `$MIGRATION_ROLE` is the name of the Postgres role or user to use for CDC migration database access. + - `` is the name of the Postgres role or user to use for CDC migration database access. - `pgoutput` is the logical decoding plugin supplied by Postgres that EDB Transporter uses. ## More information From a29db9962856e3a36826efccc4ded68a4385e53b Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 21 Jun 2023 09:52:43 +0200 Subject: [PATCH 18/47] EDB Transporter - Typos in preparing oracle source --- .../preparing_oracle_source_databases.mdx | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 403c6edb9c6..9f13ea27257 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -195,7 +195,7 @@ For a CDB/PDB database setup, note the tablespace default and quota: CONTAINER=ALL; GRANT CREATE SESSION TO CONTAINER=ALL; GRANT SET CONTAINER TO CONTAINER=ALL; - GRANT SELECT ON V_\$DATABASE to CONTAINER=ALL; + GRANT SELECT ON V$DATABASE to CONTAINER=ALL; GRANT FLASHBACK ANY TABLE TO CONTAINER=ALL; GRANT SELECT ANY TABLE TO CONTAINER=ALL; GRANT SELECT_CATALOG_ROLE TO CONTAINER=ALL; @@ -208,12 +208,12 @@ For a CDB/PDB database setup, note the tablespace default and quota: GRANT CREATE SEQUENCE TO CONTAINER=ALL; GRANT EXECUTE ON DBMS_LOGMNR TO CONTAINER=ALL; GRANT EXECUTE ON DBMS_LOGMNR_D TO CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_LOGS TO CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO CONTAINER=ALL; - GRANT SELECT ON V_\$LOGFILE TO CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVED_LOG TO CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO CONTAINER=ALL; - GRANT SELECT ON V_\$TRANSACTION TO CONTAINER=ALL; + GRANT SELECT ON V$LOGMNR_LOGS TO CONTAINER=ALL; + GRANT SELECT ON V$LOGMNR_CONTENTS TO CONTAINER=ALL; + GRANT SELECT ON V$LOGFILE TO CONTAINER=ALL; + GRANT SELECT ON V$ARCHIVED_LOG TO CONTAINER=ALL; + GRANT SELECT ON V$ARCHIVE_DEST_STATUS TO CONTAINER=ALL; + GRANT SELECT ON V$TRANSACTION TO CONTAINER=ALL; ``` For a non-CDB database: @@ -223,7 +223,7 @@ For a non-CDB database: DEFAULT TABLESPACE QUOTA UNLIMITED ON ; GRANT CREATE SESSION TO ; - GRANT SELECT ON V_$DATABASE to ; + GRANT SELECT ON V$DATABASE to ; GRANT FLASHBACK ANY TABLE TO ; GRANT SELECT ANY TABLE TO ; GRANT SELECT_CATALOG_ROLE TO ; @@ -236,12 +236,12 @@ For a non-CDB database: GRANT CREATE SEQUENCE TO ; GRANT EXECUTE ON DBMS_LOGMNR TO ; GRANT EXECUTE ON DBMS_LOGMNR_D TO ; - GRANT SELECT ON V_\$LOGMNR_LOGS TO ; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO ; - GRANT SELECT ON V_\$LOGFILE TO ; - GRANT SELECT ON V_\$ARCHIVED_LOG TO ; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO ; - GRANT SELECT ON V_\$TRANSACTION TO ; + GRANT SELECT ON V$LOGMNR_LOGS TO ; + GRANT SELECT ON V$LOGMNR_CONTENTS TO ; + GRANT SELECT ON V$LOGFILE TO ; + GRANT SELECT ON V$ARCHIVED_LOG TO ; + GRANT SELECT ON V$ARCHIVE_DEST_STATUS TO ; + GRANT SELECT ON V$TRANSACTION TO ; ``` Where: From c6d7d5a50e1b57a45fa606f392e5c9b3313f2ff0 Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 9 Mar 2023 16:56:35 -0500 Subject: [PATCH 19/47] adding product to the required files hide version --- product_docs/docs/transporter/alpha/index.mdx | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 product_docs/docs/transporter/alpha/index.mdx diff --git a/product_docs/docs/transporter/alpha/index.mdx b/product_docs/docs/transporter/alpha/index.mdx new file mode 100644 index 00000000000..d740d1e899a --- /dev/null +++ b/product_docs/docs/transporter/alpha/index.mdx @@ -0,0 +1,4 @@ +--- +title: Transporter +hideVersion: true +--- \ No newline at end of file From e81bfc4ebc360aa5c267922b4f92bfbd9146278e Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Wed, 7 Jun 2023 12:10:26 +0200 Subject: [PATCH 20/47] EDB Transporter preview docs --- .../transporter/preview/installing/index.mdx | 21 ++ .../preview/installing/installing_debian.mdx | 64 +++++ .../preview/installing/installing_rhel.mdx | 57 ++++ .../preview/preparing_db/index.mdx | 18 ++ .../preparing_oracle_source_databases.mdx | 259 ++++++++++++++++++ .../preparing_postgres_source_databases.mdx | 118 ++++++++ .../preparing_target_databases.mdx | 12 + .../transporter/preview/release_notes.mdx | 15 + .../preview/supported_versions.mdx | 38 +++ .../transporter/preview/usage_overview.mdx | 82 ++++++ 10 files changed, 684 insertions(+) create mode 100644 product_docs/docs/transporter/preview/installing/index.mdx create mode 100644 product_docs/docs/transporter/preview/installing/installing_debian.mdx create mode 100644 product_docs/docs/transporter/preview/installing/installing_rhel.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/index.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx create mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx create mode 100644 product_docs/docs/transporter/preview/release_notes.mdx create mode 100644 product_docs/docs/transporter/preview/supported_versions.mdx create mode 100644 product_docs/docs/transporter/preview/usage_overview.mdx diff --git a/product_docs/docs/transporter/preview/installing/index.mdx b/product_docs/docs/transporter/preview/installing/index.mdx new file mode 100644 index 00000000000..7e4caa64d60 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/index.mdx @@ -0,0 +1,21 @@ +--- +navTitle: "Installing" +title: "Installing EDB Transporter Software" +hideVersion: true +--- + + + +## Installation Guidance + +- [Installation for Debian and derivatives](installing_debian) +- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) + +## Upgrade Guidance + +Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt in any data migration. +These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter +are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. + +Incompatible upgrades are documented in the [release notes](../release_notes/#release_notes) and can be identified +by major version number increases. diff --git a/product_docs/docs/transporter/preview/installing/installing_debian.mdx b/product_docs/docs/transporter/preview/installing/installing_debian.mdx new file mode 100644 index 00000000000..48f6e6c3646 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/installing_debian.mdx @@ -0,0 +1,64 @@ +--- +title: "Installation for Debian and derivatives" +--- + + + +## Prerequisites / Repository Setup + +Quick Setup: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ + | sudo -E bash +``` + +Specific distribution or architecture: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ + | sudo -E distro=some-distro codename=some-codename arch=some-arch bash +``` + +Install Manually: + +```shell +distro="some-distro" # for example "ubuntu" +codename="some-codename" # for example "xenial" + +apt-get install -y debian-keyring # debian only +apt-get install -y debian-archive-keyring # debian only +apt-get install -y apt-transport-https +# For Debian Stretch, Ubuntu 16.04 and later +keyring_location=/usr/share/keyrings/enterprisedb-dev-archive-keyring.gpg +# For Debian Jessie, Ubuntu 15.10 and earlier +keyring_location=/etc/apt/trusted.gpg.d/enterprisedb-dev.gpg +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' | gpg --dearmor >> ${keyring_location} +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.txt?distro=${distro}&codename=${codename}' > /etc/apt/sources.list.d/enterprisedb-dev.list +apt-get update +``` + +How to remove the repository: + +```shell +rm /etc/apt/sources.list.d/enterprisedb-dev.list +apt-get clean +rm -rf /var/lib/apt/lists/* +apt-get update +``` + +## Installation + +CDCReader: + +```shell +sudo apt-get install cdcreader=1.4-1.4766136665.17.1.jammy +``` + +CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/preview/installing/installing_rhel.mdx new file mode 100644 index 00000000000..324f11c49b8 --- /dev/null +++ b/product_docs/docs/transporter/preview/installing/installing_rhel.mdx @@ -0,0 +1,57 @@ +--- +title: "Installation for Red Hat Enterprise Linux (RHEL) and derivatives" +--- + + + +## Prerequisites / Repository Setup + +Quick setup: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ + | sudo -E bash +``` + +Specific distribution or architecture: + +```shell +curl -1sLf \ + 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ + | sudo -E distro=some-distro codename=some-codename arch=some-arch bash +``` + +Install Manually: + +```shell +distro="some-distro" # for example "el" +codename="some-codename" # for example "8" + +yum install yum-utils pygpgme +rpm --import 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' +curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.rpm.txt?distro=${distro}&codename=${codename}' > /tmp/enterprisedb-dev.repo +yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' +yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' +``` + +How to remove the repository: + +```shell +rm /etc/yum.repos.d/enterprisedb-dev.repo +rm /etc/yum.repos.d/enterprisedb-dev-source.repo +``` + +## Installation + +CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/preparing_db/index.mdx b/product_docs/docs/transporter/preview/preparing_db/index.mdx new file mode 100644 index 00000000000..8ca92c4a60e --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/index.mdx @@ -0,0 +1,18 @@ +--- +title: "Preparing Databases" +hideVersion: true + +navigation: + - preparing_oracle_source_databases + - preparing_postgres_source_databases + - preparing_target_databases +--- + +Select a link to access the applicable preparing instructions: + +## Source Databases +#### [Oracle](preparing_oracle_source_databases) +#### [Postgres](preparing_postgres_source_databases) + +## [Target Databases](preparing_target_databases) + diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx new file mode 100644 index 00000000000..59443b57145 --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx @@ -0,0 +1,259 @@ +--- +title: "Preparing Oracle Source Databases" +--- + + + +Configuring Oracle for EDB Transporter migrations requires a user with `sysdba` privileges. + +An Oracle source database should be configured to enable archive log mode, enable supplemental logging for the database and table columns of interest, +ensure adequate redo log space is available, and to create a user with limited privileges to carry out the data migration. + +SQL statements in this guidance should be executed with `sqlplus` or a similar client. + +``` +# You will be prompted for the password for $ORA_USER +sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba +``` + +Reference: + - `$ORA_HOST`: The Oracle DB hostname + - `$ORA_PORT`: The Oracle DB port + - `$ORA_SID`: The Oracle System ID for the DB or CDB/PDB combination + - `$ORA_USER`: An Oracle DB username capable of using `sysdba` privileges + +## Oracle Configuration + +### 1. Enable Archive Log mode + +Oracle Database can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVELOG` mode, filled redo logs are archived rather than put back into log rotation to be overwritten. This is necessary for the Change-Data-Capture (CDC) process to use LogMiner and produce a complete history of changes after an initial consistent snapshot. + +To see which mode a database is in, use the following command: + +``` +archive log list; +``` + +The returned content will indicate which mode the database is in. + +``` +Database log mode Archive Mode +...or +Database log mode No Archive Mode +``` + +If `ARCHIVELOG` mode is enabled, confirm the size of your recovery file destination is appropriate +for your workload with your DBA. If archive logging is not enabled follow the guidance below. + +It's necessary to enable a fast recovery area when enabling archive log mode. For more information on enabling an Oracle fast recovery area, see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F). + +Below, values to be specified by the user are represented in a `$FOO` naming format. + +``` +ORACLE_SID=$YOUR_SID sqlplus /nolog + +CONNECT $SYSDBA_USER/$SYSDBA_USER_PWD AS SYSDBA +alter system set db_recovery_file_dest_size = $RECOVERY_FILE_DEST_SIZE; +alter system set db_recovery_file_dest = '$RECOVERY_FILE_DEST' scope=spfile; +shutdown immediate +startup mount +alter database archivelog; +alter database open; +archive log list; +exit; +``` + +The `archive log list` output should indicate the database is now in archive log mode. + +Reference: + - `$YOUR_SID`: The Oracle DB System ID + - `$SYSDBA_USER`: The name of a user with `sysdba` privileges + - `$SYSDBA_USER_PWD`: The password for `$SYSDBA_USER` + - `$RECOVERY_FILE_DEST_SIZE`: The size allowed for the recovery behavior + - e.g. `100G` for 100 GigaBytes + - `$RECOVERY_FILE_DEST`: The filesystem path for an Oracle fast recovery area + - This may be a directory, filesystem, or Oracle Automatic Storage Management; consult your DB admins + +### 2. Enable Database Supplemental Logging + +Supplemental logging refers to the capture of additional information, such as "before" state, in Oracle redo logs. This extra redo log information is necessary for some log-based applications, such as EDB Transporter, to capture change events. Please see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) for additional information. + +Supplemental logging can be enabled at the database and table level. The following command will enable minimal supplemental logging at the database level required for LogMiner to function. + +``` +ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; +``` + +### 3. Enable Supplemental Logging for Table Columns + +For every table we'd like to migrate we must enable supplemental logging. To do +so for all columns in a table the following statement can be applied: + +``` +ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; +``` + +`ALTER` all table-columns desired for migration. + +Reference: + - `$TABLE`: The identifier for the table to be migrated + +### 4. Verify Redo Logs for Adequate Count / Size + +EDB Transporter's migration process involves two phases -- the first is a consistent snapshot and the second is continuous streaming of database changes. This stream of database changes is powered by LogMiner and the Oracle DB redo logs. + +Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Additionally, undersized logs will cause frequent log switching and impact migration performance. + +The following commands can be used to examine the state of the database redo logs. +``` +SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; + + GROUP# TYPE MEMBER +---------- ------- -------------------------------------------------- + 1 ONLINE /opt/oracle/oradata/ORCLCDB/redo03.log + 2 ONLINE /opt/oracle/oradata/ORCLCDB/redo01.log + 3 ONLINE /opt/oracle/oradata/ORCLCDB/redo04.log + +SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; + + GROUP# ARC MB STATUS +---------- --- --- ---------------- + 1 YES 2000 INACTIVE + 3 YES 2000 INACTIVE + 3 NO 2000 CURRENT +``` + +In the above example we see three log groups, each with one file-member, of size 2000 MegaBytes. This may be too +small for many production databases. The redo logs can be safely adjusted with synchronous commands as in the following +statements: + +``` + ALTER DATABASE ADD LOGFILE GROUP 4 ('/opt/oracle/oradata/ORCLCDB/redo04.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 5 ('/opt/oracle/oradata/ORCLCDB/redo05.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 6 ('/opt/oracle/oradata/ORCLCDB/redo06.log') SIZE 8G; + ALTER DATABASE ADD LOGFILE GROUP 7 ('/opt/oracle/oradata/ORCLCDB/redo07.log') SIZE 8G; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER SYSTEM ARCHIVE LOG CURRENT; + ALTER SYSTEM CHECKPOINT; + ALTER DATABASE DROP LOGFILE GROUP 1; + ALTER DATABASE DROP LOGFILE GROUP 2; + ALTER DATABASE DROP LOGFILE GROUP 3; +``` + +This would result in four new 8 GigaByte log groups, each group having a single log file. + +Consult with your DBA for appropriate production sizing. + +### 5. Create a User with Limited Privileges for Data Migration + +#### Tablespace Preparation + +It's necessary to provide a database user with adquate roles to carry out the change-data-capture (CDC) process. + +First, it's recommended to create a tablespace for the CDC user. For container databases we'll need to create a pluggable database as well. + +The following statements are examples of creating a tablespace and datafiles for CDC migration. Your database settings may vary but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size will result in a maximum of 32GB +of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, it may be necessary to add multiple `AUTOEXTEND` datafiles +when this limit may be exceeded. + +``` +-- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace +CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; + +-- For CDB/PDB deployments we must specify at least one tablespace datafile for the PDB +CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1/logminer_tbs_1.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +-- Additional data files can be added with as follows +ALTER TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; +``` + +Reference: + - `$TABLESPACE_NAME`: The tablespace name to be used by the CDC migration user + +#### User Creation and Access Grants + +With the tablespace files in place a user can be created with appropriate access grants +for CDC migration. + +For a CDB/PDB database setup, note the tablespace default and quota: +``` + CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD + DEFAULT TABLESPACE $TABLESPACE_NAME + QUOTA UNLIMITED ON $TABLESPACE_NAME + CONTAINER=ALL; + GRANT CREATE SESSION TO $MIGRATION_USER CONTAINER=ALL; + GRANT SET CONTAINER TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER CONTAINER=ALL; + GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER CONTAINER=ALL; + GRANT LOGMINING TO $MIGRATION_USER CONTAINER=ALL; + GRANT CREATE TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT LOCK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; + GRANT CREATE SEQUENCE TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER CONTAINER=ALL; + GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER CONTAINER=ALL; + GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; +``` + +For a non-CDB database: + +``` + CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD + DEFAULT TABLESPACE $TABLESPACE_NAME + QUOTA UNLIMITED ON $TABLESPACE_NAME; + GRANT CREATE SESSION TO $MIGRATION_USER; + GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER; + GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER; + GRANT SELECT ANY TABLE TO $MIGRATION_USER; + GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER; + GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER; + GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER; + GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER; + GRANT LOGMINING TO $MIGRATION_USER; + GRANT CREATE TABLE TO $MIGRATION_USER; + GRANT LOCK ANY TABLE TO $MIGRATION_USER; + GRANT CREATE SEQUENCE TO $MIGRATION_USER; + GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER; + GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER; + GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER; + GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER; + GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER; + GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER; +``` + +Reference: + - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access + - `$MIGRATION_USER_PASSWORD`: The password for the migration user + - `$TABLESPACE_NAME`: The tablespace for `$MIGRATION_USER` + +### 3. Grant `SELECT` on Source Tables + +The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support +granting access to an entire schema so this needs to be done table-by-table. + +``` +GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER +``` + +Reference: + - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access + - `$TABLE_NAME`: The name of an individual table to be migrated + +## More Information + + After completing the preparation outlined in this guide your database is ready for CDC migration. + + For additional information, feel free to reference the [Debezium Oracle Connector](https://debezium.io/documentation/reference/2.2/index.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx new file mode 100644 index 00000000000..dbb1b745c33 --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx @@ -0,0 +1,118 @@ +--- +title: "Preparing Postgres Source Databases" +--- + + + +Configuring Postgres for EDB Transporter requires administrative privileges. A CDC migration role with limited privileges +is created for data migration. + +SQL statements in this guidance should be executed with `psql` or a similar client. + +``` +# You will be promted for the password associated with `PG_USERNAME` +psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME +``` + +Reference: + - `PG_DB_NAME`: The name of the Postgres database to connect to + - `PG_HOST`: The Postgres database host + - `PG_PORT`: The Postgres database port + - `PG_USERNAME`: An administrative user capable of creating roles, granting roles, altering ownership of tables-to-migrate, and creating a replication slot + +## Postgres Configuration + +### 1. Verify Postgres Configuration + +A few configuration entries for Postgres should be verified or set. + +1. Ensure the `wal_level` is configured as `logical`. + +The CDC migration process leverages Postgres logical decoding. Setting this to `logical` enables logical decoding of the Postgres Write-Ahead-Log (WAL). + +2. Ensure `max_wal_senders` configured appropriately + +`max_wal_senders` should be set to at least `1` if EDB Transporter migration is the first streaming +client for your database. Other streaming clients may be present and you should consult your DBA +for the appropriate value for streaming client connectivity. + +3. Ensure `max_replication_slots` configured appropriately + +`max_replication_slots` must be at least `1` for the CDC migration process. This value may be +higher if your organization makes use of Postgres replication capabilities. + +Please see the [Postgres replication documentation](https://www.postgresql.org/docs/current/runtime-config-replication.html) +for more information. + +4. Ensure `max_wal_size` configured to ensure adequate WAL LSN lifetime + +The `max_wal_size` value should be large enough that production traffic is generating +mostly timed-checkpoints and not requested-checkpoints based on WAL size. + +Additionally, the streaming migration process requires changes to be available in the WAL until +they can be streamed to durable message storage in EDB Transporter's cloud infrastructure. Setting +`max_wal_size` too small can not only impact performance but interfere with the migration process by allowing +Postgres LSNs to be dropped from the WAL before they can be streamed. + +Please see this [EDB blog post on tuning](https://www.enterprisedb.com/blog/tuning-maxwalsize-postgresql) `max_wal_size`. + +Please see the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html) +for more information. + +### 2. Create New Roles and Grant Acccess for CDC Migration + +First create a new role for CDC Migration with the `LOGIN` and `REPLICATION` abilities granted. + +``` +CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; +``` + +`$MIGRATION_ROLE` needs to own the source tables in order to autocreate Postgres Publications. Because the source tables are already owned by another role, we create a role / user which can act as the new owner and grant this "replication group" role to +both the current table owner and also to `$MIGRATION_ROLE`. + +``` +CREATE ROLE $REPLICATION_GROUP; +GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; +GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; +ALTER TABLE $TABLE_NAME OWNER TO $REPLICATION_GROUP +``` +Reference: + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `$ORIGINAL_OWNER`: The original production owner of the table + - `$REPLICATION_GROUP`: The name of a role used to own the source tables to be migrated -- for Publication autocreation + +### 3. Grant `SELECT` on Source Tables to the CDC Migration Role + +The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. Access can be granted across a schema +or on a table-by-table basis. + +``` +-- For an entire schema's tables +ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE + +-- Table by table +GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE +``` + +Reference: + - `$DB_SCHEMA`: The database schema name for the tables to be migrated + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `$TABLE_NAME`: The name of an individual table to be migrated + +### 4. Create a Logical Replication Slot + +The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source we'll need to create a replication slot for our CDC migration role. + +``` +PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); +``` + +Reference: + - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access + - `pgoutput`: The logical decoding plugin used by EDB Transporter, supplied by Postgres. + +## More Information + + After completing the preparation outlined in this guide your database is ready for CDC migration. + + For additional information, feel free to reference the [Debezium Postgres Connector](https://debezium.io/documentation/reference/stable/connectors/postgresql.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx new file mode 100644 index 00000000000..d818c7255df --- /dev/null +++ b/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx @@ -0,0 +1,12 @@ +--- +title: "Preparing Target Databases" +--- + + + +Migration data is written to the target database over a normal JDBC connection. It's expected that a database user is available with permissions to write to target tables. + +The target database schema must exist prior to starting the data migration. +EDB Transporter provides a fault-tolerant method for migrating Change-Data-Capture (CDC) events to the target. If a CDC event doesn't match the target schema CDCWriter will stop writing data to the target until the schema mismatched is resolved. + +Target tables should be empty. If a target table has rows, such as from testing, these should be removed e.g. with `TRUNCATE`. \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/release_notes.mdx b/product_docs/docs/transporter/preview/release_notes.mdx new file mode 100644 index 00000000000..d36d0da0b58 --- /dev/null +++ b/product_docs/docs/transporter/preview/release_notes.mdx @@ -0,0 +1,15 @@ +--- +title: "Release Notes" +--- + + + +# Version 2.0.0 + +New features, enhancements, bug fixes, and other changes in EDB Transporter 2.0.0 include: + +| Type | Description | +|---------------|-----------------------------------------------------------------------------------------------| +| Major Release | Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing | +| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | +| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | diff --git a/product_docs/docs/transporter/preview/supported_versions.mdx b/product_docs/docs/transporter/preview/supported_versions.mdx new file mode 100644 index 00000000000..eb86deb0356 --- /dev/null +++ b/product_docs/docs/transporter/preview/supported_versions.mdx @@ -0,0 +1,38 @@ +--- +title: "Product compatibility" +--- + + + +Supported Database and Operating System Versions +-- +Database Versions +--- +The following database versions are supported -- please see additional notes in later sections. + +| Database Version | Supported | Notes | +|------------------|-----------|-------| +| Postgres 11 - 15 | Y | | +| EPAS 11 - 15 | Y | | +| Oracle 11g | Y | | +| Oracle 12c | Y | | +| Oracle 18c | Y | | +| Oracle 19c | Y | | +| Oracle 21c | Y | | + +Oracle +---- +The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. Please see +our [Oracle source configuration guidance](preparing_oracle_source_databases/#preparing_oracle_source_databases). + +Both Container Databases (CDB/PDB) and non-CDB sources are supported. + +Postgres / EPAS +---- +Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_postgres_source_databases/#preparing_postgres_source_databases). + +When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_target_databases/#preparing_target_databases). + +Operating Systems +--- +EDB Transporter's customer-side software can be run on Linux and Mac OS systems. The source/target database may be run on any system including Windows. diff --git a/product_docs/docs/transporter/preview/usage_overview.mdx b/product_docs/docs/transporter/preview/usage_overview.mdx new file mode 100644 index 00000000000..5e4e06769b1 --- /dev/null +++ b/product_docs/docs/transporter/preview/usage_overview.mdx @@ -0,0 +1,82 @@ +--- +title: "Usage Overview" +--- + + + +The EDB Transporter migration lifecycle is as follows: + - Ensure schema compatibility + - Prepare source and target databases + - Install and run customer-side EDB Transporter software + - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) + - EDB staff deploys cloud infrastructure (control components and a message bus) + - EDB staff initiate and manage the data migration until completion + - Integrity validation and post-migration checks are performed + - Customer-side software can be stopped and removed + - Cloud infrastructure is deprovisioned by EDB staff + +Schema Compatibility +--- + +Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) +prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. +A limited number of Oracle data types and features are not supported by EDB Transporter. + +Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed +comments on supported data types. Unsupported data types are briefly detailed below. + +Unsupported Oracle Data Type +--- + - BFILE + - LONG + - LONG RAW + - RAW + - UROWID + - User-defined types (REF, Varrays, Nested Tables) + - ANY + - XML + - Spatial + +EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. + +Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. + + +Source and Target DB Preparation +--- +See our guides on preparing [Oracle sources](preparing_oracle_source_databases/#preparing_oracle_sources), +[Postgres sources](preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_target_databases/#preparing_target_databases). + +Installing and Configuring EDB Transporter Software +--- +See our guide on [installing and configuring](installing_customer_side_software/#installing_customer_side_software) EDB Transporter software. +EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). + +Migrating Data +--- +Migration Creation and Status +---- +Source and target database schema are used to specify data to migrate along with +configurabilty for performance or e.g. excluding source data. + +Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to +execute Change-Data-Capture (CDC) event streaming from source to target database. An initial +snapshot occurs followed by a transition to the streaming phase of CDC event production. + +Managing Ongoing Migrations +---- +EDB can work with customers and manage in-progress migrations in order to: + - Exclude problematic source data + - Pause and resume migrations + - Optimize migration performance + +Several indepedent migrations can be configured and managed using the same CDCReader, CDCWriter, +and EDB-managed cloud EDB Transporter components. + +Migration Completion and Removal +---- +To complete the migration, source database traffic should be stopped and streaming migration +allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. +Target database integrity can be validated and application cutover to the target performed. + +After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. From e351df49faa59ac2b72debf22887fdf7810ba3b8 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Thu, 6 Jul 2023 10:59:03 -0400 Subject: [PATCH 21/47] baby steps --- install_template/config.yaml | 7 ++++++- .../templates/products/transporter/base.njk | 15 +++++++++++++++ .../products/transporter/rhel-8-or-ol-8.njk | 5 +++++ 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 install_template/templates/products/transporter/base.njk create mode 100644 install_template/templates/products/transporter/rhel-8-or-ol-8.njk diff --git a/install_template/config.yaml b/install_template/config.yaml index b75a248b7d3..ba0a3e9484f 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -514,6 +514,11 @@ products: - name: SLES 15 arch: ppc64le supported versions: [41] + - name: EDB Transporter + platforms: + - name: RHEL 8 or OL 8 + arch: x86_64 + supported versions: [2] - name: Failover Manager platforms: - name: CentOS 7 @@ -990,4 +995,4 @@ products: supported versions: [7] - name: SLES 15 arch: ppc64le - supported versions: [7] \ No newline at end of file + supported versions: [7] diff --git a/install_template/templates/products/transporter/base.njk b/install_template/templates/products/transporter/base.njk new file mode 100644 index 00000000000..9e079f1856e --- /dev/null +++ b/install_template/templates/products/transporter/base.njk @@ -0,0 +1,15 @@ +{% extends "platformBase/" + platformBaseTemplate + '.njk' %} +{% set packageName = packageName or 'cdcreader-<1.x>-1.4766136665.17.1.el8.jammy' %} +{% import "platformBase/_deploymentConstants.njk" as deploy %} +{% block frontmatter %} +{# + If you modify deployment path here, please first copy the old expression + and add it to the list under "redirects:" below - this ensures we don't + break any existing links. +#} +deployPath: transporter/{{ product.version }}/installing/linux_{{platform.arch}}/transporter_{{deploy.map_platform[platform.name]}}.mdx +{% endblock frontmatter %} + +{% block postinstall %} +Where `<1.x>` is the version of Transporter that you are installing. For example, if you are installing version 1.4, the package name would be `cdcreader=1.4-1.4766136665.17.1.x86_64`. +{% endblock postinstall %} diff --git a/install_template/templates/products/transporter/rhel-8-or-ol-8.njk b/install_template/templates/products/transporter/rhel-8-or-ol-8.njk new file mode 100644 index 00000000000..5e75d7795d8 --- /dev/null +++ b/install_template/templates/products/transporter/rhel-8-or-ol-8.njk @@ -0,0 +1,5 @@ +{% extends "products/transporter/base.njk" %} +{% set platformBaseTemplate = "rhel-8-or-ol-8" %} +{% block installCommand %} +{{ super() }} +{% endblock installCommand %} \ No newline at end of file From 1c9d1084136f58da2c93a109a6cd2dc34e289f3f Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Thu, 6 Jul 2023 11:25:00 -0400 Subject: [PATCH 22/47] stumbling baby steps --- .../products/transporter/almalinux-8-or-rocky-linux-8.njk | 5 +++++ .../templates/products/transporter/rhel-8-or-ol-8.njk | 5 ++--- 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk diff --git a/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk b/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk new file mode 100644 index 00000000000..4dbea6df0a6 --- /dev/null +++ b/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk @@ -0,0 +1,5 @@ +{% extends "products/transporter/base.njk" %} +{% set platformBaseTemplate = "almalinux-8-or-rocky-linux-8" %} +{% block installCommand %} +{{ super() }} +{% endblock installCommand %} \ No newline at end of file diff --git a/install_template/templates/products/transporter/rhel-8-or-ol-8.njk b/install_template/templates/products/transporter/rhel-8-or-ol-8.njk index 5e75d7795d8..4ea047a7129 100644 --- a/install_template/templates/products/transporter/rhel-8-or-ol-8.njk +++ b/install_template/templates/products/transporter/rhel-8-or-ol-8.njk @@ -1,5 +1,4 @@ {% extends "products/transporter/base.njk" %} {% set platformBaseTemplate = "rhel-8-or-ol-8" %} -{% block installCommand %} -{{ super() }} -{% endblock installCommand %} \ No newline at end of file +{% set packageName %}cdcreader-<1.x>-1.4766136665.17.1.el8.x86_64{% endset %} +{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file From e5faf399359cc2d5e77802706cfe6f0ca68010b2 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 10 Jul 2023 11:24:34 -0400 Subject: [PATCH 23/47] more tentative edits --- install_template/config.yaml | 39 +++++++++++++++++++ .../templates/products/transporter/base.njk | 2 +- .../products/transporter/debian-10.njk | 11 ++++++ .../templates/products/transporter/debian.njk | 4 ++ .../templates/products/transporter/index.njk | 12 ++++++ .../products/transporter/ppc64le_index.njk | 7 ++++ .../products/transporter/x86_64_index.njk | 7 ++++ 7 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 install_template/templates/products/transporter/debian-10.njk create mode 100644 install_template/templates/products/transporter/debian.njk create mode 100644 install_template/templates/products/transporter/index.njk create mode 100644 install_template/templates/products/transporter/ppc64le_index.njk create mode 100644 install_template/templates/products/transporter/x86_64_index.njk diff --git a/install_template/config.yaml b/install_template/config.yaml index ba0a3e9484f..fe16b271a7b 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -516,9 +516,48 @@ products: supported versions: [41] - name: EDB Transporter platforms: + - name: CentOS 7 + arch: x86_64 + supported versions: [2] + - name: AlmaLinux 8 or Rocky Linux 8 + arch: x86_64 + supported versions: [2] + - name: RHEL 7 or OL 7 + arch: x86_64 + supported versions: [2] - name: RHEL 8 or OL 8 arch: x86_64 supported versions: [2] + - name: RHEL 8 + arch: ppc64le + supported versions: [2] + - name: Debian 10 + arch: x86_64 + supported versions: [2] + - name: Debian 11 + arch: x86_64 + supported versions: [2] + - name: Ubuntu 18.04 + arch: x86_64 + supported versions: [2] + - name: Ubuntu 20.04 + arch: x86_64 + supported versions: [2] + - name: Ubuntu 22.04 + arch: x86_64 + supported versions: [2] + - name: SLES 12 + arch: x86_64 + supported versions: [2] + - name: SLES 12 + arch: ppc64le + supported versions: [2] + - name: SLES 15 + arch: x86_64 + supported versions: [2] + - name: SLES 15 + arch: ppc64le + supported versions: [2] - name: Failover Manager platforms: - name: CentOS 7 diff --git a/install_template/templates/products/transporter/base.njk b/install_template/templates/products/transporter/base.njk index 9e079f1856e..9a1dcefc7e6 100644 --- a/install_template/templates/products/transporter/base.njk +++ b/install_template/templates/products/transporter/base.njk @@ -11,5 +11,5 @@ deployPath: transporter/{{ product.version }}/installing/linux_{{platform.arch}} {% endblock frontmatter %} {% block postinstall %} -Where `<1.x>` is the version of Transporter that you are installing. For example, if you are installing version 1.4, the package name would be `cdcreader=1.4-1.4766136665.17.1.x86_64`. +Where `<1.x>` is the version of EDB Transporter that you are installing. For example, if you are installing version 1.4, the package name would be `cdcreader=1.4-1.4766136665.17.1.x86_64`. {% endblock postinstall %} diff --git a/install_template/templates/products/transporter/debian-10.njk b/install_template/templates/products/transporter/debian-10.njk new file mode 100644 index 00000000000..d9ace3b9be7 --- /dev/null +++ b/install_template/templates/products/transporter/debian-10.njk @@ -0,0 +1,11 @@ +{% extends "products/transporter/debian.njk" %} +{% set platformBaseTemplate = "debian-10" %} +{% set packageName %}edb-postgresextended-{% endset %} +{% block installCommand %} +```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/transporter/debian.njk b/install_template/templates/products/transporter/debian.njk new file mode 100644 index 00000000000..47ea394670a --- /dev/null +++ b/install_template/templates/products/transporter/debian.njk @@ -0,0 +1,4 @@ +{% extends "products/transporter/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. + +```shell{% endblock debian_ubuntu %} \ No newline at end of file diff --git a/install_template/templates/products/transporter/index.njk b/install_template/templates/products/transporter/index.njk new file mode 100644 index 00000000000..8ce81a4bb2f --- /dev/null +++ b/install_template/templates/products/transporter/index.njk @@ -0,0 +1,12 @@ +{% extends "platformBase/index.njk" %} +{% set productShortname="transporter" %} + +{% block frontmatter %} +{{ super() }} +{% endblock frontmatter %} +{% block navigation %} +- prerequisites +- linux_x86_64 +- linux_ppc64le +- install_details +{% endblock navigation %} diff --git a/install_template/templates/products/transporter/ppc64le_index.njk b/install_template/templates/products/transporter/ppc64le_index.njk new file mode 100644 index 00000000000..2b2dc3dd5dc --- /dev/null +++ b/install_template/templates/products/transporter/ppc64le_index.njk @@ -0,0 +1,7 @@ + +{% extends "platformBase/ppc64le_index.njk" %} +{% set productShortname="transporter" %} + +{% block frontmatter %} +{{ super() }} +{% endblock frontmatter %} diff --git a/install_template/templates/products/transporter/x86_64_index.njk b/install_template/templates/products/transporter/x86_64_index.njk new file mode 100644 index 00000000000..dff6034cccb --- /dev/null +++ b/install_template/templates/products/transporter/x86_64_index.njk @@ -0,0 +1,7 @@ + +{% extends "platformBase/x86_64_index.njk" %} +{% set productShortname="transporter" %} + +{% block frontmatter %} +{{ super() }} +{% endblock frontmatter %} From 5ceefe803b0065bdd334602bd2edb214b2211de4 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Wed, 12 Jul 2023 08:23:07 -0400 Subject: [PATCH 24/47] mostly completed system for EDB Transporter --- install_template/config.yaml | 12 ----- .../almalinux-8-or-rocky-linux-8.njk | 5 ++ .../{transporter => edb-transporter}/base.njk | 17 +++++-- .../products/edb-transporter/centos-7.njk | 5 ++ .../products/edb-transporter/debian-10.njk | 2 + .../products/edb-transporter/debian-11.njk | 2 + .../products/edb-transporter/debian-9.njk | 2 + .../debian.njk | 2 +- .../index.njk | 3 -- .../edb-transporter/rhel-7-or-ol-7.njk | 5 ++ .../edb-transporter/rhel-8-or-ol-8.njk | 5 ++ .../products/edb-transporter/ubuntu-18.04.njk | 2 + .../products/edb-transporter/ubuntu-20.04.njk | 2 + .../products/edb-transporter/ubuntu-22.04.njk | 2 + .../products/edb-transporter/ubuntu.njk | 1 + .../x86_64_index.njk | 0 .../almalinux-8-or-rocky-linux-8.njk | 5 -- .../products/transporter/debian-10.njk | 11 ----- .../products/transporter/ppc64le_index.njk | 7 --- .../products/transporter/rhel-8-or-ol-8.njk | 4 -- .../docs/transporter/2/getting_started.mdx | 48 +++++++++++++++++++ product_docs/docs/transporter/2/index.mdx | 30 ++++++++++++ .../docs/transporter/2/known_issues.mdx | 7 +++ .../docs/transporter/2/limitations.mdx | 23 +++++++++ .../docs/transporter/2/migrating_data.mdx | 29 +++++++++++ .../docs/transporter/2/supported_versions.mdx | 32 +++++++++++++ .../docs/transporter/2/terminology.mdx | 19 ++++++++ product_docs/docs/transporter/2/upgrading.mdx | 17 +++++++ 28 files changed, 252 insertions(+), 47 deletions(-) create mode 100644 install_template/templates/products/edb-transporter/almalinux-8-or-rocky-linux-8.njk rename install_template/templates/products/{transporter => edb-transporter}/base.njk (55%) create mode 100644 install_template/templates/products/edb-transporter/centos-7.njk create mode 100644 install_template/templates/products/edb-transporter/debian-10.njk create mode 100644 install_template/templates/products/edb-transporter/debian-11.njk create mode 100644 install_template/templates/products/edb-transporter/debian-9.njk rename install_template/templates/products/{transporter => edb-transporter}/debian.njk (83%) rename install_template/templates/products/{transporter => edb-transporter}/index.njk (80%) create mode 100644 install_template/templates/products/edb-transporter/rhel-7-or-ol-7.njk create mode 100644 install_template/templates/products/edb-transporter/rhel-8-or-ol-8.njk create mode 100644 install_template/templates/products/edb-transporter/ubuntu-18.04.njk create mode 100644 install_template/templates/products/edb-transporter/ubuntu-20.04.njk create mode 100644 install_template/templates/products/edb-transporter/ubuntu-22.04.njk create mode 100644 install_template/templates/products/edb-transporter/ubuntu.njk rename install_template/templates/products/{transporter => edb-transporter}/x86_64_index.njk (100%) delete mode 100644 install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk delete mode 100644 install_template/templates/products/transporter/debian-10.njk delete mode 100644 install_template/templates/products/transporter/ppc64le_index.njk delete mode 100644 install_template/templates/products/transporter/rhel-8-or-ol-8.njk create mode 100644 product_docs/docs/transporter/2/getting_started.mdx create mode 100644 product_docs/docs/transporter/2/index.mdx create mode 100644 product_docs/docs/transporter/2/known_issues.mdx create mode 100644 product_docs/docs/transporter/2/limitations.mdx create mode 100644 product_docs/docs/transporter/2/migrating_data.mdx create mode 100644 product_docs/docs/transporter/2/supported_versions.mdx create mode 100644 product_docs/docs/transporter/2/terminology.mdx create mode 100644 product_docs/docs/transporter/2/upgrading.mdx diff --git a/install_template/config.yaml b/install_template/config.yaml index fe16b271a7b..2aec0db97fd 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -546,18 +546,6 @@ products: - name: Ubuntu 22.04 arch: x86_64 supported versions: [2] - - name: SLES 12 - arch: x86_64 - supported versions: [2] - - name: SLES 12 - arch: ppc64le - supported versions: [2] - - name: SLES 15 - arch: x86_64 - supported versions: [2] - - name: SLES 15 - arch: ppc64le - supported versions: [2] - name: Failover Manager platforms: - name: CentOS 7 diff --git a/install_template/templates/products/edb-transporter/almalinux-8-or-rocky-linux-8.njk b/install_template/templates/products/edb-transporter/almalinux-8-or-rocky-linux-8.njk new file mode 100644 index 00000000000..7607989c9ea --- /dev/null +++ b/install_template/templates/products/edb-transporter/almalinux-8-or-rocky-linux-8.njk @@ -0,0 +1,5 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "almalinux-8-or-rocky-linux-8" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} +{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file diff --git a/install_template/templates/products/transporter/base.njk b/install_template/templates/products/edb-transporter/base.njk similarity index 55% rename from install_template/templates/products/transporter/base.njk rename to install_template/templates/products/edb-transporter/base.njk index 9a1dcefc7e6..03559ba8926 100644 --- a/install_template/templates/products/transporter/base.njk +++ b/install_template/templates/products/edb-transporter/base.njk @@ -1,5 +1,6 @@ {% extends "platformBase/" + platformBaseTemplate + '.njk' %} -{% set packageName = packageName or 'cdcreader-<1.x>-1.4766136665.17.1.el8.jammy' %} +{% set packageName = packageName or 'cdcreader=-1.4-1.4766136665.17.1.jammy' %} +{% set writerPackageName = writerPackageName or 'cdcwriter=1.3-1.4766201953.4.1.jammy' %} {% import "platformBase/_deploymentConstants.njk" as deploy %} {% block frontmatter %} {# @@ -10,6 +11,14 @@ deployPath: transporter/{{ product.version }}/installing/linux_{{platform.arch}}/transporter_{{deploy.map_platform[platform.name]}}.mdx {% endblock frontmatter %} -{% block postinstall %} -Where `<1.x>` is the version of EDB Transporter that you are installing. For example, if you are installing version 1.4, the package name would be `cdcreader=1.4-1.4766136665.17.1.x86_64`. -{% endblock postinstall %} +{% block installCommand %} +Install CDCReader: +```shell +sudo {{packageManager}} install {{ packageName }} +``` + +Install CDCWriter: +```shell +sudo {{packageManager}} install {{ writerPackageName }} +``` +{% endblock installCommand %} diff --git a/install_template/templates/products/edb-transporter/centos-7.njk b/install_template/templates/products/edb-transporter/centos-7.njk new file mode 100644 index 00000000000..77738c07ed0 --- /dev/null +++ b/install_template/templates/products/edb-transporter/centos-7.njk @@ -0,0 +1,5 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "centos-7" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} +{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file diff --git a/install_template/templates/products/edb-transporter/debian-10.njk b/install_template/templates/products/edb-transporter/debian-10.njk new file mode 100644 index 00000000000..16149ca1714 --- /dev/null +++ b/install_template/templates/products/edb-transporter/debian-10.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/debian.njk" %} +{% set platformBaseTemplate = "debian-10" %} diff --git a/install_template/templates/products/edb-transporter/debian-11.njk b/install_template/templates/products/edb-transporter/debian-11.njk new file mode 100644 index 00000000000..cc965a07174 --- /dev/null +++ b/install_template/templates/products/edb-transporter/debian-11.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/debian.njk" %} +{% set platformBaseTemplate = "debian-11" %} diff --git a/install_template/templates/products/edb-transporter/debian-9.njk b/install_template/templates/products/edb-transporter/debian-9.njk new file mode 100644 index 00000000000..2d835f84d33 --- /dev/null +++ b/install_template/templates/products/edb-transporter/debian-9.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/debian.njk" %} +{% set platformBaseTemplate = "debian-9" %} diff --git a/install_template/templates/products/transporter/debian.njk b/install_template/templates/products/edb-transporter/debian.njk similarity index 83% rename from install_template/templates/products/transporter/debian.njk rename to install_template/templates/products/edb-transporter/debian.njk index 47ea394670a..7ba0d685ae9 100644 --- a/install_template/templates/products/transporter/debian.njk +++ b/install_template/templates/products/edb-transporter/debian.njk @@ -1,4 +1,4 @@ -{% extends "products/transporter/base.njk" %} +{% extends "products/edb-transporter/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. ```shell{% endblock debian_ubuntu %} \ No newline at end of file diff --git a/install_template/templates/products/transporter/index.njk b/install_template/templates/products/edb-transporter/index.njk similarity index 80% rename from install_template/templates/products/transporter/index.njk rename to install_template/templates/products/edb-transporter/index.njk index 8ce81a4bb2f..6253ffa4f3d 100644 --- a/install_template/templates/products/transporter/index.njk +++ b/install_template/templates/products/edb-transporter/index.njk @@ -5,8 +5,5 @@ {{ super() }} {% endblock frontmatter %} {% block navigation %} -- prerequisites - linux_x86_64 -- linux_ppc64le -- install_details {% endblock navigation %} diff --git a/install_template/templates/products/edb-transporter/rhel-7-or-ol-7.njk b/install_template/templates/products/edb-transporter/rhel-7-or-ol-7.njk new file mode 100644 index 00000000000..8530e82b892 --- /dev/null +++ b/install_template/templates/products/edb-transporter/rhel-7-or-ol-7.njk @@ -0,0 +1,5 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "rhel-7-or-ol-7" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} +{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file diff --git a/install_template/templates/products/edb-transporter/rhel-8-or-ol-8.njk b/install_template/templates/products/edb-transporter/rhel-8-or-ol-8.njk new file mode 100644 index 00000000000..fd1a0a7b8a6 --- /dev/null +++ b/install_template/templates/products/edb-transporter/rhel-8-or-ol-8.njk @@ -0,0 +1,5 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "rhel-8-or-ol-8" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} +{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file diff --git a/install_template/templates/products/edb-transporter/ubuntu-18.04.njk b/install_template/templates/products/edb-transporter/ubuntu-18.04.njk new file mode 100644 index 00000000000..c61108b9231 --- /dev/null +++ b/install_template/templates/products/edb-transporter/ubuntu-18.04.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/ubuntu.njk" %} +{% set platformBaseTemplate = "ubuntu-18.04" %} diff --git a/install_template/templates/products/edb-transporter/ubuntu-20.04.njk b/install_template/templates/products/edb-transporter/ubuntu-20.04.njk new file mode 100644 index 00000000000..caa472b2a47 --- /dev/null +++ b/install_template/templates/products/edb-transporter/ubuntu-20.04.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/ubuntu.njk" %} +{% set platformBaseTemplate = "ubuntu-20.04" %} diff --git a/install_template/templates/products/edb-transporter/ubuntu-22.04.njk b/install_template/templates/products/edb-transporter/ubuntu-22.04.njk new file mode 100644 index 00000000000..78e2378ee34 --- /dev/null +++ b/install_template/templates/products/edb-transporter/ubuntu-22.04.njk @@ -0,0 +1,2 @@ +{% extends "products/edb-transporter/ubuntu.njk" %} +{% set platformBaseTemplate = "ubuntu-22.04" %} diff --git a/install_template/templates/products/edb-transporter/ubuntu.njk b/install_template/templates/products/edb-transporter/ubuntu.njk new file mode 100644 index 00000000000..e968ddc2fd8 --- /dev/null +++ b/install_template/templates/products/edb-transporter/ubuntu.njk @@ -0,0 +1 @@ +{% extends "products/edb-transporter/base.njk" %} diff --git a/install_template/templates/products/transporter/x86_64_index.njk b/install_template/templates/products/edb-transporter/x86_64_index.njk similarity index 100% rename from install_template/templates/products/transporter/x86_64_index.njk rename to install_template/templates/products/edb-transporter/x86_64_index.njk diff --git a/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk b/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk deleted file mode 100644 index 4dbea6df0a6..00000000000 --- a/install_template/templates/products/transporter/almalinux-8-or-rocky-linux-8.njk +++ /dev/null @@ -1,5 +0,0 @@ -{% extends "products/transporter/base.njk" %} -{% set platformBaseTemplate = "almalinux-8-or-rocky-linux-8" %} -{% block installCommand %} -{{ super() }} -{% endblock installCommand %} \ No newline at end of file diff --git a/install_template/templates/products/transporter/debian-10.njk b/install_template/templates/products/transporter/debian-10.njk deleted file mode 100644 index d9ace3b9be7..00000000000 --- a/install_template/templates/products/transporter/debian-10.njk +++ /dev/null @@ -1,11 +0,0 @@ -{% extends "products/transporter/debian.njk" %} -{% set platformBaseTemplate = "debian-10" %} -{% set packageName %}edb-postgresextended-{% endset %} -{% block installCommand %} -```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/transporter/ppc64le_index.njk b/install_template/templates/products/transporter/ppc64le_index.njk deleted file mode 100644 index 2b2dc3dd5dc..00000000000 --- a/install_template/templates/products/transporter/ppc64le_index.njk +++ /dev/null @@ -1,7 +0,0 @@ - -{% extends "platformBase/ppc64le_index.njk" %} -{% set productShortname="transporter" %} - -{% block frontmatter %} -{{ super() }} -{% endblock frontmatter %} diff --git a/install_template/templates/products/transporter/rhel-8-or-ol-8.njk b/install_template/templates/products/transporter/rhel-8-or-ol-8.njk deleted file mode 100644 index 4ea047a7129..00000000000 --- a/install_template/templates/products/transporter/rhel-8-or-ol-8.njk +++ /dev/null @@ -1,4 +0,0 @@ -{% extends "products/transporter/base.njk" %} -{% set platformBaseTemplate = "rhel-8-or-ol-8" %} -{% set packageName %}cdcreader-<1.x>-1.4766136665.17.1.el8.x86_64{% endset %} -{% block prerequisites %}{% endblock prerequisites %} \ No newline at end of file diff --git a/product_docs/docs/transporter/2/getting_started.mdx b/product_docs/docs/transporter/2/getting_started.mdx new file mode 100644 index 00000000000..c64b3e826b2 --- /dev/null +++ b/product_docs/docs/transporter/2/getting_started.mdx @@ -0,0 +1,48 @@ +--- +title: "Getting started" +--- + +Setting up an EDB Transporter migration consists of a number of steps. + +## Planning: Ensure schema compatibility + +Assess Oracle database sources for schema compatibility using the [EDB Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) before starting the data migration process. Address incompatible schemas or exclude them from the migration. + +## Preparing source and target databases + +You need to prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: + +- [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources) +- [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources) +- [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases) + +## Installing + +Install and run customer-side EDB Transporter software. For details, see [Installing EDB Transporter software](installing). + +EDB manages cloud assets required for the migration, such as Apache Kafka and other services offered by cloud service providers. + +## Sharing migration information + +Share tables-to-migrate information with EDB (schema, table, and column-name mapping between source and target). + +To be able to create the migration, EDB needs to know the schemas and tables needed to migrate to the target database. + +If the target table and column names are different from the source, EDB also needs the mapping for each table and column to its new name. + +## EDB migration responsibilities + +EDB performs the next steps: + +- Deploying infrastructure. EDB deploys cloud infrastructure, which includes control components and a message bus. + +- Starting migration. EDB initiates and manages the data migration until complete. + +- Validating migration. EDB performs integrity validation and post-migration checks. + +## Post-migration steps + +After these steps, your migration is up and running and will last as long as required. After your data is across,if you plan to then stop the migration: + + - You can stop and remove customer-side software. + - EDB deprovisions cloud infrastructure. diff --git a/product_docs/docs/transporter/2/index.mdx b/product_docs/docs/transporter/2/index.mdx new file mode 100644 index 00000000000..dc031cea803 --- /dev/null +++ b/product_docs/docs/transporter/2/index.mdx @@ -0,0 +1,30 @@ +--- +title: EDB Transporter +directoryDefaults: + description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change-event data streaming enables secure, fault-tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." +navigation: + - rel_notes + - known_issues + - getting_started + - "#Concepts" + - terminology + - usage_overview + - "#Planning" + - supported_versions + - limitations + - "#Installing" + - installing + - upgrading + - "#Using" + - preparing_db + - migrating_data +--- + +EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them to a destination database, reshaping the data to the schema of the destination database in the process. + +By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting, and importing that came with traditional migration. + +EDB Transporter is built on Kafka, a data-streaming technology, and Debezium, which uses that technology to move captured data between databases. + +When the source or destination database is on premises or in a private cloud, then you need to install EDB Transporter’s CDCReader or CDCWriter. You and EDB’s team can then plan and start your migration. + diff --git a/product_docs/docs/transporter/2/known_issues.mdx b/product_docs/docs/transporter/2/known_issues.mdx new file mode 100644 index 00000000000..78879383fa0 --- /dev/null +++ b/product_docs/docs/transporter/2/known_issues.mdx @@ -0,0 +1,7 @@ +--- +title: "Known issues" +--- + +These EDB Transporter known issues are expected to be resolved in a future release. + +- There are currently no known issues. diff --git a/product_docs/docs/transporter/2/limitations.mdx b/product_docs/docs/transporter/2/limitations.mdx new file mode 100644 index 00000000000..6542c6c3d1e --- /dev/null +++ b/product_docs/docs/transporter/2/limitations.mdx @@ -0,0 +1,23 @@ +--- +title: "Limitations" +--- + +A limited number of Oracle data types and features aren't supported by EDB Transporter. + +See the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed comments on supported data types. + +Unsupported Oracle data types include: + +- BFILE +- LONG +- LONG RAW +- RAW +- UROWID +- User-defined types (REF, Varrays, Nested Tables) +- ANY +- XML +- Spatial + +Don't use EDB Transporter for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes currently aren't handled correctly. + +Also, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle might contain `Nan`, `+INF`, and `-INF` values. EDB Transporter doesn't support these values. diff --git a/product_docs/docs/transporter/2/migrating_data.mdx b/product_docs/docs/transporter/2/migrating_data.mdx new file mode 100644 index 00000000000..fd19e4c38ba --- /dev/null +++ b/product_docs/docs/transporter/2/migrating_data.mdx @@ -0,0 +1,29 @@ +--- +title: "Migrating data" +--- +## Migration creation and status + +Source and target database schema are used to specify data to migrate along with +configurability for performance or, for example, for excluding source data. + +EDB's cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to +execute change data capture (CDC) event streaming from source to target database. An initial +snapshot occurs followed by a transition to the streaming phase of CDC event production. + +## Managing ongoing migrations + +EDB can work with you and manage in-progress migrations to: + - Exclude problematic source data + - Pause and resume migrations + - Optimize migration performance + +You can configure and manage several independent migrations using the same CDCReader, CDCWriter, +and EDB-managed cloud EDB Transporter components. + +## Migration completion and removal + +To complete the migration, stop source database traffic and allow streaming migration +to transfer all CDC events. You can then stop EDB Transporter CDCReader and CDCWriter. +Target database integrity can be validated and application cutover to the target performed. + +After confirming migration success, EDB decommissions all EDB Transporter cloud assets. diff --git a/product_docs/docs/transporter/2/supported_versions.mdx b/product_docs/docs/transporter/2/supported_versions.mdx new file mode 100644 index 00000000000..8c90924f9ab --- /dev/null +++ b/product_docs/docs/transporter/2/supported_versions.mdx @@ -0,0 +1,32 @@ +--- +title: "Product compatibility" +--- + + + +## Database versions + +The following database versions are supported. + +| Database version | Supported | +|------------------|-----------| +| Postgres 11 - 15 | Y | +| EPAS 11 - 15 | Y | +| Oracle 11g | Y | +| Oracle 12c | Y | +| Oracle 18c | Y | +| Oracle 19c | Y | +| Oracle 21c | Y | + +### Oracle +The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. For details, see [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_source_databases). + +Container databases (CDB/PDB) and non-CDB sources are supported. + +### Postgres/EDB Postgres Advanced Server +Postgres and EDB Postgres Advanced Server sources require a database role or user that can manage replications. For details, see [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_source_databases). + +When used as a target, EDB Transporter requires a database role or user that can write to the appropriate target tables. For details, see the [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases). + +## Operating systems +EDB Transporter's customer-side software can run on Linux and Mac OS systems. You can run the source or target database on any system, including Windows. diff --git a/product_docs/docs/transporter/2/terminology.mdx b/product_docs/docs/transporter/2/terminology.mdx new file mode 100644 index 00000000000..c445544034e --- /dev/null +++ b/product_docs/docs/transporter/2/terminology.mdx @@ -0,0 +1,19 @@ +--- +title: "Terminology" +--- +The terminology that follows is important for understanding EDB Transporter functionality. + +## Kafka +Apache Kafka is an open-source, distributed-event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. + +## Change data capture (CDC) +CDC is a set of software design patterns used to determine and track the data that changed (the "deltas") so that you can take action using the changed data. + +## Debezium +Debezium is an open-source distributed platform for change data capture. + +## CDCReader +CDCReader uses Debezium to perform CDC on the source database and produce Kafka messages containing the change events. + +## CDCWriter +CDCWriter consumes CDC event messages from Kafka and writes them to the replication's target database. diff --git a/product_docs/docs/transporter/2/upgrading.mdx b/product_docs/docs/transporter/2/upgrading.mdx new file mode 100644 index 00000000000..de0299d91e8 --- /dev/null +++ b/product_docs/docs/transporter/2/upgrading.mdx @@ -0,0 +1,17 @@ +--- +title: "Upgrading" +--- + +Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt to any data migration. +These components are designed to terminate and restart gracefully. + +To upgrade the software: + +1. Stop the software you're upgrading (CDCReader or CDCWriter). + +1. Install and start a new version of that software. + +Data migration resumes. + +Incompatible upgrades are documented in the [release notes](rel_notes) and can be identified +by major version number increases. From 503d7682663be783db33c65fbe47b1d80b84fc7e Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Wed, 12 Jul 2023 14:14:36 -0400 Subject: [PATCH 25/47] removed rhel for powerpc --- install_template/config.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/install_template/config.yaml b/install_template/config.yaml index 2aec0db97fd..8b097ca806a 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -528,9 +528,6 @@ products: - name: RHEL 8 or OL 8 arch: x86_64 supported versions: [2] - - name: RHEL 8 - arch: ppc64le - supported versions: [2] - name: Debian 10 arch: x86_64 supported versions: [2] From 9a6c5deafe6c1a10205ccb68683b7d641550c4bc Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Wed, 12 Jul 2023 14:29:10 -0400 Subject: [PATCH 26/47] generated files for Transporter --- .../docs/transporter/2/installing/index.mdx | 29 ++++++++++++ .../2/installing/linux_x86_64/index.mdx | 47 +++++++++++++++++++ .../linux_x86_64/transporter_centos_7.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_debian_10.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_debian_11.mdx | 40 ++++++++++++++++ .../transporter_other_linux_8.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_rhel_7.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_rhel_8.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_ubuntu_18.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_ubuntu_20.mdx | 40 ++++++++++++++++ .../linux_x86_64/transporter_ubuntu_22.mdx | 40 ++++++++++++++++ 11 files changed, 436 insertions(+) create mode 100644 product_docs/docs/transporter/2/installing/index.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx diff --git a/product_docs/docs/transporter/2/installing/index.mdx b/product_docs/docs/transporter/2/installing/index.mdx new file mode 100644 index 00000000000..21190588434 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/index.mdx @@ -0,0 +1,29 @@ +--- +navTitle: Installing +title: Installing EDB Transporter on Linux + +navigation: + - linux_x86_64 +--- + +Select a link to access the applicable installation instructions: + +## Linux [x86-64 (amd64)](linux_x86_64) + +### Red Hat Enterprise Linux (RHEL) and derivatives + +- [RHEL 8](linux_x86_64/transporter_rhel_8), [RHEL 7](linux_x86_64/transporter_rhel_7) + +- [Oracle Linux (OL) 8](linux_x86_64/transporter_rhel_8), [Oracle Linux (OL) 7](linux_x86_64/transporter_rhel_7) + +- [Rocky Linux 8](linux_x86_64/transporter_other_linux_8) + +- [AlmaLinux 8](linux_x86_64/transporter_other_linux_8) + +- [CentOS 7](linux_x86_64/transporter_centos_7) + +### Debian and derivatives + +- [Ubuntu 22.04](linux_x86_64/transporter_ubuntu_22), [Ubuntu 20.04](linux_x86_64/transporter_ubuntu_20), [Ubuntu 18.04](linux_x86_64/transporter_ubuntu_18) + +- [Debian 11](linux_x86_64/transporter_debian_11), [Debian 10](linux_x86_64/transporter_debian_10) diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx new file mode 100644 index 00000000000..ad224767b5e --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx @@ -0,0 +1,47 @@ +--- +title: "Installing EDB Transporter on Linux x86 (amd64)" +navTitle: "On Linux x86" + +navigation: + - transporter_rhel_8 + - transporter_other_linux_8 + - transporter_rhel_7 + - transporter_centos_7 + - transporter_sles_15 + - transporter_sles_12 + - transporter_ubuntu_22 + - transporter_ubuntu_20 + - transporter_ubuntu_18 + - transporter_debian_11 + - transporter_debian_10 +--- + +For operating system-specific install instructions, including accessing the repo, see: + +### Red Hat Enterprise Linux (RHEL) and derivatives + +- [RHEL 8](transporter_rhel_8) + +- [RHEL 7](transporter_rhel_7) + +- [Oracle Linux (OL) 8](transporter_rhel_8) + +- [Oracle Linux (OL) 7](transporter_rhel_7) + +- [Rocky Linux 8](transporter_other_linux_8) + +- [AlmaLinux 8](transporter_other_linux_8) + +- [CentOS 7](transporter_centos_7) + +### Debian and derivatives + +- [Ubuntu 22.04](transporter_ubuntu_22) + +- [Ubuntu 20.04](transporter_ubuntu_20) + +- [Ubuntu 18.04](transporter_ubuntu_18) + +- [Debian 11](transporter_debian_11) + +- [Debian 10](transporter_debian_10) diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx new file mode 100644 index 00000000000..08301c84ab9 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx @@ -0,0 +1,40 @@ +--- +navTitle: CentOS 7 +title: Installing EDB Transporter on CentOS 7 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx new file mode 100644 index 00000000000..6006919ef33 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Debian 10 +title: Installing EDB Transporter on Debian 10 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx new file mode 100644 index 00000000000..92ce823bdeb --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Debian 11 +title: Installing EDB Transporter on Debian 11 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx new file mode 100644 index 00000000000..2fcb73d39ac --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx @@ -0,0 +1,40 @@ +--- +navTitle: AlmaLinux 8 or Rocky Linux 8 +title: Installing EDB Transporter on AlmaLinux 8 or Rocky Linux 8 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx new file mode 100644 index 00000000000..645be52ecd9 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx @@ -0,0 +1,40 @@ +--- +navTitle: RHEL 7 or OL 7 +title: Installing EDB Transporter on RHEL 7 or OL 7 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx new file mode 100644 index 00000000000..dc51b1565df --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx @@ -0,0 +1,40 @@ +--- +navTitle: RHEL 8 or OL 8 +title: Installing EDB Transporter on RHEL 8 or OL 8 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx new file mode 100644 index 00000000000..b8c0820446a --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 18.04 +title: Installing EDB Transporter on Ubuntu 18.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx new file mode 100644 index 00000000000..60bc1c6f566 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 20.04 +title: Installing EDB Transporter on Ubuntu 20.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx new file mode 100644 index 00000000000..0a177dc39b5 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 22.04 +title: Installing EDB Transporter on Ubuntu 22.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` From 7b070521ccdde9ea93e2defe23d8dc3939ff9515 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 17 Jul 2023 11:57:26 -0400 Subject: [PATCH 27/47] template changes for SLES platforms --- install_template/config.yaml | 12 ++++++++++++ .../edb-postgres-extended-server/sles-12_ppc64le.njk | 2 +- .../templates/products/edb-transporter/sles-12.njk | 5 +++++ .../products/edb-transporter/sles-12_ppc64le.njk | 4 ++++ .../templates/products/edb-transporter/sles-15.njk | 4 ++++ .../products/edb-transporter/sles-15_ppc64le.njk | 3 +++ 6 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 install_template/templates/products/edb-transporter/sles-12.njk create mode 100644 install_template/templates/products/edb-transporter/sles-12_ppc64le.njk create mode 100644 install_template/templates/products/edb-transporter/sles-15.njk create mode 100644 install_template/templates/products/edb-transporter/sles-15_ppc64le.njk diff --git a/install_template/config.yaml b/install_template/config.yaml index 8b097ca806a..38899649e66 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -543,6 +543,18 @@ products: - name: Ubuntu 22.04 arch: x86_64 supported versions: [2] + - name: SLES 12 + arch: x86_64 + supported versions: [2] + - name: SLES 12 + arch: ppc64le + supported versions: [2] + - name: SLES 15 + arch: x86_64 + supported versions: [2] + - name: SLES 15 + arch: ppc64le + supported versions: [2] - name: Failover Manager platforms: - name: CentOS 7 diff --git a/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk b/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk index 8391fdc3fab..d16871a82b3 100644 --- a/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk +++ b/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk @@ -1,2 +1,2 @@ -{% extends "products/edb-postgres-extended-server/sles-12.njk" %} +{% extends "products/edb-transporter/sles-12.njk" %} diff --git a/install_template/templates/products/edb-transporter/sles-12.njk b/install_template/templates/products/edb-transporter/sles-12.njk new file mode 100644 index 00000000000..d9ddbb6544d --- /dev/null +++ b/install_template/templates/products/edb-transporter/sles-12.njk @@ -0,0 +1,5 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "sles-12" %} +{% set packageManager = "zypper" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} + diff --git a/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk new file mode 100644 index 00000000000..455da1448ce --- /dev/null +++ b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk @@ -0,0 +1,4 @@ +{% extends "products/edb-postgres-extended-server/sles-12.njk" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} + + diff --git a/install_template/templates/products/edb-transporter/sles-15.njk b/install_template/templates/products/edb-transporter/sles-15.njk new file mode 100644 index 00000000000..511feab723a --- /dev/null +++ b/install_template/templates/products/edb-transporter/sles-15.njk @@ -0,0 +1,4 @@ +{% extends "products/edb-transporter/base.njk" %} +{% set platformBaseTemplate = "sles-15" %} +{% set packageManager = "zypper" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} diff --git a/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk b/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk new file mode 100644 index 00000000000..68aa6f62e62 --- /dev/null +++ b/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk @@ -0,0 +1,3 @@ +{% extends "products/edb-transporter/sles-15.njk" %} +{% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} + From 1be715d39f8406c4324cff28ee0bb3604e2e2631 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 17 Jul 2023 12:02:47 -0400 Subject: [PATCH 28/47] fixes erroneous update on earlier commit --- .../products/edb-postgres-extended-server/sles-12_ppc64le.njk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk b/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk index d16871a82b3..8391fdc3fab 100644 --- a/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk +++ b/install_template/templates/products/edb-postgres-extended-server/sles-12_ppc64le.njk @@ -1,2 +1,2 @@ -{% extends "products/edb-transporter/sles-12.njk" %} +{% extends "products/edb-postgres-extended-server/sles-12.njk" %} From e58b6966893e2ce86e4c2d481d2452a272e35eef Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 17 Jul 2023 12:05:29 -0400 Subject: [PATCH 29/47] another sles edit, missed on previous commit --- .../templates/products/edb-transporter/sles-12_ppc64le.njk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk index 455da1448ce..9613af5bcbb 100644 --- a/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk +++ b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk @@ -1,4 +1,4 @@ -{% extends "products/edb-postgres-extended-server/sles-12.njk" %} +{% extends "products/edb-transporter/sles-12.njk" %} {% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} From 8fd67e90908421b6dab19906e022b1f2afafb9cc Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 17 Jul 2023 12:07:28 -0400 Subject: [PATCH 30/47] generated files for SLS --- .../docs/transporter/2/installing/index.mdx | 10 ++++ .../linux_ppc64le/transporter_sles_12.mdx | 51 ++++++++++++++++++ .../linux_ppc64le/transporter_sles_15.mdx | 52 +++++++++++++++++++ .../2/installing/linux_x86_64/index.mdx | 6 +++ .../linux_x86_64/transporter_sles_12.mdx | 51 ++++++++++++++++++ .../linux_x86_64/transporter_sles_15.mdx | 52 +++++++++++++++++++ 6 files changed, 222 insertions(+) create mode 100644 product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx create mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx diff --git a/product_docs/docs/transporter/2/installing/index.mdx b/product_docs/docs/transporter/2/installing/index.mdx index 21190588434..2393ebb6fb8 100644 --- a/product_docs/docs/transporter/2/installing/index.mdx +++ b/product_docs/docs/transporter/2/installing/index.mdx @@ -22,8 +22,18 @@ Select a link to access the applicable installation instructions: - [CentOS 7](linux_x86_64/transporter_centos_7) +### SUSE Linux Enterprise (SLES) + +- [SLES 15](linux_x86_64/transporter_sles_15), [SLES 12](linux_x86_64/transporter_sles_12) + ### Debian and derivatives - [Ubuntu 22.04](linux_x86_64/transporter_ubuntu_22), [Ubuntu 20.04](linux_x86_64/transporter_ubuntu_20), [Ubuntu 18.04](linux_x86_64/transporter_ubuntu_18) - [Debian 11](linux_x86_64/transporter_debian_11), [Debian 10](linux_x86_64/transporter_debian_10) + +## Linux [IBM Power (ppc64le)](linux_ppc64le) + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](linux_ppc64le/transporter_sles_15), [SLES 12](linux_ppc64le/transporter_sles_12) diff --git a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx new file mode 100644 index 00000000000..8043d8f9241 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx @@ -0,0 +1,51 @@ +--- +navTitle: SLES 12 +title: Installing EDB Transporter on SLES 12 ppc64le +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + ```shell + sudo SUSEConnect -p PackageHub/12.5/ppc64le + sudo SUSEConnect -p sle-sdk/12.5/ppc64le + + ``` +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx new file mode 100644 index 00000000000..32ad91c83f3 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx @@ -0,0 +1,52 @@ +--- +navTitle: SLES 15 +title: Installing EDB Transporter on SLES 15 ppc64le +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + + ```shell + sudo SUSEConnect -p PackageHub/15.4/ppc64le + + ``` + +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx index ad224767b5e..72c0d123b7b 100644 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx @@ -34,6 +34,12 @@ For operating system-specific install instructions, including accessing the repo - [CentOS 7](transporter_centos_7) +### SUSE Linux Enterprise (SLES) + +- [SLES 15](transporter_sles_15) + +- [SLES 12](transporter_sles_12) + ### Debian and derivatives - [Ubuntu 22.04](transporter_ubuntu_22) diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx new file mode 100644 index 00000000000..a590a95af45 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx @@ -0,0 +1,51 @@ +--- +navTitle: SLES 12 +title: Installing EDB Transporter on SLES 12 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + ```shell + sudo SUSEConnect -p PackageHub/12.5/x86_64 + sudo SUSEConnect -p sle-sdk/12.5/x86_64 + + ``` +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx new file mode 100644 index 00000000000..9c0f7c899f4 --- /dev/null +++ b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx @@ -0,0 +1,52 @@ +--- +navTitle: SLES 15 +title: Installing EDB Transporter on SLES 15 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + + ```shell + sudo SUSEConnect -p PackageHub/15.4/x86_64 + + ``` + +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` From bfb72133751235e86993da3fec1c199d43784864 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 10:19:09 -0400 Subject: [PATCH 31/47] Added SLES for PowerPC --- .../products/edb-transporter/ppc64le_index.njk | 7 +++++++ .../pge/2/installing/linux_ppc64le/index.mdx | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 install_template/templates/products/edb-transporter/ppc64le_index.njk create mode 100644 product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx diff --git a/install_template/templates/products/edb-transporter/ppc64le_index.njk b/install_template/templates/products/edb-transporter/ppc64le_index.njk new file mode 100644 index 00000000000..ae05f262a10 --- /dev/null +++ b/install_template/templates/products/edb-transporter/ppc64le_index.njk @@ -0,0 +1,7 @@ + +{% extends "platformBase/ppc64le_index.njk" %} +{% set productShortname="pge" %} + +{% block frontmatter %} +{{super()}} +{% endblock frontmatter %} diff --git a/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx b/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx new file mode 100644 index 00000000000..f9dc5ae4bb3 --- /dev/null +++ b/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx @@ -0,0 +1,17 @@ +--- +title: "Installing EDB Transporter on Linux IBM Power (ppc64le)" +navTitle: "On Linux ppc64le" + +navigation: + - pge_rhel_8 + - pge_sles_15 + - pge_sles_12 +--- + +For operating system-specific install instructions, including accessing the repo, see: + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](pge_sles_15) + +- [SLES 12](pge_sles_12) From 3ac311212dc0f6b7e2f246d1f5f7fa4f2614c857 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 10:40:27 -0400 Subject: [PATCH 32/47] Removed 2, alpha and preview folders --- .../docs/transporter/2/getting_started.mdx | 48 ---- product_docs/docs/transporter/2/index.mdx | 30 -- .../docs/transporter/2/installing/index.mdx | 39 --- .../linux_ppc64le/transporter_sles_12.mdx | 51 ---- .../linux_ppc64le/transporter_sles_15.mdx | 52 ---- .../2/installing/linux_x86_64/index.mdx | 53 ---- .../linux_x86_64/transporter_centos_7.mdx | 40 --- .../linux_x86_64/transporter_debian_10.mdx | 40 --- .../linux_x86_64/transporter_debian_11.mdx | 40 --- .../transporter_other_linux_8.mdx | 40 --- .../linux_x86_64/transporter_rhel_7.mdx | 40 --- .../linux_x86_64/transporter_rhel_8.mdx | 40 --- .../linux_x86_64/transporter_sles_12.mdx | 51 ---- .../linux_x86_64/transporter_sles_15.mdx | 52 ---- .../linux_x86_64/transporter_ubuntu_18.mdx | 40 --- .../linux_x86_64/transporter_ubuntu_20.mdx | 40 --- .../linux_x86_64/transporter_ubuntu_22.mdx | 40 --- .../docs/transporter/2/known_issues.mdx | 7 - .../docs/transporter/2/limitations.mdx | 23 -- .../docs/transporter/2/migrating_data.mdx | 29 -- .../docs/transporter/2/supported_versions.mdx | 32 --- .../docs/transporter/2/terminology.mdx | 19 -- product_docs/docs/transporter/2/upgrading.mdx | 17 -- product_docs/docs/transporter/alpha/index.mdx | 4 - .../transporter/preview/installing/index.mdx | 21 -- .../preview/installing/installing_debian.mdx | 64 ----- .../preview/installing/installing_rhel.mdx | 57 ---- .../preview/preparing_db/index.mdx | 18 -- .../preparing_oracle_source_databases.mdx | 259 ------------------ .../preparing_postgres_source_databases.mdx | 118 -------- .../preparing_target_databases.mdx | 12 - .../transporter/preview/release_notes.mdx | 15 - .../preview/supported_versions.mdx | 38 --- .../transporter/preview/usage_overview.mdx | 82 ------ 34 files changed, 1551 deletions(-) delete mode 100644 product_docs/docs/transporter/2/getting_started.mdx delete mode 100644 product_docs/docs/transporter/2/index.mdx delete mode 100644 product_docs/docs/transporter/2/installing/index.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx delete mode 100644 product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx delete mode 100644 product_docs/docs/transporter/2/known_issues.mdx delete mode 100644 product_docs/docs/transporter/2/limitations.mdx delete mode 100644 product_docs/docs/transporter/2/migrating_data.mdx delete mode 100644 product_docs/docs/transporter/2/supported_versions.mdx delete mode 100644 product_docs/docs/transporter/2/terminology.mdx delete mode 100644 product_docs/docs/transporter/2/upgrading.mdx delete mode 100644 product_docs/docs/transporter/alpha/index.mdx delete mode 100644 product_docs/docs/transporter/preview/installing/index.mdx delete mode 100644 product_docs/docs/transporter/preview/installing/installing_debian.mdx delete mode 100644 product_docs/docs/transporter/preview/installing/installing_rhel.mdx delete mode 100644 product_docs/docs/transporter/preview/preparing_db/index.mdx delete mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx delete mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx delete mode 100644 product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx delete mode 100644 product_docs/docs/transporter/preview/release_notes.mdx delete mode 100644 product_docs/docs/transporter/preview/supported_versions.mdx delete mode 100644 product_docs/docs/transporter/preview/usage_overview.mdx diff --git a/product_docs/docs/transporter/2/getting_started.mdx b/product_docs/docs/transporter/2/getting_started.mdx deleted file mode 100644 index c64b3e826b2..00000000000 --- a/product_docs/docs/transporter/2/getting_started.mdx +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Getting started" ---- - -Setting up an EDB Transporter migration consists of a number of steps. - -## Planning: Ensure schema compatibility - -Assess Oracle database sources for schema compatibility using the [EDB Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) before starting the data migration process. Address incompatible schemas or exclude them from the migration. - -## Preparing source and target databases - -You need to prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: - -- [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources) -- [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources) -- [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases) - -## Installing - -Install and run customer-side EDB Transporter software. For details, see [Installing EDB Transporter software](installing). - -EDB manages cloud assets required for the migration, such as Apache Kafka and other services offered by cloud service providers. - -## Sharing migration information - -Share tables-to-migrate information with EDB (schema, table, and column-name mapping between source and target). - -To be able to create the migration, EDB needs to know the schemas and tables needed to migrate to the target database. - -If the target table and column names are different from the source, EDB also needs the mapping for each table and column to its new name. - -## EDB migration responsibilities - -EDB performs the next steps: - -- Deploying infrastructure. EDB deploys cloud infrastructure, which includes control components and a message bus. - -- Starting migration. EDB initiates and manages the data migration until complete. - -- Validating migration. EDB performs integrity validation and post-migration checks. - -## Post-migration steps - -After these steps, your migration is up and running and will last as long as required. After your data is across,if you plan to then stop the migration: - - - You can stop and remove customer-side software. - - EDB deprovisions cloud infrastructure. diff --git a/product_docs/docs/transporter/2/index.mdx b/product_docs/docs/transporter/2/index.mdx deleted file mode 100644 index dc031cea803..00000000000 --- a/product_docs/docs/transporter/2/index.mdx +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: EDB Transporter -directoryDefaults: - description: "EDB Transporter is a cloud-first migration solution based on Debezium and Kafka. Change-event data streaming enables secure, fault-tolerant, and performant migrations to BigAnimal, on-premise EPAS/Postgres, or other cloud-hosted databases." -navigation: - - rel_notes - - known_issues - - getting_started - - "#Concepts" - - terminology - - usage_overview - - "#Planning" - - supported_versions - - limitations - - "#Installing" - - installing - - upgrading - - "#Using" - - preparing_db - - migrating_data ---- - -EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them to a destination database, reshaping the data to the schema of the destination database in the process. - -By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting, and importing that came with traditional migration. - -EDB Transporter is built on Kafka, a data-streaming technology, and Debezium, which uses that technology to move captured data between databases. - -When the source or destination database is on premises or in a private cloud, then you need to install EDB Transporter’s CDCReader or CDCWriter. You and EDB’s team can then plan and start your migration. - diff --git a/product_docs/docs/transporter/2/installing/index.mdx b/product_docs/docs/transporter/2/installing/index.mdx deleted file mode 100644 index 2393ebb6fb8..00000000000 --- a/product_docs/docs/transporter/2/installing/index.mdx +++ /dev/null @@ -1,39 +0,0 @@ ---- -navTitle: Installing -title: Installing EDB Transporter on Linux - -navigation: - - linux_x86_64 ---- - -Select a link to access the applicable installation instructions: - -## Linux [x86-64 (amd64)](linux_x86_64) - -### Red Hat Enterprise Linux (RHEL) and derivatives - -- [RHEL 8](linux_x86_64/transporter_rhel_8), [RHEL 7](linux_x86_64/transporter_rhel_7) - -- [Oracle Linux (OL) 8](linux_x86_64/transporter_rhel_8), [Oracle Linux (OL) 7](linux_x86_64/transporter_rhel_7) - -- [Rocky Linux 8](linux_x86_64/transporter_other_linux_8) - -- [AlmaLinux 8](linux_x86_64/transporter_other_linux_8) - -- [CentOS 7](linux_x86_64/transporter_centos_7) - -### SUSE Linux Enterprise (SLES) - -- [SLES 15](linux_x86_64/transporter_sles_15), [SLES 12](linux_x86_64/transporter_sles_12) - -### Debian and derivatives - -- [Ubuntu 22.04](linux_x86_64/transporter_ubuntu_22), [Ubuntu 20.04](linux_x86_64/transporter_ubuntu_20), [Ubuntu 18.04](linux_x86_64/transporter_ubuntu_18) - -- [Debian 11](linux_x86_64/transporter_debian_11), [Debian 10](linux_x86_64/transporter_debian_10) - -## Linux [IBM Power (ppc64le)](linux_ppc64le) - -### SUSE Linux Enterprise (SLES) - -- [SLES 15](linux_ppc64le/transporter_sles_15), [SLES 12](linux_ppc64le/transporter_sles_12) diff --git a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx deleted file mode 100644 index 8043d8f9241..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_12.mdx +++ /dev/null @@ -1,51 +0,0 @@ ---- -navTitle: SLES 12 -title: Installing EDB Transporter on SLES 12 ppc64le ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `zypper lr -E | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -- Activate the required SUSE module - ```shell - sudo SUSEConnect -p PackageHub/12.5/ppc64le - sudo SUSEConnect -p sle-sdk/12.5/ppc64le - - ``` -- Refresh the metadata - ```shell - sudo zypper refresh - ``` - -## Install the package - -Install CDCReader: - -```shell -sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx b/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx deleted file mode 100644 index 32ad91c83f3..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_ppc64le/transporter_sles_15.mdx +++ /dev/null @@ -1,52 +0,0 @@ ---- -navTitle: SLES 15 -title: Installing EDB Transporter on SLES 15 ppc64le ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `zypper lr -E | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -- Activate the required SUSE module - - ```shell - sudo SUSEConnect -p PackageHub/15.4/ppc64le - - ``` - -- Refresh the metadata - ```shell - sudo zypper refresh - ``` - -## Install the package - -Install CDCReader: - -```shell -sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx deleted file mode 100644 index 72c0d123b7b..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/index.mdx +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: "Installing EDB Transporter on Linux x86 (amd64)" -navTitle: "On Linux x86" - -navigation: - - transporter_rhel_8 - - transporter_other_linux_8 - - transporter_rhel_7 - - transporter_centos_7 - - transporter_sles_15 - - transporter_sles_12 - - transporter_ubuntu_22 - - transporter_ubuntu_20 - - transporter_ubuntu_18 - - transporter_debian_11 - - transporter_debian_10 ---- - -For operating system-specific install instructions, including accessing the repo, see: - -### Red Hat Enterprise Linux (RHEL) and derivatives - -- [RHEL 8](transporter_rhel_8) - -- [RHEL 7](transporter_rhel_7) - -- [Oracle Linux (OL) 8](transporter_rhel_8) - -- [Oracle Linux (OL) 7](transporter_rhel_7) - -- [Rocky Linux 8](transporter_other_linux_8) - -- [AlmaLinux 8](transporter_other_linux_8) - -- [CentOS 7](transporter_centos_7) - -### SUSE Linux Enterprise (SLES) - -- [SLES 15](transporter_sles_15) - -- [SLES 12](transporter_sles_12) - -### Debian and derivatives - -- [Ubuntu 22.04](transporter_ubuntu_22) - -- [Ubuntu 20.04](transporter_ubuntu_20) - -- [Ubuntu 18.04](transporter_ubuntu_18) - -- [Debian 11](transporter_debian_11) - -- [Debian 10](transporter_debian_10) diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx deleted file mode 100644 index 08301c84ab9..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_centos_7.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: CentOS 7 -title: Installing EDB Transporter on CentOS 7 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `dnf repolist | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx deleted file mode 100644 index 6006919ef33..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_10.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: Debian 10 -title: Installing EDB Transporter on Debian 10 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `apt-cache search enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx deleted file mode 100644 index 92ce823bdeb..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_debian_11.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: Debian 11 -title: Installing EDB Transporter on Debian 11 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `apt-cache search enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx deleted file mode 100644 index 2fcb73d39ac..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_other_linux_8.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: AlmaLinux 8 or Rocky Linux 8 -title: Installing EDB Transporter on AlmaLinux 8 or Rocky Linux 8 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `dnf repolist | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx deleted file mode 100644 index 645be52ecd9..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_7.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: RHEL 7 or OL 7 -title: Installing EDB Transporter on RHEL 7 or OL 7 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `dnf repolist | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx deleted file mode 100644 index dc51b1565df..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_rhel_8.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: RHEL 8 or OL 8 -title: Installing EDB Transporter on RHEL 8 or OL 8 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `dnf repolist | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx deleted file mode 100644 index a590a95af45..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_12.mdx +++ /dev/null @@ -1,51 +0,0 @@ ---- -navTitle: SLES 12 -title: Installing EDB Transporter on SLES 12 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `zypper lr -E | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -- Activate the required SUSE module - ```shell - sudo SUSEConnect -p PackageHub/12.5/x86_64 - sudo SUSEConnect -p sle-sdk/12.5/x86_64 - - ``` -- Refresh the metadata - ```shell - sudo zypper refresh - ``` - -## Install the package - -Install CDCReader: - -```shell -sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx deleted file mode 100644 index 9c0f7c899f4..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_sles_15.mdx +++ /dev/null @@ -1,52 +0,0 @@ ---- -navTitle: SLES 15 -title: Installing EDB Transporter on SLES 15 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `zypper lr -E | grep enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -- Activate the required SUSE module - - ```shell - sudo SUSEConnect -p PackageHub/15.4/x86_64 - - ``` - -- Refresh the metadata - ```shell - sudo zypper refresh - ``` - -## Install the package - -Install CDCReader: - -```shell -sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx deleted file mode 100644 index b8c0820446a..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_18.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: Ubuntu 18.04 -title: Installing EDB Transporter on Ubuntu 18.04 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `apt-cache search enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx deleted file mode 100644 index 60bc1c6f566..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_20.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: Ubuntu 20.04 -title: Installing EDB Transporter on Ubuntu 20.04 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `apt-cache search enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx b/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx deleted file mode 100644 index 0a177dc39b5..00000000000 --- a/product_docs/docs/transporter/2/installing/linux_x86_64/transporter_ubuntu_22.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -navTitle: Ubuntu 22.04 -title: Installing EDB Transporter on Ubuntu 22.04 x86_64 ---- - -## Prerequisites - -Before you begin the installation process: - -- Set up the EDB repository - - Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - - To determine if your repository exists, enter this command: - - `apt-cache search enterprisedb` - - If no output is generated, the repository isn't installed. - - To set up the EDB repository: - - 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). - - 1. Select the button that provides access to the EDB repo. - - 1. Select the platform and software that you want to download. - -## Install the package - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` diff --git a/product_docs/docs/transporter/2/known_issues.mdx b/product_docs/docs/transporter/2/known_issues.mdx deleted file mode 100644 index 78879383fa0..00000000000 --- a/product_docs/docs/transporter/2/known_issues.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: "Known issues" ---- - -These EDB Transporter known issues are expected to be resolved in a future release. - -- There are currently no known issues. diff --git a/product_docs/docs/transporter/2/limitations.mdx b/product_docs/docs/transporter/2/limitations.mdx deleted file mode 100644 index 6542c6c3d1e..00000000000 --- a/product_docs/docs/transporter/2/limitations.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: "Limitations" ---- - -A limited number of Oracle data types and features aren't supported by EDB Transporter. - -See the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed comments on supported data types. - -Unsupported Oracle data types include: - -- BFILE -- LONG -- LONG RAW -- RAW -- UROWID -- User-defined types (REF, Varrays, Nested Tables) -- ANY -- XML -- Spatial - -Don't use EDB Transporter for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes currently aren't handled correctly. - -Also, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle might contain `Nan`, `+INF`, and `-INF` values. EDB Transporter doesn't support these values. diff --git a/product_docs/docs/transporter/2/migrating_data.mdx b/product_docs/docs/transporter/2/migrating_data.mdx deleted file mode 100644 index fd19e4c38ba..00000000000 --- a/product_docs/docs/transporter/2/migrating_data.mdx +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: "Migrating data" ---- -## Migration creation and status - -Source and target database schema are used to specify data to migrate along with -configurability for performance or, for example, for excluding source data. - -EDB's cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to -execute change data capture (CDC) event streaming from source to target database. An initial -snapshot occurs followed by a transition to the streaming phase of CDC event production. - -## Managing ongoing migrations - -EDB can work with you and manage in-progress migrations to: - - Exclude problematic source data - - Pause and resume migrations - - Optimize migration performance - -You can configure and manage several independent migrations using the same CDCReader, CDCWriter, -and EDB-managed cloud EDB Transporter components. - -## Migration completion and removal - -To complete the migration, stop source database traffic and allow streaming migration -to transfer all CDC events. You can then stop EDB Transporter CDCReader and CDCWriter. -Target database integrity can be validated and application cutover to the target performed. - -After confirming migration success, EDB decommissions all EDB Transporter cloud assets. diff --git a/product_docs/docs/transporter/2/supported_versions.mdx b/product_docs/docs/transporter/2/supported_versions.mdx deleted file mode 100644 index 8c90924f9ab..00000000000 --- a/product_docs/docs/transporter/2/supported_versions.mdx +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: "Product compatibility" ---- - - - -## Database versions - -The following database versions are supported. - -| Database version | Supported | -|------------------|-----------| -| Postgres 11 - 15 | Y | -| EPAS 11 - 15 | Y | -| Oracle 11g | Y | -| Oracle 12c | Y | -| Oracle 18c | Y | -| Oracle 19c | Y | -| Oracle 21c | Y | - -### Oracle -The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. For details, see [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_source_databases). - -Container databases (CDB/PDB) and non-CDB sources are supported. - -### Postgres/EDB Postgres Advanced Server -Postgres and EDB Postgres Advanced Server sources require a database role or user that can manage replications. For details, see [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_source_databases). - -When used as a target, EDB Transporter requires a database role or user that can write to the appropriate target tables. For details, see the [Preparing target databases](preparing_db/preparing_target_databases/#preparing_target_databases). - -## Operating systems -EDB Transporter's customer-side software can run on Linux and Mac OS systems. You can run the source or target database on any system, including Windows. diff --git a/product_docs/docs/transporter/2/terminology.mdx b/product_docs/docs/transporter/2/terminology.mdx deleted file mode 100644 index c445544034e..00000000000 --- a/product_docs/docs/transporter/2/terminology.mdx +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "Terminology" ---- -The terminology that follows is important for understanding EDB Transporter functionality. - -## Kafka -Apache Kafka is an open-source, distributed-event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. - -## Change data capture (CDC) -CDC is a set of software design patterns used to determine and track the data that changed (the "deltas") so that you can take action using the changed data. - -## Debezium -Debezium is an open-source distributed platform for change data capture. - -## CDCReader -CDCReader uses Debezium to perform CDC on the source database and produce Kafka messages containing the change events. - -## CDCWriter -CDCWriter consumes CDC event messages from Kafka and writes them to the replication's target database. diff --git a/product_docs/docs/transporter/2/upgrading.mdx b/product_docs/docs/transporter/2/upgrading.mdx deleted file mode 100644 index de0299d91e8..00000000000 --- a/product_docs/docs/transporter/2/upgrading.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: "Upgrading" ---- - -Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt to any data migration. -These components are designed to terminate and restart gracefully. - -To upgrade the software: - -1. Stop the software you're upgrading (CDCReader or CDCWriter). - -1. Install and start a new version of that software. - -Data migration resumes. - -Incompatible upgrades are documented in the [release notes](rel_notes) and can be identified -by major version number increases. diff --git a/product_docs/docs/transporter/alpha/index.mdx b/product_docs/docs/transporter/alpha/index.mdx deleted file mode 100644 index d740d1e899a..00000000000 --- a/product_docs/docs/transporter/alpha/index.mdx +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: Transporter -hideVersion: true ---- \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/installing/index.mdx b/product_docs/docs/transporter/preview/installing/index.mdx deleted file mode 100644 index 7e4caa64d60..00000000000 --- a/product_docs/docs/transporter/preview/installing/index.mdx +++ /dev/null @@ -1,21 +0,0 @@ ---- -navTitle: "Installing" -title: "Installing EDB Transporter Software" -hideVersion: true ---- - - - -## Installation Guidance - -- [Installation for Debian and derivatives](installing_debian) -- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) - -## Upgrade Guidance - -Upgrades to CDCReader and CDCWriter are straightforward but involve a temporary halt in any data migration. -These components are designed to crash and restart gracefully. To upgrade the software, CDCReader and/or CDCWriter -are stopped. A new version of CDCReader and CDCWriter are installed and started, and data migration resumes. - -Incompatible upgrades are documented in the [release notes](../release_notes/#release_notes) and can be identified -by major version number increases. diff --git a/product_docs/docs/transporter/preview/installing/installing_debian.mdx b/product_docs/docs/transporter/preview/installing/installing_debian.mdx deleted file mode 100644 index 48f6e6c3646..00000000000 --- a/product_docs/docs/transporter/preview/installing/installing_debian.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: "Installation for Debian and derivatives" ---- - - - -## Prerequisites / Repository Setup - -Quick Setup: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ - | sudo -E bash -``` - -Specific distribution or architecture: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ - | sudo -E distro=some-distro codename=some-codename arch=some-arch bash -``` - -Install Manually: - -```shell -distro="some-distro" # for example "ubuntu" -codename="some-codename" # for example "xenial" - -apt-get install -y debian-keyring # debian only -apt-get install -y debian-archive-keyring # debian only -apt-get install -y apt-transport-https -# For Debian Stretch, Ubuntu 16.04 and later -keyring_location=/usr/share/keyrings/enterprisedb-dev-archive-keyring.gpg -# For Debian Jessie, Ubuntu 15.10 and earlier -keyring_location=/etc/apt/trusted.gpg.d/enterprisedb-dev.gpg -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' | gpg --dearmor >> ${keyring_location} -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.txt?distro=${distro}&codename=${codename}' > /etc/apt/sources.list.d/enterprisedb-dev.list -apt-get update -``` - -How to remove the repository: - -```shell -rm /etc/apt/sources.list.d/enterprisedb-dev.list -apt-get clean -rm -rf /var/lib/apt/lists/* -apt-get update -``` - -## Installation - -CDCReader: - -```shell -sudo apt-get install cdcreader=1.4-1.4766136665.17.1.jammy -``` - -CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/preview/installing/installing_rhel.mdx deleted file mode 100644 index 324f11c49b8..00000000000 --- a/product_docs/docs/transporter/preview/installing/installing_rhel.mdx +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "Installation for Red Hat Enterprise Linux (RHEL) and derivatives" ---- - - - -## Prerequisites / Repository Setup - -Quick setup: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ - | sudo -E bash -``` - -Specific distribution or architecture: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ - | sudo -E distro=some-distro codename=some-codename arch=some-arch bash -``` - -Install Manually: - -```shell -distro="some-distro" # for example "el" -codename="some-codename" # for example "8" - -yum install yum-utils pygpgme -rpm --import 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.rpm.txt?distro=${distro}&codename=${codename}' > /tmp/enterprisedb-dev.repo -yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' -yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' -``` - -How to remove the repository: - -```shell -rm /etc/yum.repos.d/enterprisedb-dev.repo -rm /etc/yum.repos.d/enterprisedb-dev-source.repo -``` - -## Installation - -CDCReader: - -```shell -sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -CDCWriter: - -```shell -sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/preparing_db/index.mdx b/product_docs/docs/transporter/preview/preparing_db/index.mdx deleted file mode 100644 index 8ca92c4a60e..00000000000 --- a/product_docs/docs/transporter/preview/preparing_db/index.mdx +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: "Preparing Databases" -hideVersion: true - -navigation: - - preparing_oracle_source_databases - - preparing_postgres_source_databases - - preparing_target_databases ---- - -Select a link to access the applicable preparing instructions: - -## Source Databases -#### [Oracle](preparing_oracle_source_databases) -#### [Postgres](preparing_postgres_source_databases) - -## [Target Databases](preparing_target_databases) - diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx deleted file mode 100644 index 59443b57145..00000000000 --- a/product_docs/docs/transporter/preview/preparing_db/preparing_oracle_source_databases.mdx +++ /dev/null @@ -1,259 +0,0 @@ ---- -title: "Preparing Oracle Source Databases" ---- - - - -Configuring Oracle for EDB Transporter migrations requires a user with `sysdba` privileges. - -An Oracle source database should be configured to enable archive log mode, enable supplemental logging for the database and table columns of interest, -ensure adequate redo log space is available, and to create a user with limited privileges to carry out the data migration. - -SQL statements in this guidance should be executed with `sqlplus` or a similar client. - -``` -# You will be prompted for the password for $ORA_USER -sqlplus $ORA_USER@$ORA_HOST:$ORA_PORT/$ORA_SID as sysdba -``` - -Reference: - - `$ORA_HOST`: The Oracle DB hostname - - `$ORA_PORT`: The Oracle DB port - - `$ORA_SID`: The Oracle System ID for the DB or CDB/PDB combination - - `$ORA_USER`: An Oracle DB username capable of using `sysdba` privileges - -## Oracle Configuration - -### 1. Enable Archive Log mode - -Oracle Database can operate in `ARCHIVELOG` or `NOARCHIVELOG` mode. In `ARCHIVELOG` mode, filled redo logs are archived rather than put back into log rotation to be overwritten. This is necessary for the Change-Data-Capture (CDC) process to use LogMiner and produce a complete history of changes after an initial consistent snapshot. - -To see which mode a database is in, use the following command: - -``` -archive log list; -``` - -The returned content will indicate which mode the database is in. - -``` -Database log mode Archive Mode -...or -Database log mode No Archive Mode -``` - -If `ARCHIVELOG` mode is enabled, confirm the size of your recovery file destination is appropriate -for your workload with your DBA. If archive logging is not enabled follow the guidance below. - -It's necessary to enable a fast recovery area when enabling archive log mode. For more information on enabling an Oracle fast recovery area, see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/configuring-rman-client-basic.html#GUID-233338E2-3EE6-4248-A2B6-16A7899DB14F). - -Below, values to be specified by the user are represented in a `$FOO` naming format. - -``` -ORACLE_SID=$YOUR_SID sqlplus /nolog - -CONNECT $SYSDBA_USER/$SYSDBA_USER_PWD AS SYSDBA -alter system set db_recovery_file_dest_size = $RECOVERY_FILE_DEST_SIZE; -alter system set db_recovery_file_dest = '$RECOVERY_FILE_DEST' scope=spfile; -shutdown immediate -startup mount -alter database archivelog; -alter database open; -archive log list; -exit; -``` - -The `archive log list` output should indicate the database is now in archive log mode. - -Reference: - - `$YOUR_SID`: The Oracle DB System ID - - `$SYSDBA_USER`: The name of a user with `sysdba` privileges - - `$SYSDBA_USER_PWD`: The password for `$SYSDBA_USER` - - `$RECOVERY_FILE_DEST_SIZE`: The size allowed for the recovery behavior - - e.g. `100G` for 100 GigaBytes - - `$RECOVERY_FILE_DEST`: The filesystem path for an Oracle fast recovery area - - This may be a directory, filesystem, or Oracle Automatic Storage Management; consult your DB admins - -### 2. Enable Database Supplemental Logging - -Supplemental logging refers to the capture of additional information, such as "before" state, in Oracle redo logs. This extra redo log information is necessary for some log-based applications, such as EDB Transporter, to capture change events. Please see [this 19c reference](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) for additional information. - -Supplemental logging can be enabled at the database and table level. The following command will enable minimal supplemental logging at the database level required for LogMiner to function. - -``` -ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; -``` - -### 3. Enable Supplemental Logging for Table Columns - -For every table we'd like to migrate we must enable supplemental logging. To do -so for all columns in a table the following statement can be applied: - -``` -ALTER TABLE $TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; -``` - -`ALTER` all table-columns desired for migration. - -Reference: - - `$TABLE`: The identifier for the table to be migrated - -### 4. Verify Redo Logs for Adequate Count / Size - -EDB Transporter's migration process involves two phases -- the first is a consistent snapshot and the second is continuous streaming of database changes. This stream of database changes is powered by LogMiner and the Oracle DB redo logs. - -Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Additionally, undersized logs will cause frequent log switching and impact migration performance. - -The following commands can be used to examine the state of the database redo logs. -``` -SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; - - GROUP# TYPE MEMBER ----------- ------- -------------------------------------------------- - 1 ONLINE /opt/oracle/oradata/ORCLCDB/redo03.log - 2 ONLINE /opt/oracle/oradata/ORCLCDB/redo01.log - 3 ONLINE /opt/oracle/oradata/ORCLCDB/redo04.log - -SELECT GROUP#, ARCHIVED, BYTES/1024/1024 MB, STATUS FROM V$LOG; - - GROUP# ARC MB STATUS ----------- --- --- ---------------- - 1 YES 2000 INACTIVE - 3 YES 2000 INACTIVE - 3 NO 2000 CURRENT -``` - -In the above example we see three log groups, each with one file-member, of size 2000 MegaBytes. This may be too -small for many production databases. The redo logs can be safely adjusted with synchronous commands as in the following -statements: - -``` - ALTER DATABASE ADD LOGFILE GROUP 4 ('/opt/oracle/oradata/ORCLCDB/redo04.log') SIZE 8G; - ALTER DATABASE ADD LOGFILE GROUP 5 ('/opt/oracle/oradata/ORCLCDB/redo05.log') SIZE 8G; - ALTER DATABASE ADD LOGFILE GROUP 6 ('/opt/oracle/oradata/ORCLCDB/redo06.log') SIZE 8G; - ALTER DATABASE ADD LOGFILE GROUP 7 ('/opt/oracle/oradata/ORCLCDB/redo07.log') SIZE 8G; - ALTER SYSTEM ARCHIVE LOG CURRENT; - ALTER SYSTEM CHECKPOINT; - ALTER SYSTEM ARCHIVE LOG CURRENT; - ALTER SYSTEM CHECKPOINT; - ALTER SYSTEM ARCHIVE LOG CURRENT; - ALTER SYSTEM CHECKPOINT; - ALTER DATABASE DROP LOGFILE GROUP 1; - ALTER DATABASE DROP LOGFILE GROUP 2; - ALTER DATABASE DROP LOGFILE GROUP 3; -``` - -This would result in four new 8 GigaByte log groups, each group having a single log file. - -Consult with your DBA for appropriate production sizing. - -### 5. Create a User with Limited Privileges for Data Migration - -#### Tablespace Preparation - -It's necessary to provide a database user with adquate roles to carry out the change-data-capture (CDC) process. - -First, it's recommended to create a tablespace for the CDC user. For container databases we'll need to create a pluggable database as well. - -The following statements are examples of creating a tablespace and datafiles for CDC migration. Your database settings may vary but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size will result in a maximum of 32GB -of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, it may be necessary to add multiple `AUTOEXTEND` datafiles -when this limit may be exceeded. - -``` --- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace -CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; - --- For CDB/PDB deployments we must specify at least one tablespace datafile for the PDB -CREATE TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCPDB1/logminer_tbs_1.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; --- Additional data files can be added with as follows -ALTER TABLESPACE $TABLESPACE_NAME DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs_2.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; -``` - -Reference: - - `$TABLESPACE_NAME`: The tablespace name to be used by the CDC migration user - -#### User Creation and Access Grants - -With the tablespace files in place a user can be created with appropriate access grants -for CDC migration. - -For a CDB/PDB database setup, note the tablespace default and quota: -``` - CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD - DEFAULT TABLESPACE $TABLESPACE_NAME - QUOTA UNLIMITED ON $TABLESPACE_NAME - CONTAINER=ALL; - GRANT CREATE SESSION TO $MIGRATION_USER CONTAINER=ALL; - GRANT SET CONTAINER TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER CONTAINER=ALL; - GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER CONTAINER=ALL; - GRANT LOGMINING TO $MIGRATION_USER CONTAINER=ALL; - GRANT CREATE TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT LOCK ANY TABLE TO $MIGRATION_USER CONTAINER=ALL; - GRANT CREATE SEQUENCE TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER CONTAINER=ALL; - GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER CONTAINER=ALL; - GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER CONTAINER=ALL; -``` - -For a non-CDB database: - -``` - CREATE USER $MIGRATION_USER IDENTIFIED BY $MIGRATION_USER_PASSWORD - DEFAULT TABLESPACE $TABLESPACE_NAME - QUOTA UNLIMITED ON $TABLESPACE_NAME; - GRANT CREATE SESSION TO $MIGRATION_USER; - GRANT SELECT ON V_\$DATABASE to $MIGRATION_USER; - GRANT FLASHBACK ANY TABLE TO $MIGRATION_USER; - GRANT SELECT ANY TABLE TO $MIGRATION_USER; - GRANT SELECT_CATALOG_ROLE TO $MIGRATION_USER; - GRANT EXECUTE_CATALOG_ROLE TO $MIGRATION_USER; - GRANT SELECT ANY TRANSACTION TO $MIGRATION_USER; - GRANT SELECT ANY DICTIONARY TO $MIGRATION_USER; - GRANT LOGMINING TO $MIGRATION_USER; - GRANT CREATE TABLE TO $MIGRATION_USER; - GRANT LOCK ANY TABLE TO $MIGRATION_USER; - GRANT CREATE SEQUENCE TO $MIGRATION_USER; - GRANT EXECUTE ON DBMS_LOGMNR TO $MIGRATION_USER; - GRANT EXECUTE ON DBMS_LOGMNR_D TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGMNR_LOGS TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGMNR_CONTENTS TO $MIGRATION_USER; - GRANT SELECT ON V_\$LOGFILE TO $MIGRATION_USER; - GRANT SELECT ON V_\$ARCHIVED_LOG TO $MIGRATION_USER; - GRANT SELECT ON V_\$ARCHIVE_DEST_STATUS TO $MIGRATION_USER; - GRANT SELECT ON V_\$TRANSACTION TO $MIGRATION_USER; -``` - -Reference: - - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access - - `$MIGRATION_USER_PASSWORD`: The password for the migration user - - `$TABLESPACE_NAME`: The tablespace for `$MIGRATION_USER` - -### 3. Grant `SELECT` on Source Tables - -The new `$MIGRATION_USER` needs `SELECT` access to source tables. Oracle doesn't support -granting access to an entire schema so this needs to be done table-by-table. - -``` -GRANT SELECT ON $TABLE_NAME TO $MIGRATION_USER -``` - -Reference: - - `$MIGRATION_USER`: The name of the user to be created for CDC migration table access - - `$TABLE_NAME`: The name of an individual table to be migrated - -## More Information - - After completing the preparation outlined in this guide your database is ready for CDC migration. - - For additional information, feel free to reference the [Debezium Oracle Connector](https://debezium.io/documentation/reference/2.2/index.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx deleted file mode 100644 index dbb1b745c33..00000000000 --- a/product_docs/docs/transporter/preview/preparing_db/preparing_postgres_source_databases.mdx +++ /dev/null @@ -1,118 +0,0 @@ ---- -title: "Preparing Postgres Source Databases" ---- - - - -Configuring Postgres for EDB Transporter requires administrative privileges. A CDC migration role with limited privileges -is created for data migration. - -SQL statements in this guidance should be executed with `psql` or a similar client. - -``` -# You will be promted for the password associated with `PG_USERNAME` -psql -h $PG_HOST -p $PG_PORT -U $PG_USERNAME -d $PG_DB_NAME -``` - -Reference: - - `PG_DB_NAME`: The name of the Postgres database to connect to - - `PG_HOST`: The Postgres database host - - `PG_PORT`: The Postgres database port - - `PG_USERNAME`: An administrative user capable of creating roles, granting roles, altering ownership of tables-to-migrate, and creating a replication slot - -## Postgres Configuration - -### 1. Verify Postgres Configuration - -A few configuration entries for Postgres should be verified or set. - -1. Ensure the `wal_level` is configured as `logical`. - -The CDC migration process leverages Postgres logical decoding. Setting this to `logical` enables logical decoding of the Postgres Write-Ahead-Log (WAL). - -2. Ensure `max_wal_senders` configured appropriately - -`max_wal_senders` should be set to at least `1` if EDB Transporter migration is the first streaming -client for your database. Other streaming clients may be present and you should consult your DBA -for the appropriate value for streaming client connectivity. - -3. Ensure `max_replication_slots` configured appropriately - -`max_replication_slots` must be at least `1` for the CDC migration process. This value may be -higher if your organization makes use of Postgres replication capabilities. - -Please see the [Postgres replication documentation](https://www.postgresql.org/docs/current/runtime-config-replication.html) -for more information. - -4. Ensure `max_wal_size` configured to ensure adequate WAL LSN lifetime - -The `max_wal_size` value should be large enough that production traffic is generating -mostly timed-checkpoints and not requested-checkpoints based on WAL size. - -Additionally, the streaming migration process requires changes to be available in the WAL until -they can be streamed to durable message storage in EDB Transporter's cloud infrastructure. Setting -`max_wal_size` too small can not only impact performance but interfere with the migration process by allowing -Postgres LSNs to be dropped from the WAL before they can be streamed. - -Please see this [EDB blog post on tuning](https://www.enterprisedb.com/blog/tuning-maxwalsize-postgresql) `max_wal_size`. - -Please see the [Postgres WAL documentation](https://www.postgresql.org/docs/current/wal-configuration.html) -for more information. - -### 2. Create New Roles and Grant Acccess for CDC Migration - -First create a new role for CDC Migration with the `LOGIN` and `REPLICATION` abilities granted. - -``` -CREATE ROLE $MIGRATION_ROLE WITH REPLICATION LOGIN PASSWORD $MIGRATION_ROLE_PASSWORD; -``` - -`$MIGRATION_ROLE` needs to own the source tables in order to autocreate Postgres Publications. Because the source tables are already owned by another role, we create a role / user which can act as the new owner and grant this "replication group" role to -both the current table owner and also to `$MIGRATION_ROLE`. - -``` -CREATE ROLE $REPLICATION_GROUP; -GRANT $REPLICATION_GROUP TO $MIGRATION_ROLE; -GRANT $REPLICATION_GROUP TO $ORIGINAL_OWNER; -ALTER TABLE $TABLE_NAME OWNER TO $REPLICATION_GROUP -``` -Reference: - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `$ORIGINAL_OWNER`: The original production owner of the table - - `$REPLICATION_GROUP`: The name of a role used to own the source tables to be migrated -- for Publication autocreation - -### 3. Grant `SELECT` on Source Tables to the CDC Migration Role - -The new `$MIGRATION_ROLE` needs `SELECT` access to source tables. Access can be granted across a schema -or on a table-by-table basis. - -``` --- For an entire schema's tables -ALTER DEFAULT PRIVILEGES IN SCHEMA $DB_SCHEMA GRANT SELECT ON TABLES to $MIGRATION_ROLE - --- Table by table -GRANT SELECT ON $TABLE_NAME TO $MIGRATION_ROLE -``` - -Reference: - - `$DB_SCHEMA`: The database schema name for the tables to be migrated - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `$TABLE_NAME`: The name of an individual table to be migrated - -### 4. Create a Logical Replication Slot - -The CDC migration process for Postgres sources leverages logical decoding and the publication/subscription mechanism. To use Postgres as a source we'll need to create a replication slot for our CDC migration role. - -``` -PERFORM pg_create_logical_replication_slot('$MIGRATION_ROLE', 'pgoutput'); -``` - -Reference: - - `$MIGRATION_ROLE`: The name of the Postgres role / user to be used for CDC migration database access - - `pgoutput`: The logical decoding plugin used by EDB Transporter, supplied by Postgres. - -## More Information - - After completing the preparation outlined in this guide your database is ready for CDC migration. - - For additional information, feel free to reference the [Debezium Postgres Connector](https://debezium.io/documentation/reference/stable/connectors/postgresql.html) documentation. diff --git a/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx b/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx deleted file mode 100644 index d818c7255df..00000000000 --- a/product_docs/docs/transporter/preview/preparing_db/preparing_target_databases.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Preparing Target Databases" ---- - - - -Migration data is written to the target database over a normal JDBC connection. It's expected that a database user is available with permissions to write to target tables. - -The target database schema must exist prior to starting the data migration. -EDB Transporter provides a fault-tolerant method for migrating Change-Data-Capture (CDC) events to the target. If a CDC event doesn't match the target schema CDCWriter will stop writing data to the target until the schema mismatched is resolved. - -Target tables should be empty. If a target table has rows, such as from testing, these should be removed e.g. with `TRUNCATE`. \ No newline at end of file diff --git a/product_docs/docs/transporter/preview/release_notes.mdx b/product_docs/docs/transporter/preview/release_notes.mdx deleted file mode 100644 index d36d0da0b58..00000000000 --- a/product_docs/docs/transporter/preview/release_notes.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Release Notes" ---- - - - -# Version 2.0.0 - -New features, enhancements, bug fixes, and other changes in EDB Transporter 2.0.0 include: - -| Type | Description | -|---------------|-----------------------------------------------------------------------------------------------| -| Major Release | Initial availability of EDB Transporter Alpha migration capabilities for EDB internal testing | -| Enhancement | Parallel table snapshots available with Debezium 2.2.0 | -| Enhancement | EDB Transporter CDCWriter can be used for non-BigAnimal migrations, including on-premise | diff --git a/product_docs/docs/transporter/preview/supported_versions.mdx b/product_docs/docs/transporter/preview/supported_versions.mdx deleted file mode 100644 index eb86deb0356..00000000000 --- a/product_docs/docs/transporter/preview/supported_versions.mdx +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: "Product compatibility" ---- - - - -Supported Database and Operating System Versions --- -Database Versions ---- -The following database versions are supported -- please see additional notes in later sections. - -| Database Version | Supported | Notes | -|------------------|-----------|-------| -| Postgres 11 - 15 | Y | | -| EPAS 11 - 15 | Y | | -| Oracle 11g | Y | | -| Oracle 12c | Y | | -| Oracle 18c | Y | | -| Oracle 19c | Y | | -| Oracle 21c | Y | | - -Oracle ----- -The EDB Transporter stack requires the Oracle DB to have archive log mode enabled and supplemental logging data enabled at the table and database level. Please see -our [Oracle source configuration guidance](preparing_oracle_source_databases/#preparing_oracle_source_databases). - -Both Container Databases (CDB/PDB) and non-CDB sources are supported. - -Postgres / EPAS ----- -Postgres and EPAS sources require a database role / user which can manage replications. Please see our [Postgres source configuration guidance](preparing_postgres_source_databases/#preparing_postgres_source_databases). - -When used as a target EDB Transporter requires a database role / user which can write to the appropriate target tables. Please see the [target DB configuration guidance](preparing_target_databases/#preparing_target_databases). - -Operating Systems ---- -EDB Transporter's customer-side software can be run on Linux and Mac OS systems. The source/target database may be run on any system including Windows. diff --git a/product_docs/docs/transporter/preview/usage_overview.mdx b/product_docs/docs/transporter/preview/usage_overview.mdx deleted file mode 100644 index 5e4e06769b1..00000000000 --- a/product_docs/docs/transporter/preview/usage_overview.mdx +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: "Usage Overview" ---- - - - -The EDB Transporter migration lifecycle is as follows: - - Ensure schema compatibility - - Prepare source and target databases - - Install and run customer-side EDB Transporter software - - Share tables-to-migrate information with EDB staff (schema, table, and column name mapping between source and target) - - EDB staff deploys cloud infrastructure (control components and a message bus) - - EDB staff initiate and manage the data migration until completion - - Integrity validation and post-migration checks are performed - - Customer-side software can be stopped and removed - - Cloud infrastructure is deprovisioned by EDB staff - -Schema Compatibility ---- - -Oracle database sources must be assessed for schema compatibility using [EDB's Migration Portal](https://www.enterprisedb.com/docs/migration_portal/latest/) -prior to starting the data migration process. Incompatible schemas will need to be addressed or excluded from the migration. -A limited number of Oracle data types and features are not supported by EDB Transporter. - -Please see the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed -comments on supported data types. Unsupported data types are briefly detailed below. - -Unsupported Oracle Data Type ---- - - BFILE - - LONG - - LONG RAW - - RAW - - UROWID - - User-defined types (REF, Varrays, Nested Tables) - - ANY - - XML - - Spatial - -EDB Transporter should not be used for replicating Oracle tables that contain blob, clob, or nclob columns and are expected to get UPDATE changes. Streaming UPDATE changes are currently not handled correctly. - -Additionally, `BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle may contain `Nan`, `+INF`, and `-INF` values. These values are not supported by EDB Transporter. - - -Source and Target DB Preparation ---- -See our guides on preparing [Oracle sources](preparing_oracle_source_databases/#preparing_oracle_sources), -[Postgres sources](preparing_postgres_source_databases/#preparing_postgres_sources), and [target databases](preparing_target_databases/#preparing_target_databases). - -Installing and Configuring EDB Transporter Software ---- -See our guide on [installing and configuring](installing_customer_side_software/#installing_customer_side_software) EDB Transporter software. -EDB staff manage cloud assets required for the migration such as Apache Kafka and other services offered by Cloud Service Providers (CSPs). - -Migrating Data ---- -Migration Creation and Status ----- -Source and target database schema are used to specify data to migrate along with -configurabilty for performance or e.g. excluding source data. - -Our cloud EDB Transporter components coordinate with customer-side CDCReader and CDCWriter to -execute Change-Data-Capture (CDC) event streaming from source to target database. An initial -snapshot occurs followed by a transition to the streaming phase of CDC event production. - -Managing Ongoing Migrations ----- -EDB can work with customers and manage in-progress migrations in order to: - - Exclude problematic source data - - Pause and resume migrations - - Optimize migration performance - -Several indepedent migrations can be configured and managed using the same CDCReader, CDCWriter, -and EDB-managed cloud EDB Transporter components. - -Migration Completion and Removal ----- -To complete the migration, source database traffic should be stopped and streaming migration -allowed to transfer all CDC events. EDB Transporter CDCReader and CDCWriter can then be stopped. -Target database integrity can be validated and application cutover to the target performed. - -After confirming migration success EDB staff will decommission all EDB Transporter cloud assets. From 3cf7c0dad04c74c80a9b79545a24b4756e4f02e2 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 10:45:24 -0400 Subject: [PATCH 33/47] generated install files for 2_preview --- .../installing/linux_ppc64le/index.mdx | 18 ++++++ .../2_preview/installing/index.mdx | 40 +++++++++++--- .../linux_ppc64le/transporter_sles_12.mdx | 51 +++++++++++++++++ .../linux_ppc64le/transporter_sles_15.mdx | 52 ++++++++++++++++++ .../installing/linux_x86_64/index.mdx | 55 +++++++++++++++++++ .../linux_x86_64/transporter_centos_7.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_debian_10.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_debian_11.mdx | 40 ++++++++++++++ .../transporter_other_linux_8.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_rhel_7.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_rhel_8.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_sles_12.mdx | 51 +++++++++++++++++ .../linux_x86_64/transporter_sles_15.mdx | 52 ++++++++++++++++++ .../linux_x86_64/transporter_ubuntu_18.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_ubuntu_20.mdx | 40 ++++++++++++++ .../linux_x86_64/transporter_ubuntu_22.mdx | 40 ++++++++++++++ 16 files changed, 672 insertions(+), 7 deletions(-) create mode 100644 product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/index.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx diff --git a/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx b/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx new file mode 100644 index 00000000000..ddd7d3ecd9c --- /dev/null +++ b/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx @@ -0,0 +1,18 @@ +--- +title: "Installing EDB Transporter on Linux IBM Power (ppc64le)" +navTitle: "On Linux ppc64le" + +navigation: + - pge_rhel_9 + - pge_rhel_8 + - pge_sles_15 + - pge_sles_12 +--- + +For operating system-specific install instructions, including accessing the repo, see: + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](pge_sles_15) + +- [SLES 12](pge_sles_12) diff --git a/product_docs/docs/transporter/2_preview/installing/index.mdx b/product_docs/docs/transporter/2_preview/installing/index.mdx index 701779178b8..2393ebb6fb8 100644 --- a/product_docs/docs/transporter/2_preview/installing/index.mdx +++ b/product_docs/docs/transporter/2_preview/installing/index.mdx @@ -1,13 +1,39 @@ --- -navTitle: "Installing" -title: "Installing EDB Transporter software" +navTitle: Installing +title: Installing EDB Transporter on Linux + +navigation: + - linux_x86_64 --- - +Select a link to access the applicable installation instructions: + +## Linux [x86-64 (amd64)](linux_x86_64) + +### Red Hat Enterprise Linux (RHEL) and derivatives + +- [RHEL 8](linux_x86_64/transporter_rhel_8), [RHEL 7](linux_x86_64/transporter_rhel_7) + +- [Oracle Linux (OL) 8](linux_x86_64/transporter_rhel_8), [Oracle Linux (OL) 7](linux_x86_64/transporter_rhel_7) + +- [Rocky Linux 8](linux_x86_64/transporter_other_linux_8) + +- [AlmaLinux 8](linux_x86_64/transporter_other_linux_8) + +- [CentOS 7](linux_x86_64/transporter_centos_7) + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](linux_x86_64/transporter_sles_15), [SLES 12](linux_x86_64/transporter_sles_12) + +### Debian and derivatives + +- [Ubuntu 22.04](linux_x86_64/transporter_ubuntu_22), [Ubuntu 20.04](linux_x86_64/transporter_ubuntu_20), [Ubuntu 18.04](linux_x86_64/transporter_ubuntu_18) + +- [Debian 11](linux_x86_64/transporter_debian_11), [Debian 10](linux_x86_64/transporter_debian_10) -## Installation guidance +## Linux [IBM Power (ppc64le)](linux_ppc64le) -See: +### SUSE Linux Enterprise (SLES) -- [Installation for Debian and derivatives](installing_debian) -- [Installation for Red Hat Enterprise Linux (RHEL) and derivatives](installing_rhel) +- [SLES 15](linux_ppc64le/transporter_sles_15), [SLES 12](linux_ppc64le/transporter_sles_12) diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx new file mode 100644 index 00000000000..8043d8f9241 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx @@ -0,0 +1,51 @@ +--- +navTitle: SLES 12 +title: Installing EDB Transporter on SLES 12 ppc64le +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + ```shell + sudo SUSEConnect -p PackageHub/12.5/ppc64le + sudo SUSEConnect -p sle-sdk/12.5/ppc64le + + ``` +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx new file mode 100644 index 00000000000..32ad91c83f3 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx @@ -0,0 +1,52 @@ +--- +navTitle: SLES 15 +title: Installing EDB Transporter on SLES 15 ppc64le +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + + ```shell + sudo SUSEConnect -p PackageHub/15.4/ppc64le + + ``` + +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/index.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/index.mdx new file mode 100644 index 00000000000..f5e897fc739 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/index.mdx @@ -0,0 +1,55 @@ +--- +title: "Installing EDB Transporter on Linux x86 (amd64)" +navTitle: "On Linux x86" + +navigation: + - transporter_rhel_9 + - transporter_rhel_8 + - transporter_other_linux_9 + - transporter_other_linux_8 + - transporter_rhel_7 + - transporter_centos_7 + - transporter_sles_15 + - transporter_sles_12 + - transporter_ubuntu_22 + - transporter_ubuntu_20 + - transporter_ubuntu_18 + - transporter_debian_11 + - transporter_debian_10 +--- + +For operating system-specific install instructions, including accessing the repo, see: + +### Red Hat Enterprise Linux (RHEL) and derivatives + +- [RHEL 8](transporter_rhel_8) + +- [RHEL 7](transporter_rhel_7) + +- [Oracle Linux (OL) 8](transporter_rhel_8) + +- [Oracle Linux (OL) 7](transporter_rhel_7) + +- [Rocky Linux 8](transporter_other_linux_8) + +- [AlmaLinux 8](transporter_other_linux_8) + +- [CentOS 7](transporter_centos_7) + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](transporter_sles_15) + +- [SLES 12](transporter_sles_12) + +### Debian and derivatives + +- [Ubuntu 22.04](transporter_ubuntu_22) + +- [Ubuntu 20.04](transporter_ubuntu_20) + +- [Ubuntu 18.04](transporter_ubuntu_18) + +- [Debian 11](transporter_debian_11) + +- [Debian 10](transporter_debian_10) diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx new file mode 100644 index 00000000000..08301c84ab9 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx @@ -0,0 +1,40 @@ +--- +navTitle: CentOS 7 +title: Installing EDB Transporter on CentOS 7 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx new file mode 100644 index 00000000000..6006919ef33 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Debian 10 +title: Installing EDB Transporter on Debian 10 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx new file mode 100644 index 00000000000..92ce823bdeb --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Debian 11 +title: Installing EDB Transporter on Debian 11 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx new file mode 100644 index 00000000000..2fcb73d39ac --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx @@ -0,0 +1,40 @@ +--- +navTitle: AlmaLinux 8 or Rocky Linux 8 +title: Installing EDB Transporter on AlmaLinux 8 or Rocky Linux 8 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx new file mode 100644 index 00000000000..645be52ecd9 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx @@ -0,0 +1,40 @@ +--- +navTitle: RHEL 7 or OL 7 +title: Installing EDB Transporter on RHEL 7 or OL 7 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx new file mode 100644 index 00000000000..dc51b1565df --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx @@ -0,0 +1,40 @@ +--- +navTitle: RHEL 8 or OL 8 +title: Installing EDB Transporter on RHEL 8 or OL 8 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `dnf repolist | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo dnf install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo dnf install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx new file mode 100644 index 00000000000..a590a95af45 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx @@ -0,0 +1,51 @@ +--- +navTitle: SLES 12 +title: Installing EDB Transporter on SLES 12 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + ```shell + sudo SUSEConnect -p PackageHub/12.5/x86_64 + sudo SUSEConnect -p sle-sdk/12.5/x86_64 + + ``` +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx new file mode 100644 index 00000000000..9c0f7c899f4 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx @@ -0,0 +1,52 @@ +--- +navTitle: SLES 15 +title: Installing EDB Transporter on SLES 15 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `zypper lr -E | grep enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +- Activate the required SUSE module + + ```shell + sudo SUSEConnect -p PackageHub/15.4/x86_64 + + ``` + +- Refresh the metadata + ```shell + sudo zypper refresh + ``` + +## Install the package + +Install CDCReader: + +```shell +sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 +``` + +Install CDCWriter: + +```shell +sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx new file mode 100644 index 00000000000..b8c0820446a --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 18.04 +title: Installing EDB Transporter on Ubuntu 18.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx new file mode 100644 index 00000000000..60bc1c6f566 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 20.04 +title: Installing EDB Transporter on Ubuntu 20.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx new file mode 100644 index 00000000000..0a177dc39b5 --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx @@ -0,0 +1,40 @@ +--- +navTitle: Ubuntu 22.04 +title: Installing EDB Transporter on Ubuntu 22.04 x86_64 +--- + +## Prerequisites + +Before you begin the installation process: + +- Set up the EDB repository + + Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. + + To determine if your repository exists, enter this command: + + `apt-cache search enterprisedb` + + If no output is generated, the repository isn't installed. + + To set up the EDB repository: + + 1. Go to [EDB repositories](https://www.enterprisedb.com/repos-downloads). + + 1. Select the button that provides access to the EDB repo. + + 1. Select the platform and software that you want to download. + +## Install the package + +Install CDCReader: + +```shell +sudo apt-get install cdcreader=-1.4-1.4766136665.17.1.jammy +``` + +Install CDCWriter: + +```shell +sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy +``` From b51230c3635b93e2724b4e3ffcc107976686ea55 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 10:45:45 -0400 Subject: [PATCH 34/47] changed version from 2 to 2_preview --- install_template/config.yaml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/install_template/config.yaml b/install_template/config.yaml index 38899649e66..c31952c70db 100644 --- a/install_template/config.yaml +++ b/install_template/config.yaml @@ -518,43 +518,43 @@ products: platforms: - name: CentOS 7 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: AlmaLinux 8 or Rocky Linux 8 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: RHEL 7 or OL 7 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: RHEL 8 or OL 8 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: Debian 10 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: Debian 11 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: Ubuntu 18.04 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: Ubuntu 20.04 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: Ubuntu 22.04 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: SLES 12 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: SLES 12 arch: ppc64le - supported versions: [2] + supported versions: [2_preview] - name: SLES 15 arch: x86_64 - supported versions: [2] + supported versions: [2_preview] - name: SLES 15 arch: ppc64le - supported versions: [2] + supported versions: [2_preview] - name: Failover Manager platforms: - name: CentOS 7 From c09cea55b34c80492369d050fc3accbdbaa744a4 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:22:26 -0400 Subject: [PATCH 35/47] added fix to ppc index page --- .../templates/products/edb-transporter/ppc64le_index.njk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_template/templates/products/edb-transporter/ppc64le_index.njk b/install_template/templates/products/edb-transporter/ppc64le_index.njk index ae05f262a10..11bad6298dc 100644 --- a/install_template/templates/products/edb-transporter/ppc64le_index.njk +++ b/install_template/templates/products/edb-transporter/ppc64le_index.njk @@ -1,6 +1,6 @@ {% extends "platformBase/ppc64le_index.njk" %} -{% set productShortname="pge" %} +{% set productShortname="transporter" %} {% block frontmatter %} {{super()}} From 347bb4d08e088f40304895c4d7ebb4b280a5d861 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:22:49 -0400 Subject: [PATCH 36/47] generated file for ppc index page --- .../installing/linux_ppc64le/index.mdx | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 product_docs/docs/transporter/2_preview/installing/linux_ppc64le/index.mdx diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/index.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/index.mdx new file mode 100644 index 00000000000..9f32156914b --- /dev/null +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/index.mdx @@ -0,0 +1,18 @@ +--- +title: "Installing EDB Transporter on Linux IBM Power (ppc64le)" +navTitle: "On Linux ppc64le" + +navigation: + - transporter_rhel_9 + - transporter_rhel_8 + - transporter_sles_15 + - transporter_sles_12 +--- + +For operating system-specific install instructions, including accessing the repo, see: + +### SUSE Linux Enterprise (SLES) + +- [SLES 15](transporter_sles_15) + +- [SLES 12](transporter_sles_12) From 5673387c5df0010b7c575bcf03e71824a7a7187c Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:34:46 -0400 Subject: [PATCH 37/47] fixed reader install file name for SLES --- install_template/templates/products/edb-transporter/sles-12.njk | 1 + .../templates/products/edb-transporter/sles-12_ppc64le.njk | 1 + install_template/templates/products/edb-transporter/sles-15.njk | 1 + .../templates/products/edb-transporter/sles-15_ppc64le.njk | 1 + 4 files changed, 4 insertions(+) diff --git a/install_template/templates/products/edb-transporter/sles-12.njk b/install_template/templates/products/edb-transporter/sles-12.njk index d9ddbb6544d..935c60bab3b 100644 --- a/install_template/templates/products/edb-transporter/sles-12.njk +++ b/install_template/templates/products/edb-transporter/sles-12.njk @@ -2,4 +2,5 @@ {% set platformBaseTemplate = "sles-12" %} {% set packageManager = "zypper" %} {% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} diff --git a/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk index 9613af5bcbb..6f87859e6a3 100644 --- a/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk +++ b/install_template/templates/products/edb-transporter/sles-12_ppc64le.njk @@ -1,4 +1,5 @@ {% extends "products/edb-transporter/sles-12.njk" %} {% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} diff --git a/install_template/templates/products/edb-transporter/sles-15.njk b/install_template/templates/products/edb-transporter/sles-15.njk index 511feab723a..57cb9bb981b 100644 --- a/install_template/templates/products/edb-transporter/sles-15.njk +++ b/install_template/templates/products/edb-transporter/sles-15.njk @@ -2,3 +2,4 @@ {% set platformBaseTemplate = "sles-15" %} {% set packageManager = "zypper" %} {% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} diff --git a/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk b/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk index 68aa6f62e62..6e7e15e15cb 100644 --- a/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk +++ b/install_template/templates/products/edb-transporter/sles-15_ppc64le.njk @@ -1,3 +1,4 @@ {% extends "products/edb-transporter/sles-15.njk" %} {% set packageName %}cdcreader-1.4-1.4766136665.17.1.el8.x86_64{% endset %} +{% set writerPackageName %}cdcwriter-1.3-1.4766201953.4.1.el8.x86_64{% endset %} From ea58203b240c97a4d1badee7bbc92a453e832972 Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:35:03 -0400 Subject: [PATCH 38/47] generated files for SLES --- .../2_preview/installing/linux_ppc64le/transporter_sles_12.mdx | 2 +- .../2_preview/installing/linux_ppc64le/transporter_sles_15.mdx | 2 +- .../2_preview/installing/linux_x86_64/transporter_sles_12.mdx | 2 +- .../2_preview/installing/linux_x86_64/transporter_sles_15.mdx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx index 8043d8f9241..a651a292b04 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx @@ -47,5 +47,5 @@ sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 Install CDCWriter: ```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +sudo zypper install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx index 32ad91c83f3..5150f02641b 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx @@ -48,5 +48,5 @@ sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 Install CDCWriter: ```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +sudo zypper install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx index a590a95af45..763ec3d4e14 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx @@ -47,5 +47,5 @@ sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 Install CDCWriter: ```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +sudo zypper install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx index 9c0f7c899f4..2ff48258ece 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx @@ -48,5 +48,5 @@ sudo zypper install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 Install CDCWriter: ```shell -sudo zypper install cdcwriter=1.3-1.4766201953.4.1.jammy +sudo zypper install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 ``` From 0d3a6e902ee11cd9e6ef9d64a5ac9ed0b2af500d Mon Sep 17 00:00:00 2001 From: David Wicinas <93669463+dwicinas@users.noreply.github.com> Date: Mon, 24 Jul 2023 08:32:06 -0400 Subject: [PATCH 39/47] removing from PR, incorrectly added --- .../pge/2/installing/linux_ppc64le/index.mdx | 17 ----------------- .../installing/linux_ppc64le/index.mdx | 18 ------------------ 2 files changed, 35 deletions(-) delete mode 100644 product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx delete mode 100644 product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx diff --git a/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx b/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx deleted file mode 100644 index f9dc5ae4bb3..00000000000 --- a/product_docs/docs/pge/2/installing/linux_ppc64le/index.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: "Installing EDB Transporter on Linux IBM Power (ppc64le)" -navTitle: "On Linux ppc64le" - -navigation: - - pge_rhel_8 - - pge_sles_15 - - pge_sles_12 ---- - -For operating system-specific install instructions, including accessing the repo, see: - -### SUSE Linux Enterprise (SLES) - -- [SLES 15](pge_sles_15) - -- [SLES 12](pge_sles_12) diff --git a/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx b/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx deleted file mode 100644 index ddd7d3ecd9c..00000000000 --- a/product_docs/docs/pge/2_preview/installing/linux_ppc64le/index.mdx +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: "Installing EDB Transporter on Linux IBM Power (ppc64le)" -navTitle: "On Linux ppc64le" - -navigation: - - pge_rhel_9 - - pge_rhel_8 - - pge_sles_15 - - pge_sles_12 ---- - -For operating system-specific install instructions, including accessing the repo, see: - -### SUSE Linux Enterprise (SLES) - -- [SLES 15](pge_sles_15) - -- [SLES 12](pge_sles_12) From f84a39c5cbe3557d0d84b955c533d5b5e55f8671 Mon Sep 17 00:00:00 2001 From: Javier Perozo Date: Tue, 25 Jul 2023 11:57:19 +0200 Subject: [PATCH 40/47] EDB Transporter - Removing unused files --- .../installing/installing_debian.mdx | 64 ------------------- .../2_preview/installing/installing_rhel.mdx | 57 ----------------- 2 files changed, 121 deletions(-) delete mode 100644 product_docs/docs/transporter/2_preview/installing/installing_debian.mdx delete mode 100644 product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx diff --git a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx b/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx deleted file mode 100644 index 77b8a9c86a6..00000000000 --- a/product_docs/docs/transporter/2_preview/installing/installing_debian.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: "Installation for Debian and derivatives" ---- - - - -## Prerequisites/repository setup - -Quick setup: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ - | sudo -E bash -``` - -Set up a specific distribution or architecture: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.deb.sh' \ - | sudo -E distro=some-distro codename=some-codename arch=some-arch bash -``` - -Install manually: - -```shell -distro="some-distro" # for example "ubuntu" -codename="some-codename" # for example "xenial" - -apt-get install -y debian-keyring # debian only -apt-get install -y debian-archive-keyring # debian only -apt-get install -y apt-transport-https -# For Debian Stretch, Ubuntu 16.04 and later -keyring_location=/usr/share/keyrings/enterprisedb-dev-archive-keyring.gpg -# For Debian Jessie, Ubuntu 15.10 and earlier -keyring_location=/etc/apt/trusted.gpg.d/enterprisedb-dev.gpg -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' | gpg --dearmor >> ${keyring_location} -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.deb.txt?distro=${distro}&codename=${codename}' > /etc/apt/sources.list.d/enterprisedb-dev.list -apt-get update -``` - -Remove the repository: - -```shell -rm /etc/apt/sources.list.d/enterprisedb-dev.list -apt-get clean -rm -rf /var/lib/apt/lists/* -apt-get update -``` - -## Installation - -Install CDCReader: - -```shell -sudo apt-get install cdcreader=1.4-1.4766136665.17.1.jammy -``` - -Install CDCWriter: - -```shell -sudo apt-get install cdcwriter=1.3-1.4766201953.4.1.jammy -``` \ No newline at end of file diff --git a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx b/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx deleted file mode 100644 index 1cf91e96314..00000000000 --- a/product_docs/docs/transporter/2_preview/installing/installing_rhel.mdx +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "Installation for Red Hat Enterprise Linux (RHEL) and derivatives" ---- - - - -## Prerequisites/repository setup - -Quick setup: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ - | sudo -E bash -``` - -Set up a specific distribution or architecture: - -```shell -curl -1sLf \ - 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/setup.rpm.sh' \ - | sudo -E distro=some-distro codename=some-codename arch=some-arch bash -``` - -Install manually: - -```shell -distro="some-distro" # for example "el" -codename="some-codename" # for example "8" - -yum install yum-utils pygpgme -rpm --import 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/gpg.8FE52FF870688836.key' -curl -1sLf 'https://downloads.enterprisedb.com/j1eFdSoy7eEBo9pK/dev/config.rpm.txt?distro=${distro}&codename=${codename}' > /tmp/enterprisedb-dev.repo -yum-config-manager --add-repo '/tmp/enterprisedb-dev.repo' -yum -q makecache -y --disablerepo='*' --enablerepo='enterprisedb-dev' -``` - -Remove the repository: - -```shell -rm /etc/yum.repos.d/enterprisedb-dev.repo -rm /etc/yum.repos.d/enterprisedb-dev-source.repo -``` - -## Installation - -Install CDCReader: - -```shell -sudo yum install cdcreader-1.4-1.4766136665.17.1.el8.x86_64 -``` - -Install CDCWriter: - -```shell -sudo yum install cdcwriter-1.3-1.4766201953.4.1.el8.x86_64 -``` \ No newline at end of file From 878cc7cccaa65a009fe6b4a8b34445fda7aca247 Mon Sep 17 00:00:00 2001 From: Dj Walker-Morgan Date: Wed, 26 Jul 2023 17:58:37 +0100 Subject: [PATCH 41/47] Added Transporter icon Signed-off-by: Dj Walker-Morgan --- src/components/icon/iconNames.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/icon/iconNames.js b/src/components/icon/iconNames.js index 861ced8f4c0..b14dc74f11d 100644 --- a/src/components/icon/iconNames.js +++ b/src/components/icon/iconNames.js @@ -279,6 +279,6 @@ const iconNames = { NOT_FOUND: "color/NotFound", SERVER_ERROR: "color/ServerError", SUN: "color/Sun", - EDB_TRANSPORTER: "Migration", + EDB_TRANSPORTER: "edb-transporter", }; export default iconNames; From ae192bfaac0427cdb2c55d68a2384192ffe7dda7 Mon Sep 17 00:00:00 2001 From: Dj Walker-Morgan Date: Thu, 27 Jul 2023 08:34:37 +0100 Subject: [PATCH 42/47] Icon updates Signed-off-by: Dj Walker-Morgan --- package-lock.json | 2 +- package.json | 2 +- src/components/icon/iconNames.js | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4a19c22e27c..7bd74e18409 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "license": "Apache-2.0", "dependencies": { - "@enterprisedb/icons": "^1.25.1", + "@enterprisedb/icons": "^1.26.0", "@mdx-js/mdx": "^1.6.22", "@mdx-js/react": "^1.6.22", "algoliasearch": "^4.17.2", diff --git a/package.json b/package.json index 77a1457ee79..57b8691e953 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "update-icons": "node scripts/createIconNames.js && prettier --write src/components/icon/iconNames.js" }, "dependencies": { - "@enterprisedb/icons": "^1.25.1", + "@enterprisedb/icons": "^1.26.0", "@mdx-js/mdx": "^1.6.22", "@mdx-js/react": "^1.6.22", "algoliasearch": "^4.17.2", diff --git a/src/components/icon/iconNames.js b/src/components/icon/iconNames.js index b14dc74f11d..6c216ce9dcf 100644 --- a/src/components/icon/iconNames.js +++ b/src/components/icon/iconNames.js @@ -279,6 +279,5 @@ const iconNames = { NOT_FOUND: "color/NotFound", SERVER_ERROR: "color/ServerError", SUN: "color/Sun", - EDB_TRANSPORTER: "edb-transporter", }; export default iconNames; From 16ac8272faa033e61fbe373fa919d1f927cd1e2f Mon Sep 17 00:00:00 2001 From: Dj Walker-Morgan Date: Thu, 27 Jul 2023 11:33:19 +0100 Subject: [PATCH 43/47] Updated to bump packages Signed-off-by: Dj Walker-Morgan --- package-lock.json | 19 +++++++++---------- package.json | 4 ++-- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7bd74e18409..18e365dfb55 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "license": "Apache-2.0", "dependencies": { - "@enterprisedb/icons": "^1.26.0", + "@enterprisedb/icons": "^1.26.1", "@mdx-js/mdx": "^1.6.22", "@mdx-js/react": "^1.6.22", "algoliasearch": "^4.17.2", @@ -42,6 +42,7 @@ "globby": "^13.2.2", "graceful-fs": "^4.2.11", "hast-util-to-string": "^1.0.4", + "husky": "^8.0.3", "is-absolute-url": "^4.0.1", "markdown-to-jsx": "^7.2.1", "mdast-util-to-string": "^2.0.0", @@ -61,7 +62,6 @@ "fast-glob": "^3.2.12", "hast-util-is-element": "^2.1.3", "hast-util-to-text": "^3.1.2", - "husky": "^7.0.4", "prettier": "^2.8.8", "pretty-quick": "^3.1.3", "react-refresh": "^0.14.0", @@ -2072,9 +2072,9 @@ } }, "node_modules/@enterprisedb/icons": { - "version": "1.26.0", - "resolved": "https://npm.pkg.github.com/download/@EnterpriseDB/icons/1.26.0/e1ee18031b4d20aead6c43e113fca038d06d663c", - "integrity": "sha512-k2NWaThUJ1S9NjFJoSLk5zVgabqiNnZSzzZwBLHpXQQP3iaLObYnNaLLgUkyxXRZGFL5dEc6gS54Wlr+gtDS4w==", + "version": "1.26.1", + "resolved": "https://npm.pkg.github.com/download/@EnterpriseDB/icons/1.26.1/3540e84bc496f091c9a17ae947ccaa9ba8c4d978", + "integrity": "sha512-thsiXkfmwDYRXAl72fpBWGKe2FffvIFdtxCsXW4vffDE2vNA0IWybDtdgC4/yQ4WD3Pn47CryQ1g+DWY8L2v8w==", "dependencies": { "prop-types": "^15.8.1" }, @@ -12271,15 +12271,14 @@ } }, "node_modules/husky": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/husky/-/husky-7.0.4.tgz", - "integrity": "sha512-vbaCKN2QLtP/vD4yvs6iz6hBEo6wkSzs8HpRah1Z6aGmF2KW5PdYuAd7uX5a+OyBZHBhd+TFLqgjUgytQr4RvQ==", - "dev": true, + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", "bin": { "husky": "lib/bin.js" }, "engines": { - "node": ">=12" + "node": ">=14" }, "funding": { "url": "https://github.com/sponsors/typicode" diff --git a/package.json b/package.json index 57b8691e953..00e680ec444 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "update-icons": "node scripts/createIconNames.js && prettier --write src/components/icon/iconNames.js" }, "dependencies": { - "@enterprisedb/icons": "^1.26.0", + "@enterprisedb/icons": "^1.26.1", "@mdx-js/mdx": "^1.6.22", "@mdx-js/react": "^1.6.22", "algoliasearch": "^4.17.2", @@ -68,6 +68,7 @@ "globby": "^13.2.2", "graceful-fs": "^4.2.11", "hast-util-to-string": "^1.0.4", + "husky": "^8.0.3", "is-absolute-url": "^4.0.1", "markdown-to-jsx": "^7.2.1", "mdast-util-to-string": "^2.0.0", @@ -87,7 +88,6 @@ "fast-glob": "^3.2.12", "hast-util-is-element": "^2.1.3", "hast-util-to-text": "^3.1.2", - "husky": "^7.0.4", "prettier": "^2.8.8", "pretty-quick": "^3.1.3", "react-refresh": "^0.14.0", From 2f6b86ca6949d0bcd98b40f34fa0d8cd138be6c0 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 28 Sep 2023 11:18:38 -0400 Subject: [PATCH 44/47] Re-edited content --- .../transporter/2_preview/getting_started.mdx | 4 ++-- .../docs/transporter/2_preview/index.mdx | 3 +-- .../2_preview/installing/index.mdx | 2 +- .../linux_ppc64le/transporter_sles_12.mdx | 8 +++---- .../linux_ppc64le/transporter_sles_15.mdx | 8 +++---- .../linux_x86_64/transporter_centos_7.mdx | 4 ++-- .../linux_x86_64/transporter_debian_10.mdx | 4 ++-- .../linux_x86_64/transporter_debian_11.mdx | 4 ++-- .../transporter_other_linux_8.mdx | 4 ++-- .../linux_x86_64/transporter_rhel_7.mdx | 4 ++-- .../linux_x86_64/transporter_rhel_8.mdx | 4 ++-- .../linux_x86_64/transporter_sles_12.mdx | 4 ++-- .../linux_x86_64/transporter_sles_15.mdx | 8 +++---- .../linux_x86_64/transporter_ubuntu_18.mdx | 2 +- .../linux_x86_64/transporter_ubuntu_20.mdx | 4 ++-- .../linux_x86_64/transporter_ubuntu_22.mdx | 4 ++-- .../transporter/2_preview/migrating_data.mdx | 6 ++--- .../preparing_oracle_source_databases.mdx | 24 +++++++++---------- .../preparing_postgres_source_databases.mdx | 8 +++---- .../transporter/2_preview/terminology.mdx | 6 ++--- 20 files changed, 57 insertions(+), 58 deletions(-) diff --git a/product_docs/docs/transporter/2_preview/getting_started.mdx b/product_docs/docs/transporter/2_preview/getting_started.mdx index c64b3e826b2..8af50b2430f 100644 --- a/product_docs/docs/transporter/2_preview/getting_started.mdx +++ b/product_docs/docs/transporter/2_preview/getting_started.mdx @@ -10,7 +10,7 @@ Assess Oracle database sources for schema compatibility using the [EDB Migration ## Preparing source and target databases -You need to prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: +Prepare each source and the target databases needed for the migration. To prepare, enable archive log mode and supplemental logging on the Oracle database and create a user. For details, see: - [Preparing Oracle source databases](preparing_db/preparing_oracle_source_databases/#preparing_oracle_sources) - [Preparing Postgres source databases](preparing_db/preparing_postgres_source_databases/#preparing_postgres_sources) @@ -26,7 +26,7 @@ EDB manages cloud assets required for the migration, such as Apache Kafka and ot Share tables-to-migrate information with EDB (schema, table, and column-name mapping between source and target). -To be able to create the migration, EDB needs to know the schemas and tables needed to migrate to the target database. +To create the migration, EDB needs to know the schemas and tables needed to migrate to the target database. If the target table and column names are different from the source, EDB also needs the mapping for each table and column to its new name. diff --git a/product_docs/docs/transporter/2_preview/index.mdx b/product_docs/docs/transporter/2_preview/index.mdx index dc031cea803..a7c7e643a75 100644 --- a/product_docs/docs/transporter/2_preview/index.mdx +++ b/product_docs/docs/transporter/2_preview/index.mdx @@ -20,11 +20,10 @@ navigation: - migrating_data --- -EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique known as change data capture. This process catches changes in a source database’s rows being made by applications and streams them to a destination database, reshaping the data to the schema of the destination database in the process. +EDB Transporter offers you an effective way to migrate database data from one database to another. It does this by using the technique known as change data capture (CDC). This process catches changes in a source database’s rows being made by applications and streams them to a destination database. It reshapes the data to the schema of the destination database. By streaming the changes from one database to another, the process avoids the traditional “big bang” of exporting, converting, and importing that came with traditional migration. EDB Transporter is built on Kafka, a data-streaming technology, and Debezium, which uses that technology to move captured data between databases. When the source or destination database is on premises or in a private cloud, then you need to install EDB Transporter’s CDCReader or CDCWriter. You and EDB’s team can then plan and start your migration. - diff --git a/product_docs/docs/transporter/2_preview/installing/index.mdx b/product_docs/docs/transporter/2_preview/installing/index.mdx index 2393ebb6fb8..aeedeb431dd 100644 --- a/product_docs/docs/transporter/2_preview/installing/index.mdx +++ b/product_docs/docs/transporter/2_preview/installing/index.mdx @@ -6,7 +6,7 @@ navigation: - linux_x86_64 --- -Select a link to access the applicable installation instructions: +Select a link to access the applicable installation instructions. ## Linux [x86-64 (amd64)](linux_x86_64) diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx index a651a292b04..28b01c85ab4 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_12.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on SLES 12 ppc64le Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `zypper lr -E | grep enterprisedb` @@ -25,13 +25,13 @@ Before you begin the installation process: 1. Select the platform and software that you want to download. -- Activate the required SUSE module +- Activate the required SUSE module: ```shell sudo SUSEConnect -p PackageHub/12.5/ppc64le sudo SUSEConnect -p sle-sdk/12.5/ppc64le ``` -- Refresh the metadata +- Refresh the metadata: ```shell sudo zypper refresh ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx index 5150f02641b..73ad99c8d89 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_ppc64le/transporter_sles_15.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on SLES 15 ppc64le Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `zypper lr -E | grep enterprisedb` @@ -25,14 +25,14 @@ Before you begin the installation process: 1. Select the platform and software that you want to download. -- Activate the required SUSE module +- Activate the required SUSE module: ```shell sudo SUSEConnect -p PackageHub/15.4/ppc64le ``` -- Refresh the metadata +- Refresh the metadata: ```shell sudo zypper refresh ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx index 08301c84ab9..5413ab806d8 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_centos_7.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on CentOS 7 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `dnf repolist | grep enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx index 6006919ef33..78aa1ad0648 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_10.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on Debian 10 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `apt-cache search enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx index 92ce823bdeb..a961a4d903c 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_debian_11.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on Debian 11 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `apt-cache search enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx index 2fcb73d39ac..8c43fee6221 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_other_linux_8.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on AlmaLinux 8 or Rocky Linux 8 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `dnf repolist | grep enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx index 645be52ecd9..b69a6bb484f 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_7.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on RHEL 7 or OL 7 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `dnf repolist | grep enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx index dc51b1565df..c1a3462f578 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_rhel_8.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on RHEL 8 or OL 8 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `dnf repolist | grep enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx index 763ec3d4e14..394ad0e80f6 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on SLES 12 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `zypper lr -E | grep enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx index 2ff48258ece..f165274e835 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_15.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on SLES 15 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `zypper lr -E | grep enterprisedb` @@ -25,14 +25,14 @@ Before you begin the installation process: 1. Select the platform and software that you want to download. -- Activate the required SUSE module +- Activate the required SUSE module: ```shell sudo SUSEConnect -p PackageHub/15.4/x86_64 ``` -- Refresh the metadata +- Refresh the metadata: ```shell sudo zypper refresh ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx index b8c0820446a..4687df4eff4 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx @@ -11,7 +11,7 @@ Before you begin the installation process: Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `apt-cache search enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx index 60bc1c6f566..1d42fd70df4 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_20.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on Ubuntu 20.04 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `apt-cache search enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx index 0a177dc39b5..af8957baf8e 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_22.mdx @@ -7,11 +7,11 @@ title: Installing EDB Transporter on Ubuntu 22.04 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: `apt-cache search enterprisedb` diff --git a/product_docs/docs/transporter/2_preview/migrating_data.mdx b/product_docs/docs/transporter/2_preview/migrating_data.mdx index fd19e4c38ba..9bd9468aa45 100644 --- a/product_docs/docs/transporter/2_preview/migrating_data.mdx +++ b/product_docs/docs/transporter/2_preview/migrating_data.mdx @@ -13,9 +13,9 @@ snapshot occurs followed by a transition to the streaming phase of CDC event pro ## Managing ongoing migrations EDB can work with you and manage in-progress migrations to: - - Exclude problematic source data - - Pause and resume migrations - - Optimize migration performance + - Exclude problematic source data. + - Pause and resume migrations. + - Optimize migration performance. You can configure and manage several independent migrations using the same CDCReader, CDCWriter, and EDB-managed cloud EDB Transporter components. diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index 9f13ea27257..f660d4961d5 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -4,13 +4,13 @@ title: "Preparing Oracle source databases" -Configuring Oracle for EDB Transporter migrations requires `sysdba` privileges. +Configuring Oracle for EDB Transporter migrations requires sysdba privileges. Configure an Oracle source database to: -- Enable archive log mode -- Enable supplemental logging for the database and table columns of interest -- Ensure adequate redo log space is available -- Create a user with limited privileges to carry out the data migration +- Enable archive log mode. +- Enable supplemental logging for the database and table columns of interest. +- Ensure adequate redo log space is available. +- Create a user with limited privileges to carry out the data migration. Execute SQL statements with sqlplus or a similar client. @@ -25,7 +25,7 @@ Where: - `` is the Oracle DB hostname. - `` is the Oracle DB port. - `` is the Oracle System ID for the DB or CDB/PDB combination. - - `` is an Oracle DB username with `sysdba` privileges. + - `` is an Oracle DB username with sysdba privileges. ## Oracle configuration @@ -80,10 +80,10 @@ exit; Where: - `` is the Oracle DB system ID. - - `` is the name of a user with `sysdba` privileges. + - `` is the name of a user with sysdba privileges. - `` is the password for ``. - `` is the size allowed for the recovery behavior, for example, `100G` for 100 gigabytes. - - `` is the file system path for an Oracle fast recovery area. This path can be a directory, file system, or Oracle Automatic Storage Management. Consult your DB admin for guidance. + - `` is the file system path for an Oracle fast recovery area. This path can be a directory, file system, or Oracle Automatic Storage Management. Consult your DBA for guidance. The `archive log list` output shows the database is now in archive log mode. @@ -91,7 +91,7 @@ The `archive log list` output shows the database is now in archive log mode. Supplemental logging refers to the capture of additional information in Oracle redo logs, such as "before" state. This extra redo log information is needed for some log-based applications, such as EDB Transporter, to capture change events. See [Supplemental Logging](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-logminer-utility.html#GUID-D857AF96-AC24-4CA1-B620-8EA3DF30D72E) in the Oracle documentation for more information. -You can emable supplemental logging at the database and table level. The following command enables minimal supplemental logging required for LogMiner to function at the database level: +You can enable supplemental logging at the database and table level. The following command enables minimal supplemental logging required for LogMiner to function at the database level: ```sql ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; @@ -116,7 +116,7 @@ EDB Transporter's migration process involves two phases. The first is a consiste Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Also, undersized logs cause frequent log switching and affect migration performance. -To examine the state of the database redo logs, use these commands: +Use these commands to examine the state of the database redo logs: ```sql SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; @@ -157,7 +157,7 @@ small for many production databases. You can safely adjust the redo logs with sy These commands result in four new 8GB log groups. Each group has a single log file. -Consult with your DBA for appropriate production sizing. +Consult your DBA for appropriate production sizing. ### Create a user with limited privileges for data migration @@ -167,7 +167,7 @@ Provide a database user with adequate roles to carry out the CDC process. Then, we recommend creating a tablespace for the CDC user. For container databases, you need to create a pluggable database as well. -This example shows creating a tablespace and datafiles for CDC migration. Your database settings might vary, but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size results in a maximum of 32GB of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, you might need to add multiple `AUTOEXTEND` datafiles when this limit might be exceeded. +This example creates a tablespace and datafiles for CDC migration. Your database settings might vary, but a common configuration with `SMALLFILE` tablespaces and an 8kB database block size results in a maximum of 32GB of storage avaiable per `MAXSIZE` tablespace datafile. Therefore, you might need to add multiple `AUTOEXTEND` datafiles when this limit might be exceeded. ```sql -- Create the tablespace, or in the case of a CDB/PDB, create the CDB tablespace diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index 82c571b4624..97b0bcb6678 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -8,7 +8,7 @@ Configuring Postgres for EDB Transporter requires administrative privileges. Cre Execute SQL statements with psql or a similar client. -Run the next command to connect to the source Database using psql: +Use this command to connect to the source database using psql: ```shell psql -h -p -U -d @@ -68,13 +68,13 @@ Run the script without arguments to print the usage: ### Create new roles and grant acccess for CDC migration -First, create a new role for CDC Migration with `LOGIN` and `REPLICATION` abilities granted: +First, create a new role for CDC migration with `LOGIN` and `REPLICATION` abilities granted: ```sql CREATE ROLE WITH REPLICATION LOGIN PASSWORD ; ``` -`` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and also to ``: +`` needs to own the source tables to autocreate Postgres publications. Because the source tables are already owned by another role, you create a role/user that can act as the new owner and grant the specified replication group role to both the current table owner and to ``: ```sql CREATE ROLE ; @@ -121,7 +121,7 @@ PERFORM pg_create_logical_replication_slot('', 'pgoutput'); Where: - `` is the name of the Postgres role or user to use for CDC migration database access. - - `pgoutput` is the logical decoding plugin supplied by Postgres that EDB Transporter uses. + - `pgoutput` is the logical decoding plugin supplied by Postgres that EDB Transporter uses. ## More information diff --git a/product_docs/docs/transporter/2_preview/terminology.mdx b/product_docs/docs/transporter/2_preview/terminology.mdx index c445544034e..e21b4c24d46 100644 --- a/product_docs/docs/transporter/2_preview/terminology.mdx +++ b/product_docs/docs/transporter/2_preview/terminology.mdx @@ -1,16 +1,16 @@ --- title: "Terminology" --- -The terminology that follows is important for understanding EDB Transporter functionality. +This terminology is important for understanding EDB Transporter functionality. ## Kafka Apache Kafka is an open-source, distributed-event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. ## Change data capture (CDC) -CDC is a set of software design patterns used to determine and track the data that changed (the "deltas") so that you can take action using the changed data. +CDC is a set of software design patterns used to determine and track the data that changed (the *deltas*) so that you can take action using the changed data. ## Debezium -Debezium is an open-source distributed platform for change data capture. +Debezium is an open-source distributed platform for CDC. ## CDCReader CDCReader uses Debezium to perform CDC on the source database and produce Kafka messages containing the change events. From 871a668588711faf2dce44095ff2e9b947e51824 Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 28 Sep 2023 12:09:09 -0400 Subject: [PATCH 45/47] Update preparing_oracle_source_databases.mdx --- .../preparing_db/preparing_oracle_source_databases.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx index f660d4961d5..aa33040dac6 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_oracle_source_databases.mdx @@ -116,7 +116,7 @@ EDB Transporter's migration process involves two phases. The first is a consiste Database changes have a limited lifetime on the redo logs before the change is no longer present in the log history. This lifetime depends on the size of the redo logs, the number of redo logs, and the change throughput to the database. Also, undersized logs cause frequent log switching and affect migration performance. -Use these commands to examine the state of the database redo logs: +To examine the state of the database redo logs: ```sql SELECT GROUP#, TYPE, MEMBER FROM V$LOGFILE; From 6b51e89e8529f6ead58a8a5fb88ed849c7e4a7ae Mon Sep 17 00:00:00 2001 From: Betsy Gitelman <93718720+ebgitelman@users.noreply.github.com> Date: Thu, 28 Sep 2023 12:10:41 -0400 Subject: [PATCH 46/47] Update preparing_postgres_source_databases.mdx --- .../preparing_db/preparing_postgres_source_databases.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx index 97b0bcb6678..749e671026a 100644 --- a/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx +++ b/product_docs/docs/transporter/2_preview/preparing_db/preparing_postgres_source_databases.mdx @@ -8,7 +8,7 @@ Configuring Postgres for EDB Transporter requires administrative privileges. Cre Execute SQL statements with psql or a similar client. -Use this command to connect to the source database using psql: +To connect to the source database using psql: ```shell psql -h -p -U -d From 431b61c15df183cf7c0c54acdb61983c5c4181c6 Mon Sep 17 00:00:00 2001 From: nidhibhammar <59045594+nidhibhammar@users.noreply.github.com> Date: Thu, 28 Sep 2023 22:43:46 +0530 Subject: [PATCH 47/47] Applied Betsy's edits to the install templates --- install_template/templates/platformBase/base.njk | 2 +- .../2_preview/installing/linux_x86_64/transporter_sles_12.mdx | 4 ++-- .../installing/linux_x86_64/transporter_ubuntu_18.mdx | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/install_template/templates/platformBase/base.njk b/install_template/templates/platformBase/base.njk index 15bfe645bd4..fea01437a43 100644 --- a/install_template/templates/platformBase/base.njk +++ b/install_template/templates/platformBase/base.njk @@ -19,7 +19,7 @@ Before you begin the installation process: Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step. - To determine if your repository exists, enter this command: + To determine if your repository exists, enter: {%- filter indent(2) -%} {% block repocheck %} {# Any changes to this block should be replicated for Debian, Ubuntu, and SLES #} diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx index 394ad0e80f6..43afb22e386 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_sles_12.mdx @@ -25,13 +25,13 @@ Before you begin the installation process: 1. Select the platform and software that you want to download. -- Activate the required SUSE module +- Activate the required SUSE module: ```shell sudo SUSEConnect -p PackageHub/12.5/x86_64 sudo SUSEConnect -p sle-sdk/12.5/x86_64 ``` -- Refresh the metadata +- Refresh the metadata: ```shell sudo zypper refresh ``` diff --git a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx index 4687df4eff4..4574d87b277 100644 --- a/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx +++ b/product_docs/docs/transporter/2_preview/installing/linux_x86_64/transporter_ubuntu_18.mdx @@ -7,7 +7,7 @@ title: Installing EDB Transporter on Ubuntu 18.04 x86_64 Before you begin the installation process: -- Set up the EDB repository +- Set up the EDB repository. Setting up the repository is a one-time task. If you have already set up your repository, you don't need to perform this step.