From e81e1ce9112590c7d1bdad86a4e7853d50d9ab08 Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Thu, 12 Sep 2024 15:41:22 +0200 Subject: [PATCH 01/10] feat(mgdb): new docs --- .../environmental-footprint/index.mdx | 27 +++ .../mongodb/api-cli/backup-and-restore.mdx | 110 +++++++++ managed-databases/mongodb/api-cli/index.mdx | 8 + managed-databases/mongodb/concepts.mdx | 65 +++++ .../mongodb/how-to/add-a-database.mdx | 34 +++ .../mongodb/how-to/add-users.mdx | 51 ++++ ...caleway-create-instance-from-snapshot.webp | Bin 0 -> 42388 bytes .../how-to/assets/scaleway-dbaas-backup.webp | Bin 0 -> 21346 bytes .../assets/scaleway-dbaas-pn-attached.webp | Bin 0 -> 24278 bytes .../scaleway-rdb-engine-version-upgrade.webp | Bin 0 -> 22004 bytes .../how-to/configure-advanced-settings.mdx | 50 ++++ .../how-to/connect-database-instance.mdx | 187 +++++++++++++++ .../how-to/create-a-database-instance.mdx | 49 ++++ .../how-to/delete-a-database-instance.mdx | 38 +++ .../mongodb/how-to/delete-database.mdx | 38 +++ managed-databases/mongodb/how-to/index.mdx | 8 + .../mongodb/how-to/manage-permissions.mdx | 57 +++++ .../mongodb/how-to/manage-snapshots.mdx | 76 ++++++ .../mongodb/how-to/renew-tls-certificate.mdx | 41 ++++ managed-databases/mongodb/index.mdx | 75 ++++++ managed-databases/mongodb/quickstart.mdx | 227 ++++++++++++++++++ .../mongodb/reference-content/autohealing.mdx | 25 ++ .../mongodb/reference-content/index.mdx | 8 + .../mongodb/troubleshooting/disk-full.mdx | 29 +++ .../mongodb/troubleshooting/index.mdx | 8 + 25 files changed, 1211 insertions(+) create mode 100644 environmental-footprint/environmental-footprint/index.mdx create mode 100644 managed-databases/mongodb/api-cli/backup-and-restore.mdx create mode 100644 managed-databases/mongodb/api-cli/index.mdx create mode 100644 managed-databases/mongodb/concepts.mdx create mode 100644 managed-databases/mongodb/how-to/add-a-database.mdx create mode 100644 managed-databases/mongodb/how-to/add-users.mdx create mode 100644 managed-databases/mongodb/how-to/assets/scaleway-create-instance-from-snapshot.webp create mode 100644 managed-databases/mongodb/how-to/assets/scaleway-dbaas-backup.webp create mode 100644 managed-databases/mongodb/how-to/assets/scaleway-dbaas-pn-attached.webp create mode 100644 managed-databases/mongodb/how-to/assets/scaleway-rdb-engine-version-upgrade.webp create mode 100644 managed-databases/mongodb/how-to/configure-advanced-settings.mdx create mode 100644 managed-databases/mongodb/how-to/connect-database-instance.mdx create mode 100644 managed-databases/mongodb/how-to/create-a-database-instance.mdx create mode 100644 managed-databases/mongodb/how-to/delete-a-database-instance.mdx create mode 100644 managed-databases/mongodb/how-to/delete-database.mdx create mode 100644 managed-databases/mongodb/how-to/index.mdx create mode 100644 managed-databases/mongodb/how-to/manage-permissions.mdx create mode 100644 managed-databases/mongodb/how-to/manage-snapshots.mdx create mode 100644 managed-databases/mongodb/how-to/renew-tls-certificate.mdx create mode 100644 managed-databases/mongodb/index.mdx create mode 100644 managed-databases/mongodb/quickstart.mdx create mode 100644 managed-databases/mongodb/reference-content/autohealing.mdx create mode 100644 managed-databases/mongodb/reference-content/index.mdx create mode 100644 managed-databases/mongodb/troubleshooting/disk-full.mdx create mode 100644 managed-databases/mongodb/troubleshooting/index.mdx diff --git a/environmental-footprint/environmental-footprint/index.mdx b/environmental-footprint/environmental-footprint/index.mdx new file mode 100644 index 0000000000..95f716f451 --- /dev/null +++ b/environmental-footprint/environmental-footprint/index.mdx @@ -0,0 +1,27 @@ +--- +meta: + title: Environmental Footprint Documentation + description: Dive into Scaleway Environmental Footprint calculator with our quickstart guide, how-tos, and more. +--- + + + +## Getting Started + + + + + + diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx new file mode 100644 index 0000000000..3dad4d2589 --- /dev/null +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -0,0 +1,110 @@ +--- +meta: + title: Back up and restore Document Databases with MongoDB® tools + description: This page shows you how to back up and restore Document Databases with MongoDB® command line tools +content: + h1: Back up and restore Document Databases with MongoDB® tools + paragraph: This page shows you how to back up and restore Document Databases with MongoDB® command line tools +tags: databases mongodb ferretdb document backup database-nodes +categories: + - managed-databases + - postgresql-and-mysql +--- + +Managed Document Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. + +This means you can use MongoDB® command line tools to use and manage your Document Databases. + +This tutorial shows how to backup and restore your Document Databases with the MongoDB® `mongodump` and `mongorestore` command line database tools. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com/) + - You have a [MongoDB®-compatible client](https://www.mongodb.com/try/download/shell) installed + - You have [created a Document Database Instance](/managed-databases/document-database/how-to/create-a-database-instance) + - You have [mongodump and mongorestore tools](https://www.mongodb.com/docs/database-tools/installation/installation/) installed + + + + This tutorial shows you basic restore and backup operations. If you need additional options for the operations, refer to the [official MongoDB® documentation](https://www.mongodb.com/docs/manual/tutorial/backup-and-restore-tools/). + + Make sure you keep the `--ssl` and `--sslCAFile=` options in your commands, as you will need to authenticate using the default SSL certificate when you connect to your Database Instance. + + +## How to back up a Document Database Instance + +To create backups, we will use the `mongodump` tool, which can create backups for an entire Database Instance, logical database or collection. It can also use a query to back up part of a collection. + +1. Navigate to the [Scaleway console](https://console.scaleway.com/). +2. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +3. Click the database name or > **More info** to access the Database Instance information page. +4. Download the Database Instance's SSL certificate. + + Make sure you know the path to the certificate in your local machine, as it will be used in a later step. + +5. Run the following command, replacing the values according to the table below. + ``` + mongodump \ + --host= \ + --port= \ + --username= \ + --password="" \ + --out=/path/to/backup \ + --ssl \ + --sslCAFile= \ + --authenticationMechanism=PLAIN + ``` + + `host` + : the IP address of your Database Instance + + `port` + : the connection port of your Database Instance + + `username` + : the username of the database user created upon Database Instance creation + + `password` + : the password of the database user created upon Database Instance creation + + `out` + : the path to the folder where you want the backups to be stored on your machine + + `sslCAFile` + : the path to where your SSL certificate is stored + + `authenticationMechanism` + : the list of authentication mechanisms the server accepts + + If no response is returned, the operation was successful. You can make sure the backup occurred by checking if new files were added to the destination folder. + +## How to restore from a backup + +You can restore either an entire database backup or a subset of a backup using `mongorestore`. + +The tool restores binary backups created using `mongodump`. + +You can restore the backed up data to any database within any Database Instance. + +Run the following command, replacing the values according to the table above. You must specify the name of the destination `db`. +``` +mongorestore \ + --host= \ + --port= \ + --username= \ + --password= \ + /path/to/backup \ + --db=rdb \ + --ssl \ + --sslCAFile= \ + --authenticationMechanism=PLAIN +``` +`db` +: the name of the database to which you want to restore the backup + +If the procedure was successful, you will see an output like the following: + +``` +2023-09-04T17:50:29.893+0200 1 document(s) restored successfully. 0 document(s) failed to restore. +``` diff --git a/managed-databases/mongodb/api-cli/index.mdx b/managed-databases/mongodb/api-cli/index.mdx new file mode 100644 index 0000000000..3cd298cb41 --- /dev/null +++ b/managed-databases/mongodb/api-cli/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Managed Document Databases - API/CLI Documentation + description: Managed Document Databases API/CLI Documentation +content: + h1: Managed Document Databases - API/CLI Documentation + paragraph: Managed Document Databases API/CLI Documentation +--- diff --git a/managed-databases/mongodb/concepts.mdx b/managed-databases/mongodb/concepts.mdx new file mode 100644 index 0000000000..d9204b800f --- /dev/null +++ b/managed-databases/mongodb/concepts.mdx @@ -0,0 +1,65 @@ +--- +meta: + title: Managed Document Databases - Concepts + description: This page explains all the concepts related to Managed Document Databases. +content: + h1: Managed Document Databases - Concepts + paragraph: This page explains all the concepts related to Managed Document Databases. +tags: concepts managed-databases ferredb mongodb document +categories: + - managed-databases +--- + +## Block Storage Low Latency + +Block Storage Low Latency is a storage type similar to [Basic Block Storage](#basic-block-storage) that provides lower latency and high resiliency through 5k IOPS. You can increase your volume size to up to 10 TB. + +Refer to the [Block Storage Low Latency documentation section](/storage/block/concepts/) to learn more about this volume type. + + + Block Low Latency volumes are only available with new-generation node types and in the PAR and AMS regions. + + +## Database Instance + +A Database Instance is made up of multiple (at least 1) dedicated compute nodes, and is running a single Database Engine. Exactly one database engine is running on each node. + +## Database snapshot + +A [Snapshot](/managed-databases/document-database/how-to/manage-snapshots/) is a consistent, instantaneous copy of the Block Storage volume of your Database Instance at a certain point in time. They are designed to recover your data in case of failure or accidental alterations of the data by a user. They allow you to quickly create a new Instance from a previous state of your database, regardless of the size of the volume. Snapshots can only be stored in the same location as the original data. + +## Document database + +Document databases enable users to store and retrieve data in a document format, such as json. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. + +## Endpoint + +A point of connection to a database. The endpoint is associated with an IPv4 address and a port, and determines whether the endpoint is read-write or not. + +## Engine + +A database engine is the software component that stores and retrieves your data from a database. Currently, FerretDB 1.2.0 is available. It runs on PostgreSQL 14.8. Users do not have direct access to the PostgreSQL layer when using FerretDB. + +## Logs + +Logs can contain useful information for debugging or to know more about the behavior and activity of your databases. + +## Managed Database + +Compared to traditional database management, which requires customers to provision their infrastructure and resources to manage their databases, managed databases offer the user access to a Database Instance without setting up the hardware or configuring the software. + +## Region and Availability Zone + + + + + During the MongoDB™ Private Beta, only the France region is available. + + +## Replica-set 1-node + +An Instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. + +## Replica-set 3-nodes + +A group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. diff --git a/managed-databases/mongodb/how-to/add-a-database.mdx b/managed-databases/mongodb/how-to/add-a-database.mdx new file mode 100644 index 0000000000..22733ed3c5 --- /dev/null +++ b/managed-databases/mongodb/how-to/add-a-database.mdx @@ -0,0 +1,34 @@ +--- +meta: + title: How to create a database + description: This page explains how to create a database +content: + h1: How to create a database + paragraph: This page explains how to create a database +tags: managed-database database postgresql ferretdb database-instance mongodb +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the Database Instance name or > **More info** to access the Database Instance information page. +3. Go to the **Databases** tab. A list of your databases displays. The list includes the database created by default upon Database Instance creation. +4. Click **+ Create database** to create a new one. A pop-up appears. +5. Enter a name for your database. + +The new database appears in the list of your databases. + + + How to connect to a Document Database Instance + How to add users + \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/add-users.mdx b/managed-databases/mongodb/how-to/add-users.mdx new file mode 100644 index 0000000000..ec4060d1b5 --- /dev/null +++ b/managed-databases/mongodb/how-to/add-users.mdx @@ -0,0 +1,51 @@ +--- +meta: + title: How to add users to a Document Database Instance + description: This page explains how to add users to a Document Database Instance +content: + h1: How to add users to a Document Database Instance + paragraph: This page explains how to add users to a Document Database Instance +tags: managed-database database postgresql ferretdb database-instance mongodb +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +Users can connect to a database and access its data. Each user has a different set of customizable permissions. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Go to the **Users** tab. A list of users displays. If it is the first time you are creating a user, your list will display the user you set up during the creation of your Database Instance. +4. Click to create a new user. +5. Click to grant admin rights to the user. + + Admin rights allow a user to create logical databases and users. These rights do not override the permissions configured for the logical databases. Logical database permissions must be set up in the permissions tab. + +6. Enter the `username` and `password`. + + Optionally, you can configure the appropriate permissions according to the user. + Three types of permissions are available: + - **None:** No access to the database + - **Read:** Allow users to read tables and fields in a database + - **Write:** Allow users to write content in databases + You can select the permission type in the Permissions tab. + +7. Click **Create a user** to confirm. + + Once the user is created, it is displayed in the user list. + +To update the password, the permissions or delete the user, click to display the respective options. + + + How to create a database + How to manage user permissions + diff --git a/managed-databases/mongodb/how-to/assets/scaleway-create-instance-from-snapshot.webp b/managed-databases/mongodb/how-to/assets/scaleway-create-instance-from-snapshot.webp new file mode 100644 index 0000000000000000000000000000000000000000..0876303c3c271b88d8c81d6caec3f88d87592e7e GIT binary patch literal 42388 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 literal 0 HcmV?d00001 diff --git a/managed-databases/mongodb/how-to/assets/scaleway-dbaas-backup.webp b/managed-databases/mongodb/how-to/assets/scaleway-dbaas-backup.webp new file mode 100644 index 0000000000000000000000000000000000000000..057d7dbb9038cceb51485cc57639b94a9c65a622 GIT binary patch literal 21346 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 YBma^A$baNN@*nw+{73#H|Cufb0QlgNp#T5? literal 0 HcmV?d00001 diff --git a/managed-databases/mongodb/how-to/assets/scaleway-dbaas-pn-attached.webp b/managed-databases/mongodb/how-to/assets/scaleway-dbaas-pn-attached.webp new file mode 100644 index 0000000000000000000000000000000000000000..8e8c4bd9aa29bd008808418e79e45fce8350693e GIT binary patch literal 24278 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 zX=VTbO-%qQ0000800aRV00jU50096106qa500jU50096107d~Q00RI300963004(+ z00aO40096108Rh^000000FVFx009610FVFx00964paB2_0000100961paK8{00001 X000E)paTE|000010004a00000;RlM# literal 0 HcmV?d00001 diff --git a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx new file mode 100644 index 0000000000..a469324ed7 --- /dev/null +++ b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx @@ -0,0 +1,50 @@ +--- +meta: + title: How to configure advanced Document Database Instance settings + description: This page explains how to configure advanced database settings +content: + h1: How to configure advanced Document Database Instance settings + paragraph: This page explains how to configure advanced database settings +tags: managed-database postgresql ferretdb database-instance advanced-settings mongodb +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +Advanced settings allow you to modify the default configuration of your database engines. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + + + Changing the advanced settings can have an impact on the performance of your Database Instance. + + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the database information page. +3. Click the **Advanced settings** tab. + + To add advanced settings, follow these steps: + +- Click . +- Click **Add parameters**. +- Select your parameter from the dropdown list. +- Configure the value associated with your setting +- Click to validate. + +To delete them: +- Click in the advanced settings tab. +- Click next to the setting you wish to delete. +- Click to confirm your changes. + + + + How to clone a Database Instance + How to renew a TLS certificate + diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx new file mode 100644 index 0000000000..689c7f8daf --- /dev/null +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -0,0 +1,187 @@ +--- +meta: + title: How to connect to a Document Database Instance + description: This page explains how to connect to a Document Database Instance +content: + h1: How to connect to a Document Database Instance + paragraph: This page explains how to connect to a Document Database Instance +tags: ferretdb mongodb document database-instance managed-database database +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + + + + +- You have an account and are logged into the [Scaleway console](https://console.scaleway.com) +- You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +## How to connect via database client + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Click next to the **TLS certificate** to download it. +4. Transfer the file to where you will execute the connection command. +5. Copy the connection command located under **Connection** in the Database Instance information page. +6. Paste the connection command in your terminal, and edit the username field with the login you chose when creating the database. The full command should look like the following: + ```bash + mongosh --tls --tlsCAFile rdb-databasename.pem 'mongodb://username@ip:port/databasename?authMechanism=PLAIN' + ``` + - `rdb-databasename.pem` - the TLS certificate downloaded on **step 3**. + - `username` - the username you defined upon Database Instance creation. + - `ip` - your Database Instance's endpoint IP address. + - `database name` - the database name you entered upon Database Instance creation. The default is called `rdb`. + - `port` - the port on which your Database Instance is accessible +7. Enter your password. +If the connection is successful, you should see the following message display on your console, and be able to write queries: + ```bash + The server generated these startup warnings when booting + Powered by FerretDB v0.9.0 and PostgreSQL 14.6. + ``` + +## How to connect via an application +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Click next to the **TLS certificate** to download it. +4. Transfer the file to where you will execute the connection command. +5. Get the following connection information from the Database Instance information panel or the string displayed upon connection: + - `username`: the username you defined upon Database Instance creation. + - `password`: the user password you defined upon Database Instance creation. + - `IP`: your Database Instance's endpoint IP address. + - `port`: the port on which your Database Instance is accessible. + - `cert_file_path`: the path to your Database Instance TLS certificate. +6. Enter the information above in your application configuration file. + + You can find examples below for Python, Node.js, and Go applications: + + #### Python + + The following code shows you how to use the `pymongo` library to connect using TLS. + ```python + from pymongo.mongo_client import MongoClient + + user_name = "" + password = "" + ip = "instance_ip" + port = 1234 + cert_file_path = "" + + # Estabish the tls connection: + client = MongoClient( + f'mongodb://{user_name}:{password}@{ip}:{port}', + authMechanism='PLAIN', + tls=True, + tlsCAFile=cert_file_path, + ) + # get the database you want to use + db = client.rdb + # get the collection cars + cars = db["cars"] + # prepare a new car to be inserted + car = {"name": "Supercar", "price": 100000} + # execute the insertion + cars.insert_one(car) + # read the car you just inserted + car = cars.find_one() + # print the car, it should contain an ObjectId + print(car) + ``` + + #### Node.js + + The following code shows you how to use the `mongodb` module to connect using TLS. + + ```js + const { MongoClient } = require("mongodb"); + + userName = "" + password = "" + ip = "instance_ip" + port = 1234 + certFilePath = "" + + client = new MongoClient( + `mongodb://${userName}:${password}@${ip}:${port}`, { + tls: true, + tlsCaFile: certFilePath, + authMechanism: "PLAIN", + }) + await client.connect(); + + # get the database you want to use + const db = client.db("rdb") + # get the collection cars + const cars = db.collection("cars") + # prepare a new car to be inserted + let car = {name: "Supercar", price: 100000} + # execute the insertion + cars.insertOne(car) + # read the car you just inserted + car = cars.findOne() + # print the car, it should contain an ObjectId + print(car) + ``` + + #### Go + + The following code shows you how to use the `mongo` driver to connect using TLS. + ```go + package main + + import ( + "context" + "fmt" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" + ) + + func main() { + + username := "" + password := "" + host := "" + port := 1234 // replace with endpoint port number + caCertPath := "" + // prepare the uri for the connection + uri := fmt.Sprintf( + "mongodb://%s:%s@%s:%d/rdb?tls=true&tlsCACert=%s&authMechanism=PLAIN", + username, + password, + host, + port, + caCertPath, + ) + ctx := context.Background() + // connect to the database + client, _ := mongo.Connect(ctx, options.Client().ApplyURI(uri)) + // get the database + db := client.Database("rdb") + // get the collection + cars := db.Collection("cars") + // insert a document + carToInsert := Car{Name: "Supercar", Year: 2020} + cars.InsertOne(ctx, carToInsert) + + // read the document + carToRead := Car{} + cars.FindOne(ctx, map[string]interface{}{"name": "Supercar"}).Decode(&carToRead) + + // print the document + fmt.Println(carToRead) + + } + + type Car struct { + Name string + Year int + } + ``` + + + Create a Document Database Instance + How to create a database + \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx new file mode 100644 index 0000000000..03cbe9469b --- /dev/null +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -0,0 +1,49 @@ +--- +meta: + title: How to create a Document Database Instance + description: This page explains how to create a Document Database Instance +content: + h1: How to create a Document Database Instance + paragraph: This page explains how to create a Document Database Instance +tags: postgresql ferretdb mongodb database-instance managed-database database +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +Managed Document Databases provide fully-managed document Database Instances, with FerretDB as a database engine. + +Document databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization + + +## How to create a database + +1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. +2. Click **Create a Database Instance**. The creation wizard displays. +3. Complete the following steps in the wizard: + - Select ** MongoDB™** as a database engine. + - Choose a region. This is the geographical location where your database will be deployed. + - Select a database configuration. You can choose between: + - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. + - Select a node type. + - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume to up to 10 TB. + - Add a name and set a password for your user. + + Your username must adhere to specific criteria. + - Length must be between 1 and 63 characters + - First character must be an alphabetic character (**a-Za-Z**) + - It can not start with **_rdb** + - Only **a-zA-Z0-9_$-** characters are accepted + + - Enter a name for your Database Instance. +4. Click **Create a Database Instance** to confirm your choices and launch creation. + + You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx new file mode 100644 index 0000000000..44097314dd --- /dev/null +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -0,0 +1,38 @@ +--- +meta: + title: How to delete a MongoDB™ Database Instance + description: This page explains how to delete a Database +content: + h1: How to delete a MongoDB™ Database Instance + paragraph: This page explains how to delete a Database +tags: managed-database postgresql ferretdb mongodb document database-instance +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/document-database/quickstart) + + +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform you that: + + This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. + +4. Type **DELETE** to confirm and click **Delete this Instance**. + + Alternatively, you can delete your Instance from the Database Instances list by clicking next to the Instance name and then **Delete**. + + + + + How to delete a database + diff --git a/managed-databases/mongodb/how-to/delete-database.mdx b/managed-databases/mongodb/how-to/delete-database.mdx new file mode 100644 index 0000000000..ecc8009aab --- /dev/null +++ b/managed-databases/mongodb/how-to/delete-database.mdx @@ -0,0 +1,38 @@ +--- +meta: + title: How to delete a database + description: This page explains how to delete a database +content: + h1: How to delete a database + paragraph: This page explains how to delete a database +tags: managed-database postgresql ferretdb mongodb document database-instance +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [database](/managed-databases/document-database/how-to/add-a-database) + + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the Database Instance name or > **More info** to access the Database Instance information page. +3. Go to the **Databases** tab. A list of your databases displays. +4. Click > **Delete** next to the database of your choice. A pop-up appears to inform that: + + This will permanently destroy your database and all your data will be lost. This action is irreversible. + +5. Type **DELETE** to confirm and click **Delete database**. + + + + How to manage Read Replicas + How to delete a Database Instance + diff --git a/managed-databases/mongodb/how-to/index.mdx b/managed-databases/mongodb/how-to/index.mdx new file mode 100644 index 0000000000..40b036d065 --- /dev/null +++ b/managed-databases/mongodb/how-to/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Managed Document Databases - How Tos + description: Managed Document Databases How Tos +content: + h1: Managed Document Databases - How Tos + paragraph: Managed Document Databases How Tos +--- diff --git a/managed-databases/mongodb/how-to/manage-permissions.mdx b/managed-databases/mongodb/how-to/manage-permissions.mdx new file mode 100644 index 0000000000..846226bca0 --- /dev/null +++ b/managed-databases/mongodb/how-to/manage-permissions.mdx @@ -0,0 +1,57 @@ +--- +meta: + title: How to manage user permissions + description: This page explains how to manage user permissions on a Database Instance +content: + h1: How to manage user permissions + paragraph: This page explains how to manage user permissions on a Database Instance +tags: document ferretdb managed-database postgresql database-instance mongodb +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +Permissions define the actions a user can perform on a logical database. A database user is generated automatically when you create your Database Instance and this user is attributed all permissions. +However, newly created users have no permissions by default. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +## Set permissions for an existing user + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Go to the **Users** tab. A list of users displays. +4. Click > Update permissions to open the user permissions panel. +5. Select the appropriate permissions for each database. + + Three types of permissions are available: + - **None:** No access to the database + - **Read:** Allow users to read tables and fields in a database + - **Write:** Allow users to write content in databases + + +6. Click **Update user** to confirm. + +## Set permissions for a new user + +During user creation, the permissions panel can be accessed through the top tab menu. +For more information, see [how to add users](/managed-databases/document-database/how-to/add-users). + + + Permissions are applied on existing items **at the time the configuration is set**, and not applied to any items created afterward. + When you modify your Database configuration, your configured permissions are automatically set to **Custom**. The **Custom** setting ensures that your permissions are still valid for items created before you reconfigured your Database. + Any items created after you change your configuration will not have permissions applied to them, you must set new permissions. + + + + + How to add users + How to manage allowed IPs + diff --git a/managed-databases/mongodb/how-to/manage-snapshots.mdx b/managed-databases/mongodb/how-to/manage-snapshots.mdx new file mode 100644 index 0000000000..db79f900ca --- /dev/null +++ b/managed-databases/mongodb/how-to/manage-snapshots.mdx @@ -0,0 +1,76 @@ +--- +meta: + title: How to manage Document Database snapshots + description: This page explains how to manage database snapshots +content: + h1: How to manage Document Database snapshots + paragraph: This page explains how to manage database snapshots +tags: managed-database database database-snapshot ferretdb mongodb document +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +[Snapshots](/managed-databases/document-database/how-to/manage-snapshots/) allow you to restore data in a new Database Instance. + +When you set up [autobackups](/managed-databases/document-database/how-to/enable-autobackup/) the automatic backups are created in snapshot format. + +You can have up to 100 snapshots per Instance and project (depending on quotas). + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +## How to create snapshots + +1. Go to the **Snapshots** tab of your Database Instance of choice. +2. Click **+ Create snapshot**. + + Make sure your Instance is in `READY` state before creating a snapshot. + + A pop-up displays. +3. Enter a name for your snapshot and set up the expiration date and time. + + The default retention period for snapshots is 365 days. + +4. Click **Create snapshot** to confirm. + +## How to create a Database Instance from a snapshot + +You can restore the data contained in a snapshot to a Database Instance. When you do so, a new Database Instance is created and billed to your account. + +1. Go to the **Snapshots** tab of your Database Instance of choice. +2. Click the next to the name of the snapshot. +3. Click **Create Database Instance from snapshot**. A pop-up appears. +4. Enter a name for your new Instance. +5. Choose a node type and configuration. + + It is possible to select a different (larger or smaller) node type for your new Instance. However, the block volume size will be the same as the size of the restored snapshot. All Instance settings will be restored if you chose a node type with the same or more memory size than the initial Instance. Settings will be reset to the default if your node type has less memory. + +6. Click **Create Instance** to confirm. + + You can see the new Instance in your Database Instances list. + +## How to delete snapshots + +When you delete a Database Instance, the associated snapshots are not deleted. Snapshots will be deleted after the retention period defined. + +If you do not wish to wait for the snapshot to expire, you can delete it manually. + +1. Go to the **Snapshots** tab of your Database Instance of choice. +2. Click next to the name of the snapshot. +3. Click **Delete**. A pop-up displays to warn you that: + + This action is irreversible and will permanently destroy your snapshot and all its data. + +4. Type **DELETE** and click **Delete snapshot** if you wish to continue. + + + How to enable autobackup + How to clone a Database Instance + diff --git a/managed-databases/mongodb/how-to/renew-tls-certificate.mdx b/managed-databases/mongodb/how-to/renew-tls-certificate.mdx new file mode 100644 index 0000000000..506a761697 --- /dev/null +++ b/managed-databases/mongodb/how-to/renew-tls-certificate.mdx @@ -0,0 +1,41 @@ +--- +meta: + title: How to renew a TLS certificate for a Database Instance + description: This page explains how to renew a TLS certificate for a Database Instance +content: + h1: How to renew a TLS certificate for a Database Instance + paragraph: This page explains how to renew a TLS certificate for a Database Instance +tags: managed-database database postgresql ferretdb mongodb document database-instance +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +The creation and management of TLS certificates is a feature included in the Managed Document Database offers. + +A certificate is generated automatically upon the creation of a Database Instance. You can renew your certificates at any time. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + + +1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Click **Renew** under **TLS Certificate** in the **Database Instance Information** section. A pop-up appears. +4. Click **Renew TLS certificate** once you have read the warnings displayed and wish to continue. + + + Renewing a certificate means you want will need to download and update the new certificate for all database clients. + + +A green success message pops up in the top right corner of the screen to confirm the certificate was renewed. + + + How to configure advanced settings + How to upgrade a Database Instance + \ No newline at end of file diff --git a/managed-databases/mongodb/index.mdx b/managed-databases/mongodb/index.mdx new file mode 100644 index 0000000000..5cf0541ec6 --- /dev/null +++ b/managed-databases/mongodb/index.mdx @@ -0,0 +1,75 @@ +--- +meta: + title: Managed Document Databases Documentation + description: Dive into Scaleway Managed Document Databases with our quickstart guides, how-tos, tutorials and more. +content: + h1: Managed Document Databases Documentation + paragraph: Dive into Scaleway Managed Document Databases with our quickstart guides, how-tos, tutorials and more. +--- + + + +## Getting Started + + + + + + + + + +## API and CLI + + + + + + + +## Changelog + + diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx new file mode 100644 index 0000000000..fa6d63b65c --- /dev/null +++ b/managed-databases/mongodb/quickstart.mdx @@ -0,0 +1,227 @@ +--- +meta: + title: Managed MongoDB™ Databases - Quickstart + description: This page shows you how to get started with Managed MongoDB™ Databases. +content: + h1: Managed MongoDB™ Databases - Quickstart + paragraph: This page shows you how to get started with Managed MongoDB™ Databases. +tags: document managed-database database mongodb +dates: + validation: 2024-09-12 + posted: 2024-09-12 +categories: + - managed-databases +--- + +Managed MongoDB™ Databases provide fully-managed document Database Instances, with MongoDB™ as a database engine. + +MongoDB™ databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™-compatible client](https://www.mongodb.com/try/download/shell) installed + +## How to create a Database Instance + +1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. +2. Click **Create a Database Instance**. The creation wizard displays. +3. Complete the following steps in the wizard: + - Select ** MongoDB™** as a database engine. + - Choose a region. This is the geographical location where your database will be deployed. + - Select a database configuration. You can choose between: + - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. + - Select a node type. + - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume to up to 10 TB. + - Add a name and set a password for your user. + + Your username must adhere to specific criteria. + - Length must be between 1 and 63 characters + - First character must be an alphabetic character (**a-Za-Z**) + - It can not start with **_rdb** + - Only **a-zA-Z0-9_$-** characters are accepted + + - Enter a name for your Database Instance. +4. Click **Create a Database Instance** to confirm your choices and launch creation. + + You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. + +## Connect to your database + +### Via database client + +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Click next to the **TLS certificate** to download it. +4. Transfer the file to where you will execute the connection command. +5. Copy the connection command located under **Connection** in the Database Instance information page. +6. Paste the connection command in your terminal, and edit the username field with the login you chose when creating the database. The full command should look like the following: + ```bash + mongosh --tls --tlsCAFile databaseinstancename.pem "mongodb://your_username:your_password@your_host:your_port/your_database" + ``` + - `databaseinstancename.pem` - the TLS certificate downloaded on **step 3**. + - `username` - the username you defined upon Database Instance creation. + - `ip` - your Database Instance's endpoint IP address. + - `database instance name` - the database name you entered upon Database Instance creation. The default database name, generated when a name is not specified, always takes on the following format: `mgdb-xxxxx-xxxx`. + - `database name` - The default is called `rdb`. If you created a new database from the Databases tab inside your Database Instance, replace it with the database name. + - `port` - the port on which your Database Instance is accessible +7. Enter your password. +If the connection is successful, you should see the following message display on your console, and be able to write queries: + ```bash + The server generated these startup warnings when booting + Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + ``` + +### Via an application +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Click next to the **TLS certificate** to download it. +4. Transfer the file to where you will execute the connection command. +5. Get the following connection information from the Database Instance information panel or the string displayed upon connection: + - `username`: the username you defined upon Database Instance creation. + - `password`: the user password you defined upon Database Instance creation. + - `IP`: your Database Instance's endpoint IP address. + - `port`: the port on which your Database Instance is accessible. + - `cert_file_path`: the path to your Database Instance TLS certificate. +6. Enter the information above in your application configuration file. + + You can find examples below for Python, Node.js, and Go applications: + + #### Python + + The following code shows you how to use the `pymongo` library to connect using TLS. + ```python + from pymongo.mongo_client import MongoClient + + user_name = "" + password = "" + ip = "instance_ip" + port = 1234 + cert_file_path ="" + + # Estabish the tls connection: + client = MongoClient( + f'mongodb://{user_name}:{password}@{ip}:{port}', + authMechanism='PLAIN', + tls=True, + tlsCAFile=cert_file_path, + ) + # get the database you want to use + db = client.rdb + # get the collection cars + cars = db["cars"] + # prepare a new car to be inserted + car = {"name": "Supercar", "price": 100000} + # execute the insertion + cars.insert_one(car) + # read the car you just inserted + car = cars.find_one() + # print the car, it should contain an ObjectId + print(car) + ``` + + + #### Node.js + + The following code shows you how to use the `mongodb` module to connect using TLS. + + ```js + const { MongoClient } = require("mongodb"); + + userName = "" + password = "" + ip = "instance_ip" + port = 1234 + certFilePath = "" + + client = new MongoClient( + `mongodb://${userName}:${password}@${ip}:${port}`, { + tls: true, + tlsCaFile: certFilePath, + authMechanism: "PLAIN", + }) + await client.connect(); + + # get the database you want to use + const db = client.db("rdb") + # get the collection cars + const cars = db.collection("cars") + # prepare a new car to be inserted + let car = {name: "Supercar", price: 100000} + # execute the insertion + cars.insertOne(car) + # read the car you just inserted + car = cars.findOne() + # print the car, it should contain an ObjectId + print(car) + ``` + + #### Go + + The following code shows you how to use the `mongo` driver to connect using TLS. + ```go + package main + + import ( + "context" + "fmt" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" + ) + + func main() { + + username := "" + password := "" + host := "" + port := 1234 // replace with endpoint port number + caCertPath := "" + // prepare the uri for the connection + uri := fmt.Sprintf( + "mongodb://%s:%s@%s:%d/rdb?tls=true&tlsCACert=%s&authMechanism=PLAIN", + username, + password, + host, + port, + caCertPath, + ) + ctx := context.Background() + // connect to the database + client, _ := mongo.Connect(ctx, options.Client().ApplyURI(uri)) + // get the database + db := client.Database("rdb") + // get the collection + cars := db.Collection("cars") + // insert a document + carToInsert := Car{Name: "Supercar", Year: 2020} + cars.InsertOne(ctx, carToInsert) + + // read the document + carToRead := Car{} + cars.FindOne(ctx, map[string]interface{}{"name": "Supercar"}).Decode(&carToRead) + + // print the document + fmt.Println(carToRead) + + } + + type Car struct { + Name string + Year int + } + ``` + + +## How to delete your database + +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform that: + + This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. + +4. Type **DELETE** to confirm and click **Delete this Instance**. + + Alternatively, you can delete your Instance from your Database Instances list by clicking next to the Instance name and then **Delete**. + diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx new file mode 100644 index 0000000000..b6132b592d --- /dev/null +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -0,0 +1,25 @@ +--- +meta: + title: Understanding the autohealing feature + description: Learn more about the autohealing feature for Managed Document Databases +content: + h1: Understanding the autohealing feature + paragraph: Learn more about the autohealing feature for Managed Document Database +tags: databases ha high-availability autohealing database-nodes +categories: + - managed-databases +--- + +At Scaleway, High Availability Database Instances are continuously monitored and benefit from the autohealing feature. + +This feature is what guarantees your Database Instance will remain available even when one of its nodes is down. + +If your main database node goes down, the standby node will begin handling write operations in 30 to 60 seconds, depending on the type of failure. Intense writing activity may result in an increase of the failover time. + +Your Database Instance then goes into autohealing mode and switches to the `AUTOHEALING` status (represented by a blue dot in the Scaleway console). + +Your Database Instance will work only with the standby node for at most 700 seconds. + +After 700 seconds, if your main database node is still considered as down, a new node is spawned and automatically configured as a standby database node. Your initial standby nodes become the main one. + +Once this process is complete, your Database Instance goes back to `READY` status (represented by the green dot in the Scaleway console). \ No newline at end of file diff --git a/managed-databases/mongodb/reference-content/index.mdx b/managed-databases/mongodb/reference-content/index.mdx new file mode 100644 index 0000000000..498d030fc2 --- /dev/null +++ b/managed-databases/mongodb/reference-content/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Managed Document Databases - Additional content + description: Managed Document Databases additional content +content: + h1: Managed Document Databases - Additional content + paragraph: Managed Document Databases additional content +--- diff --git a/managed-databases/mongodb/troubleshooting/disk-full.mdx b/managed-databases/mongodb/troubleshooting/disk-full.mdx new file mode 100644 index 0000000000..9848424d04 --- /dev/null +++ b/managed-databases/mongodb/troubleshooting/disk-full.mdx @@ -0,0 +1,29 @@ +--- +meta: + title: Dealing with disk_full mode in a Database Instance + description: This page helps you troubleshoot issues that occurr when your Database Instance volume is near full capacity. +content: + h1: Dealing with disk_full mode in a Database Instance + paragraph: This page helps you troubleshoot issues that occurr when your Database Instance volume is near full capacity. +tags: disk-full databases +dates: + validation: 2023-12-18 + posted: 2023-02-16 +categories: + - managed-databases + - postgresql-and-mysql +--- + +Whenever your Database Instance volume is close to reaching full capacity, your Database Instance switches to `disk_full` mode. + +The Database Instance switches to `disk_full` mode when the amount of free space in the volume falls under 2% of the total volume size. + +For Database Instances where 2% of the volume size is more than 2 GB, this threshold is 2 GB. + +When the Database Instance switches to `disk_full` state, the default transaction mode automatically switches to `read only`. This allows your applications to still access its data, while preventing new data from being added. + +This state allows you to increase your volume or [upgrade your node type](/managed-databases/document-database/how-to/upgrade-a-database-instance/). You are also able to clear some space in your volume to increase your capacity. + + + Failing to clear out some of your data, or forcing insertions while the database is in `disk_full` mode leads to downtime + diff --git a/managed-databases/mongodb/troubleshooting/index.mdx b/managed-databases/mongodb/troubleshooting/index.mdx new file mode 100644 index 0000000000..bccd723ea0 --- /dev/null +++ b/managed-databases/mongodb/troubleshooting/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Managed Document Databases - Troubleshooting + description: Managed Document Databases Troubleshooting +content: + h1: Managed Document Databases - Troubleshooting + paragraph: Managed Document Databases Troubleshooting +--- From caa3ff1d8bab552b971629e1b5773a7406ec33a5 Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Wed, 18 Sep 2024 14:57:32 +0200 Subject: [PATCH 02/10] feat(mdb): connection --- .../environmental-footprint/index.mdx | 27 -- .../mongodb/api-cli/backup-and-restore.mdx | 22 +- managed-databases/mongodb/api-cli/index.mdx | 8 +- managed-databases/mongodb/concepts.mdx | 12 +- .../mongodb/how-to/add-a-database.mdx | 15 +- .../mongodb/how-to/add-users.mdx | 23 +- .../how-to/configure-advanced-settings.mdx | 19 +- .../how-to/connect-database-instance.mdx | 395 +++++++++++------- .../how-to/create-a-database-instance.mdx | 12 +- .../how-to/delete-a-database-instance.mdx | 9 +- .../mongodb/how-to/delete-database.mdx | 14 +- managed-databases/mongodb/how-to/index.mdx | 8 +- .../mongodb/how-to/manage-permissions.mdx | 13 +- .../mongodb/how-to/manage-snapshots.mdx | 17 +- .../mongodb/how-to/renew-tls-certificate.mdx | 12 +- managed-databases/mongodb/index.mdx | 42 +- managed-databases/mongodb/quickstart.mdx | 198 ++------- .../mongodb/reference-content/autohealing.mdx | 4 +- .../mongodb/reference-content/index.mdx | 8 +- .../mongodb/troubleshooting/disk-full.mdx | 2 +- .../mongodb/troubleshooting/index.mdx | 8 +- 21 files changed, 375 insertions(+), 493 deletions(-) delete mode 100644 environmental-footprint/environmental-footprint/index.mdx diff --git a/environmental-footprint/environmental-footprint/index.mdx b/environmental-footprint/environmental-footprint/index.mdx deleted file mode 100644 index 95f716f451..0000000000 --- a/environmental-footprint/environmental-footprint/index.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -meta: - title: Environmental Footprint Documentation - description: Dive into Scaleway Environmental Footprint calculator with our quickstart guide, how-tos, and more. ---- - - - -## Getting Started - - - - - - diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx index 3dad4d2589..b5c2813584 100644 --- a/managed-databases/mongodb/api-cli/backup-and-restore.mdx +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -1,28 +1,28 @@ --- meta: - title: Back up and restore Document Databases with MongoDB® tools - description: This page shows you how to back up and restore Document Databases with MongoDB® command line tools + title: Back up and restore MongoDB™ Databases with MongoDB® tools + description: This page shows you how to back up and restore MongoDB™ Databases with MongoDB® command line tools content: - h1: Back up and restore Document Databases with MongoDB® tools - paragraph: This page shows you how to back up and restore Document Databases with MongoDB® command line tools -tags: databases mongodb ferretdb document backup database-nodes + h1: Back up and restore MongoDB™ Databases with MongoDB® tools + paragraph: This page shows you how to back up and restore MongoDB™ Databases with MongoDB® command line tools +tags: databases mongodb mongodb document backup database-nodes categories: - managed-databases - postgresql-and-mysql --- -Managed Document Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. +Managed MongoDB™ Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. -This means you can use MongoDB® command line tools to use and manage your Document Databases. +This means you can use MongoDB® command line tools to use and manage your MongoDB™ Databases. -This tutorial shows how to backup and restore your Document Databases with the MongoDB® `mongodump` and `mongorestore` command line database tools. +This tutorial shows how to backup and restore your MongoDB™ Databases with the MongoDB® `mongodump` and `mongorestore` command line database tools. - You have an account and are logged into the [Scaleway console](https://console.scaleway.com/) - You have a [MongoDB®-compatible client](https://www.mongodb.com/try/download/shell) installed - - You have [created a Document Database Instance](/managed-databases/document-database/how-to/create-a-database-instance) + - You have [created a MongoDB™ Database Instance](/managed-databases/mongodb/how-to/create-a-database-instance) - You have [mongodump and mongorestore tools](https://www.mongodb.com/docs/database-tools/installation/installation/) installed @@ -32,12 +32,12 @@ This tutorial shows how to backup and restore your Document Databases with the M Make sure you keep the `--ssl` and `--sslCAFile=` options in your commands, as you will need to authenticate using the default SSL certificate when you connect to your Database Instance. -## How to back up a Document Database Instance +## How to back up a MongoDB™ Database Instance To create backups, we will use the `mongodump` tool, which can create backups for an entire Database Instance, logical database or collection. It can also use a query to back up part of a collection. 1. Navigate to the [Scaleway console](https://console.scaleway.com/). -2. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 3. Click the database name or > **More info** to access the Database Instance information page. 4. Download the Database Instance's SSL certificate. diff --git a/managed-databases/mongodb/api-cli/index.mdx b/managed-databases/mongodb/api-cli/index.mdx index 3cd298cb41..7930cc70a3 100644 --- a/managed-databases/mongodb/api-cli/index.mdx +++ b/managed-databases/mongodb/api-cli/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed Document Databases - API/CLI Documentation - description: Managed Document Databases API/CLI Documentation + title: Managed MongoDB™ Databases - API/CLI Documentation + description: Managed MongoDB™ Databases API/CLI Documentation content: - h1: Managed Document Databases - API/CLI Documentation - paragraph: Managed Document Databases API/CLI Documentation + h1: Managed MongoDB™ Databases - API/CLI Documentation + paragraph: Managed MongoDB™ Databases API/CLI Documentation --- diff --git a/managed-databases/mongodb/concepts.mdx b/managed-databases/mongodb/concepts.mdx index d9204b800f..20297321ec 100644 --- a/managed-databases/mongodb/concepts.mdx +++ b/managed-databases/mongodb/concepts.mdx @@ -1,10 +1,10 @@ --- meta: - title: Managed Document Databases - Concepts - description: This page explains all the concepts related to Managed Document Databases. + title: Managed MongoDB™ Databases - Concepts + description: This page explains all the concepts related to Managed MongoDB™ Databases. content: - h1: Managed Document Databases - Concepts - paragraph: This page explains all the concepts related to Managed Document Databases. + h1: Managed MongoDB™ Databases - Concepts + paragraph: This page explains all the concepts related to Managed MongoDB™ Databases. tags: concepts managed-databases ferredb mongodb document categories: - managed-databases @@ -26,7 +26,7 @@ A Database Instance is made up of multiple (at least 1) dedicated compute nodes, ## Database snapshot -A [Snapshot](/managed-databases/document-database/how-to/manage-snapshots/) is a consistent, instantaneous copy of the Block Storage volume of your Database Instance at a certain point in time. They are designed to recover your data in case of failure or accidental alterations of the data by a user. They allow you to quickly create a new Instance from a previous state of your database, regardless of the size of the volume. Snapshots can only be stored in the same location as the original data. +A [Snapshot](/managed-databases/mongodb/how-to/manage-snapshots/) is a consistent, instantaneous copy of the Block Storage volume of your Database Instance at a certain point in time. They are designed to recover your data in case of failure or accidental alterations of the data by a user. They allow you to quickly create a new Instance from a previous state of your database, regardless of the size of the volume. Snapshots can only be stored in the same location as the original data. ## Document database @@ -38,7 +38,7 @@ A point of connection to a database. The endpoint is associated with an IPv4 add ## Engine -A database engine is the software component that stores and retrieves your data from a database. Currently, FerretDB 1.2.0 is available. It runs on PostgreSQL 14.8. Users do not have direct access to the PostgreSQL layer when using FerretDB. +A database engine is the software component that stores and retrieves your data from a database. Currently, MongoDB™ 7.0.11 and 7.0.12 are available. ## Logs diff --git a/managed-databases/mongodb/how-to/add-a-database.mdx b/managed-databases/mongodb/how-to/add-a-database.mdx index 22733ed3c5..1edc81298b 100644 --- a/managed-databases/mongodb/how-to/add-a-database.mdx +++ b/managed-databases/mongodb/how-to/add-a-database.mdx @@ -5,10 +5,10 @@ meta: content: h1: How to create a database paragraph: This page explains how to create a database -tags: managed-database database postgresql ferretdb database-instance mongodb +tags: managed-database database postgresql mongodb database-instance mongodb dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-09-18 + posted: 2024-09-18 categories: - managed-databases --- @@ -17,18 +17,13 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the Database Instance name or > **More info** to access the Database Instance information page. 3. Go to the **Databases** tab. A list of your databases displays. The list includes the database created by default upon Database Instance creation. 4. Click **+ Create database** to create a new one. A pop-up appears. 5. Enter a name for your database. The new database appears in the list of your databases. - - - How to connect to a Document Database Instance - How to add users - \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/add-users.mdx b/managed-databases/mongodb/how-to/add-users.mdx index ec4060d1b5..95fab5a598 100644 --- a/managed-databases/mongodb/how-to/add-users.mdx +++ b/managed-databases/mongodb/how-to/add-users.mdx @@ -1,14 +1,14 @@ --- meta: - title: How to add users to a Document Database Instance - description: This page explains how to add users to a Document Database Instance + title: How to add users to a MongoDB™ Database Instance + description: This page explains how to add users to a MongoDB™ Database Instance content: - h1: How to add users to a Document Database Instance - paragraph: This page explains how to add users to a Document Database Instance -tags: managed-database database postgresql ferretdb database-instance mongodb + h1: How to add users to a MongoDB™ Database Instance + paragraph: This page explains how to add users to a MongoDB™ Database Instance +tags: managed-database database postgresql mongodb database-instance mongodb dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-09-18 + posted: 2024-09-18 categories: - managed-databases --- @@ -19,10 +19,10 @@ Users can connect to a database and access its data. Each user has a different s - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Go to the **Users** tab. A list of users displays. If it is the first time you are creating a user, your list will display the user you set up during the creation of your Database Instance. 4. Click to create a new user. @@ -44,8 +44,3 @@ Users can connect to a database and access its data. Each user has a different s Once the user is created, it is displayed in the user list. To update the password, the permissions or delete the user, click to display the respective options. - - - How to create a database - How to manage user permissions - diff --git a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx index a469324ed7..63119e2557 100644 --- a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx +++ b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx @@ -1,14 +1,14 @@ --- meta: - title: How to configure advanced Document Database Instance settings + title: How to configure advanced MongoDB™ Database Instance settings description: This page explains how to configure advanced database settings content: - h1: How to configure advanced Document Database Instance settings + h1: How to configure advanced MongoDB™ Database Instance settings paragraph: This page explains how to configure advanced database settings -tags: managed-database postgresql ferretdb database-instance advanced-settings mongodb +tags: managed-database postgresql mongodb database-instance advanced-settings mongodb dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-09-18 + posted: 2024-09-18 categories: - managed-databases --- @@ -19,14 +19,14 @@ Advanced settings allow you to modify the default configuration of your database - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) Changing the advanced settings can have an impact on the performance of your Database Instance. -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the database information page. 3. Click the **Advanced settings** tab. @@ -43,8 +43,3 @@ To delete them: - Click next to the setting you wish to delete. - Click to confirm your changes. - - - How to clone a Database Instance - How to renew a TLS certificate - diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 689c7f8daf..03aa2a2569 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -1,14 +1,14 @@ --- meta: - title: How to connect to a Document Database Instance - description: This page explains how to connect to a Document Database Instance + title: How to connect to a MongoDB™ Database Instance + description: This page explains how to connect to a MongoDB™ Database Instance content: - h1: How to connect to a Document Database Instance - paragraph: This page explains how to connect to a Document Database Instance -tags: ferretdb mongodb document database-instance managed-database database + h1: How to connect to a MongoDB™ Database Instance + paragraph: This page explains how to connect to a MongoDB™ Database Instance +tags: mongodb mongodb document database-instance managed-database database dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-09-18 + posted: 2024-09-18 categories: - managed-databases --- @@ -17,171 +17,254 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) -- You have a [Document Database Instance](/managed-databases/document-database/quickstart) +- You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) ## How to connect via database client -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. -5. Copy the connection command located under **Connection** in the Database Instance information page. -6. Paste the connection command in your terminal, and edit the username field with the login you chose when creating the database. The full command should look like the following: - ```bash - mongosh --tls --tlsCAFile rdb-databasename.pem 'mongodb://username@ip:port/databasename?authMechanism=PLAIN' +5. Return to the console and click **Connect** in the **Connect Database Instance** section. +6. Select a connection mode. The following modes are available: `mongosh`, `Python`, `Go`, `Node.js` and `Mongoose`. +7. Replace the variables in the commands with your information. + +Find below a detailed description of each connection mode: + +### mongosh + +To connect to a public endpoint using the MongoDB™ shell: + +1. Replace the following variables in the command as described: + ```sh + mongosh "mongodb+srv://{instance_id}.mgdb.{region}.scw.cloud" --tlsCAFile {your_certificate.pem} -u {username} ``` - - `rdb-databasename.pem` - the TLS certificate downloaded on **step 3**. - - `username` - the username you defined upon Database Instance creation. - - `ip` - your Database Instance's endpoint IP address. - - `database name` - the database name you entered upon Database Instance creation. The default is called `rdb`. - - `port` - the port on which your Database Instance is accessible -7. Enter your password. + + - `{your-certificate.pem}` - the TLS certificate downloaded on **step 3**. + - `{username}` - the username you defined upon Database Instance creation. + - `{db-instance-id}` - the UUID of your Database Instance. + - `{region}` - the database name you entered upon Database Instance creation. The default is called `rdb`. + + ``` +2. Run the command. +3. Enter your password when prompted. + If the connection is successful, you should see the following message display on your console, and be able to write queries: - ```bash - The server generated these startup warnings when booting - Powered by FerretDB v0.9.0 and PostgreSQL 14.6. - ``` + ```sh + The server generated these startup warnings when booting + Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + ``` -## How to connect via an application -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Click next to the **TLS certificate** to download it. -4. Transfer the file to where you will execute the connection command. -5. Get the following connection information from the Database Instance information panel or the string displayed upon connection: - - `username`: the username you defined upon Database Instance creation. - - `password`: the user password you defined upon Database Instance creation. - - `IP`: your Database Instance's endpoint IP address. - - `port`: the port on which your Database Instance is accessible. - - `cert_file_path`: the path to your Database Instance TLS certificate. -6. Enter the information above in your application configuration file. - - You can find examples below for Python, Node.js, and Go applications: - - #### Python - - The following code shows you how to use the `pymongo` library to connect using TLS. - ```python - from pymongo.mongo_client import MongoClient - - user_name = "" - password = "" - ip = "instance_ip" - port = 1234 - cert_file_path = "" - - # Estabish the tls connection: - client = MongoClient( - f'mongodb://{user_name}:{password}@{ip}:{port}', - authMechanism='PLAIN', - tls=True, - tlsCAFile=cert_file_path, - ) - # get the database you want to use - db = client.rdb - # get the collection cars - cars = db["cars"] - # prepare a new car to be inserted - car = {"name": "Supercar", "price": 100000} - # execute the insertion - cars.insert_one(car) - # read the car you just inserted - car = cars.find_one() - # print the car, it should contain an ObjectId - print(car) - ``` +Follow the same procedure to connect to a private endpoint for one node, replacing `{privateNetorkName}` with the name of your Private Netowrk: - #### Node.js - - The following code shows you how to use the `mongodb` module to connect using TLS. - - ```js - const { MongoClient } = require("mongodb"); - - userName = "" - password = "" - ip = "instance_ip" - port = 1234 - certFilePath = "" - - client = new MongoClient( - `mongodb://${userName}:${password}@${ip}:${port}`, { - tls: true, - tlsCaFile: certFilePath, - authMechanism: "PLAIN", - }) - await client.connect(); - - # get the database you want to use - const db = client.db("rdb") - # get the collection cars - const cars = db.collection("cars") - # prepare a new car to be inserted - let car = {name: "Supercar", price: 100000} - # execute the insertion - cars.insertOne(car) - # read the car you just inserted - car = cars.findOne() - # print the car, it should contain an ObjectId - print(car) - ``` + ```sh + mongosh "mongodb://{instance_id}-0.{privateNetworkName}" -u {username} + ``` - #### Go +For multiple nodes, replace `{db-instance-id}` with the Database Instance UUID of each respective Instance, and `{privateNetworkName}` with the names of your Private Network: - The following code shows you how to use the `mongo` driver to connect using TLS. - ```go - package main + ```sh + "mongodb://{instance_id}-0.{privateNetworkName},{instance_id}-1.{privateNetworkName},{instance_id}-2.{privateNetworkName}" -u {username} + ``` - import ( - "context" - "fmt" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/mongo/options" - ) +### Python - func main() { - - username := "" - password := "" - host := "" - port := 1234 // replace with endpoint port number - caCertPath := "" - // prepare the uri for the connection - uri := fmt.Sprintf( - "mongodb://%s:%s@%s:%d/rdb?tls=true&tlsCACert=%s&authMechanism=PLAIN", - username, - password, - host, - port, - caCertPath, - ) - ctx := context.Background() - // connect to the database - client, _ := mongo.Connect(ctx, options.Client().ApplyURI(uri)) - // get the database - db := client.Database("rdb") - // get the collection - cars := db.Collection("cars") - // insert a document - carToInsert := Car{Name: "Supercar", Year: 2020} - cars.InsertOne(ctx, carToInsert) - - // read the document - carToRead := Car{} - cars.FindOne(ctx, map[string]interface{}{"name": "Supercar"}).Decode(&carToRead) - - // print the document - fmt.Println(carToRead) +The following code shows you how to use the `pymongo` library to connect using TLS. - } +```python +from pymongo import MongoClient + +# Replace with your MongoDB connection details +username = "your_username" +password = "your_password" # it is best to use environment variables to manage sensitive data +instance_id = "your_instance_id" +region = "your_region" #the region of your database instance. "fr-par" if Paris +tls_certificate = "path/to/your_tls_certificate.pem" # path to your TLS certificate file +database_name = "databaseName" + +# Construct the connection string +connection_string = f"mongodb+srv://{username}:{password}@{instance_id}.mgdb.{region}.scw.cloud/?tls=true&tlsCAFile={tls_certificate}" + +# Establish a connection + +client = MongoClient(connection_string) + +# Access a specific database + +db = client[database_name] + +# Example: Access a specific collection + +collection = db['your_collection_name'] + +# Now you can interact with the collection, e.g., find documents + +documents = collection.find({}) +for doc in documents: + print(doc) +``` + +### Node.js + +The following code shows you how to use the `mongodb` module to connect using TLS. + +```js +const { MongoClient } = require('mongodb'); +const path = require('path'); - type Car struct { - Name string - Year int +// Replace with your MongoDB connection details +const username = encodeURIComponent('your_username'); +const password = encodeURIComponent('your_password'); +const region = "your_region" // "fr-par" for Paris. +const instanceId = 'your_instance_id'; // your instance id +const databaseName = 'databaseName' + +// Path to your TLS certificate file +const tlsCertificatePath = path.resolve(__dirname, 'path/to/your_tls_certificate.pem'); + +// Construct the connection string +const connectionString = `mongodb+srv://${username}:${password}@${instanceId}.mgdb.${region}.scw.cloud`; + +// Create a new MongoClient +const client = new MongoClient(connectionString, { + useNewUrlParser: true, + useUnifiedTopology: true, + tls: true, // Enable TLS/SSL + tlsCAFile: tlsCertificatePath, // Path to the CA certificate file +}); + +async function run() { + try { + // Connect to the MongoDB server + await client.connect(); + console.log('Connected to MongoDB!'); + + // Access the database and collection + const db = client.db(databaseName); + const collection = db.collection('your_collection_name'); + + // Example: Find documents in the collection + const documents = await collection.find({}).toArray(); + console.log('Documents:', documents); + } catch (err) { + console.error(err); + } finally { + // Close the connection + await client.close(); + console.log('Connection to MongoDB closed.'); } - ``` +} + +run().catch(console.dir); +``` + +### Go + +The following code shows you how to use the `mongo` driver to connect using TLS. +```go +package main + +import ( + "context" + "fmt" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" +) + +func main() { + + username := "" + password := "" + host := "" + port := 1234 // replace with endpoint port number + caCertPath := "" + // prepare the uri for the connection + uri := fmt.Sprintf( + "mongodb://%s:%s@%s:%d/rdb?tls=true&tlsCACert=%s&authMechanism=PLAIN", + username, + password, + host, + port, + caCertPath, + ) + ctx := context.Background() + // connect to the database + client, _ := mongo.Connect(ctx, options.Client().ApplyURI(uri)) + // get the database + db := client.Database("rdb") + // get the collection + cars := db.Collection("cars") + // insert a document + carToInsert := Car{Name: "Supercar", Year: 2020} + cars.InsertOne(ctx, carToInsert) + + // read the document + carToRead := Car{} + cars.FindOne(ctx, map[string]interface{}{"name": "Supercar"}).Decode(&carToRead) + + // print the document + fmt.Println(carToRead) + +} + +type Car struct { + Name string + Year int +} +``` + +### Mongoose + +The following code shows you how to use the `Mongoose` schema to connect using TLS. + +```js +const mongoose = require('mongoose'); +const path = require('path'); + +// Replace with your MongoDB connection details +const username = encodeURIComponent('your_username'); +const password = encodeURIComponent('your_password'); +const region = "your_region" // "fr-par" for Paris. +const instanceId = 'your_instance_id'; // your instance id +const databaseName = 'databaseName' + +// Path to your TLS certificate file +const tlsCertificatePath = path.resolve(__dirname, 'path/to/your_tls_certificate.pem'); + +// Construct the connection string +const connectionString = `mongodb+srv://${username}:${password}@${instanceId}.mgdb.${region}.scw.cloud`; + +// Connect to MongoDB using Mongoose +mongoose.connect(connectionString, { + useNewUrlParser: true, + useUnifiedTopology: true, + tls: true, // Enable TLS/SSL + tlsCAFile: tlsCertificatePath, // Path to the CA certificate file +}) +.then(() => { + console.log('Connected to MongoDB with Mongoose!'); +}) +.catch(err => { + console.error('Connection error', err); +}); + +// Example schema and model +const exampleSchema = new mongoose.Schema({ + name: String, + age: Number, +}); + +const ExampleModel = mongoose.model('Example', exampleSchema); + +// Example: Creating a new document +const exampleDoc = new ExampleModel({ name: 'John Doe', age: 30 }); - - Create a Document Database Instance - How to create a database - \ No newline at end of file +exampleDoc.save() +.then(doc => { + console.log('Document saved:', doc); +}) +.catch(err => { + console.error('Error saving document', err); +}); +``` \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 03cbe9469b..68f4a9faeb 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -1,11 +1,11 @@ --- meta: - title: How to create a Document Database Instance - description: This page explains how to create a Document Database Instance + title: How to create a MongoDB™ Database Instance + description: This page explains how to create a MongoDB™ Database Instance content: - h1: How to create a Document Database Instance - paragraph: This page explains how to create a Document Database Instance -tags: postgresql ferretdb mongodb database-instance managed-database database + h1: How to create a MongoDB™ Database Instance + paragraph: This page explains how to create a MongoDB™ Database Instance +tags: postgresql mongodb mongodb database-instance managed-database database dates: validation: 2024-02-08 posted: 2023-08-01 @@ -13,7 +13,7 @@ categories: - managed-databases --- -Managed Document Databases provide fully-managed document Database Instances, with FerretDB as a database engine. +Managed MongoDB™ Databases provide fully-managed document Database Instances, with MongoDB™ as a database engine. Document databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index 44097314dd..4cac4c1bb6 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -5,7 +5,7 @@ meta: content: h1: How to delete a MongoDB™ Database Instance paragraph: This page explains how to delete a Database -tags: managed-database postgresql ferretdb mongodb document database-instance +tags: managed-database postgresql mongodb mongodb document database-instance dates: validation: 2024-02-08 posted: 2023-08-01 @@ -18,7 +18,7 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. @@ -31,8 +31,3 @@ categories: Alternatively, you can delete your Instance from the Database Instances list by clicking next to the Instance name and then **Delete**. - - - - How to delete a database - diff --git a/managed-databases/mongodb/how-to/delete-database.mdx b/managed-databases/mongodb/how-to/delete-database.mdx index ecc8009aab..e972389bb6 100644 --- a/managed-databases/mongodb/how-to/delete-database.mdx +++ b/managed-databases/mongodb/how-to/delete-database.mdx @@ -5,7 +5,7 @@ meta: content: h1: How to delete a database paragraph: This page explains how to delete a database -tags: managed-database postgresql ferretdb mongodb document database-instance +tags: managed-database postgresql mongodb mongodb document database-instance dates: validation: 2024-02-08 posted: 2023-08-01 @@ -18,11 +18,11 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) - - You have a [database](/managed-databases/document-database/how-to/add-a-database) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + - You have a [database](/managed-databases/mongodb/how-to/add-a-database) -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the Database Instance name or > **More info** to access the Database Instance information page. 3. Go to the **Databases** tab. A list of your databases displays. 4. Click > **Delete** next to the database of your choice. A pop-up appears to inform that: @@ -30,9 +30,3 @@ categories: This will permanently destroy your database and all your data will be lost. This action is irreversible. 5. Type **DELETE** to confirm and click **Delete database**. - - - - How to manage Read Replicas - How to delete a Database Instance - diff --git a/managed-databases/mongodb/how-to/index.mdx b/managed-databases/mongodb/how-to/index.mdx index 40b036d065..4cf9a0f7cc 100644 --- a/managed-databases/mongodb/how-to/index.mdx +++ b/managed-databases/mongodb/how-to/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed Document Databases - How Tos - description: Managed Document Databases How Tos + title: Managed MongoDB™ Databases - How Tos + description: Managed MongoDB™ Databases How Tos content: - h1: Managed Document Databases - How Tos - paragraph: Managed Document Databases How Tos + h1: Managed MongoDB™ Databases - How Tos + paragraph: Managed MongoDB™ Databases How Tos --- diff --git a/managed-databases/mongodb/how-to/manage-permissions.mdx b/managed-databases/mongodb/how-to/manage-permissions.mdx index 846226bca0..7d2825ac42 100644 --- a/managed-databases/mongodb/how-to/manage-permissions.mdx +++ b/managed-databases/mongodb/how-to/manage-permissions.mdx @@ -5,7 +5,7 @@ meta: content: h1: How to manage user permissions paragraph: This page explains how to manage user permissions on a Database Instance -tags: document ferretdb managed-database postgresql database-instance mongodb +tags: document mongodb managed-database postgresql database-instance mongodb dates: validation: 2024-02-08 posted: 2023-08-01 @@ -20,12 +20,12 @@ However, newly created users have no permissions by default. - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) ## Set permissions for an existing user -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Go to the **Users** tab. A list of users displays. 4. Click > Update permissions to open the user permissions panel. @@ -42,7 +42,7 @@ However, newly created users have no permissions by default. ## Set permissions for a new user During user creation, the permissions panel can be accessed through the top tab menu. -For more information, see [how to add users](/managed-databases/document-database/how-to/add-users). +For more information, see [how to add users](/managed-databases/mongodb/how-to/add-users). Permissions are applied on existing items **at the time the configuration is set**, and not applied to any items created afterward. @@ -50,8 +50,3 @@ For more information, see [how to add users](/managed-databases/document-databas Any items created after you change your configuration will not have permissions applied to them, you must set new permissions. - - - How to add users - How to manage allowed IPs - diff --git a/managed-databases/mongodb/how-to/manage-snapshots.mdx b/managed-databases/mongodb/how-to/manage-snapshots.mdx index db79f900ca..02377e9865 100644 --- a/managed-databases/mongodb/how-to/manage-snapshots.mdx +++ b/managed-databases/mongodb/how-to/manage-snapshots.mdx @@ -1,11 +1,11 @@ --- meta: - title: How to manage Document Database snapshots + title: How to manage MongoDB™ Database snapshots description: This page explains how to manage database snapshots content: - h1: How to manage Document Database snapshots + h1: How to manage MongoDB™ Database snapshots paragraph: This page explains how to manage database snapshots -tags: managed-database database database-snapshot ferretdb mongodb document +tags: managed-database database database-snapshot mongodb mongodb document dates: validation: 2024-02-08 posted: 2023-08-01 @@ -13,9 +13,7 @@ categories: - managed-databases --- -[Snapshots](/managed-databases/document-database/how-to/manage-snapshots/) allow you to restore data in a new Database Instance. - -When you set up [autobackups](/managed-databases/document-database/how-to/enable-autobackup/) the automatic backups are created in snapshot format. +[Snapshots](/managed-databases/mongodb/how-to/manage-snapshots/) allow you to restore data in a new Database Instance. You can have up to 100 snapshots per Instance and project (depending on quotas). @@ -23,7 +21,7 @@ You can have up to 100 snapshots per Instance and project (depending on quotas). - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) ## How to create snapshots @@ -69,8 +67,3 @@ If you do not wish to wait for the snapshot to expire, you can delete it manuall This action is irreversible and will permanently destroy your snapshot and all its data. 4. Type **DELETE** and click **Delete snapshot** if you wish to continue. - - - How to enable autobackup - How to clone a Database Instance - diff --git a/managed-databases/mongodb/how-to/renew-tls-certificate.mdx b/managed-databases/mongodb/how-to/renew-tls-certificate.mdx index 506a761697..3b2dbec878 100644 --- a/managed-databases/mongodb/how-to/renew-tls-certificate.mdx +++ b/managed-databases/mongodb/how-to/renew-tls-certificate.mdx @@ -5,7 +5,7 @@ meta: content: h1: How to renew a TLS certificate for a Database Instance paragraph: This page explains how to renew a TLS certificate for a Database Instance -tags: managed-database database postgresql ferretdb mongodb document database-instance +tags: managed-database database postgresql mongodb mongodb document database-instance dates: validation: 2024-02-08 posted: 2023-08-01 @@ -13,7 +13,7 @@ categories: - managed-databases --- -The creation and management of TLS certificates is a feature included in the Managed Document Database offers. +The creation and management of TLS certificates is a feature included in the Managed MongoDB™ Database offers. A certificate is generated automatically upon the creation of a Database Instance. You can renew your certificates at any time. @@ -21,10 +21,10 @@ A certificate is generated automatically upon the creation of a Database Instanc - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [Document Database Instance](/managed-databases/document-database/quickstart) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) -1. Click **Document Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click **Renew** under **TLS Certificate** in the **Database Instance Information** section. A pop-up appears. 4. Click **Renew TLS certificate** once you have read the warnings displayed and wish to continue. @@ -35,7 +35,3 @@ A certificate is generated automatically upon the creation of a Database Instanc A green success message pops up in the top right corner of the screen to confirm the certificate was renewed. - - How to configure advanced settings - How to upgrade a Database Instance - \ No newline at end of file diff --git a/managed-databases/mongodb/index.mdx b/managed-databases/mongodb/index.mdx index 5cf0541ec6..c2deb6ff24 100644 --- a/managed-databases/mongodb/index.mdx +++ b/managed-databases/mongodb/index.mdx @@ -1,18 +1,18 @@ --- meta: - title: Managed Document Databases Documentation - description: Dive into Scaleway Managed Document Databases with our quickstart guides, how-tos, tutorials and more. + title: Managed MongoDB™ Databases Documentation + description: Dive into Scaleway Managed MongoDB™ Databases with our quickstart guides, how-tos, tutorials and more. content: - h1: Managed Document Databases Documentation - paragraph: Dive into Scaleway Managed Document Databases with our quickstart guides, how-tos, tutorials and more. + h1: Managed MongoDB™ Databases Documentation + paragraph: Dive into Scaleway Managed MongoDB™ Databases with our quickstart guides, how-tos, tutorials and more. --- ## Getting Started @@ -21,30 +21,30 @@ content: @@ -53,23 +53,23 @@ content: ## Changelog diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index fa6d63b65c..bcf4108147 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -47,181 +47,49 @@ MongoDB™ databases enable users to store and retrieve data in a document forma You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. -## Connect to your database - -### Via database client +## How to connect via database client with mongosh 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. -5. Copy the connection command located under **Connection** in the Database Instance information page. -6. Paste the connection command in your terminal, and edit the username field with the login you chose when creating the database. The full command should look like the following: - ```bash - mongosh --tls --tlsCAFile databaseinstancename.pem "mongodb://your_username:your_password@your_host:your_port/your_database" - ``` - - `databaseinstancename.pem` - the TLS certificate downloaded on **step 3**. - - `username` - the username you defined upon Database Instance creation. - - `ip` - your Database Instance's endpoint IP address. - - `database instance name` - the database name you entered upon Database Instance creation. The default database name, generated when a name is not specified, always takes on the following format: `mgdb-xxxxx-xxxx`. - - `database name` - The default is called `rdb`. If you created a new database from the Databases tab inside your Database Instance, replace it with the database name. - - `port` - the port on which your Database Instance is accessible -7. Enter your password. -If the connection is successful, you should see the following message display on your console, and be able to write queries: - ```bash - The server generated these startup warnings when booting - Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. - ``` +5. Return to the console and click **Connect** in the **Connect Database Instance** section. +6. Select a connection mode. The following modes are available: `mongosh`, `Python`, `Go`, `Node.js` and `Mongoose`. In this tutorial we use `mongosh`. +7. Replace the variables in the commands with your information. -### Via an application -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Click next to the **TLS certificate** to download it. -4. Transfer the file to where you will execute the connection command. -5. Get the following connection information from the Database Instance information panel or the string displayed upon connection: - - `username`: the username you defined upon Database Instance creation. - - `password`: the user password you defined upon Database Instance creation. - - `IP`: your Database Instance's endpoint IP address. - - `port`: the port on which your Database Instance is accessible. - - `cert_file_path`: the path to your Database Instance TLS certificate. -6. Enter the information above in your application configuration file. - - You can find examples below for Python, Node.js, and Go applications: - - #### Python - - The following code shows you how to use the `pymongo` library to connect using TLS. - ```python - from pymongo.mongo_client import MongoClient - - user_name = "" - password = "" - ip = "instance_ip" - port = 1234 - cert_file_path ="" - - # Estabish the tls connection: - client = MongoClient( - f'mongodb://{user_name}:{password}@{ip}:{port}', - authMechanism='PLAIN', - tls=True, - tlsCAFile=cert_file_path, - ) - # get the database you want to use - db = client.rdb - # get the collection cars - cars = db["cars"] - # prepare a new car to be inserted - car = {"name": "Supercar", "price": 100000} - # execute the insertion - cars.insert_one(car) - # read the car you just inserted - car = cars.find_one() - # print the car, it should contain an ObjectId - print(car) +### Connect to a public endpoint + +1. Replace the following variables in the command as described: + ```sh + mongosh "mongodb+srv://{instance_id}.mgdb.{region}.scw.cloud" --tlsCAFile {your_certificate.pem} -u {username} ``` + - `{your-certificate.pem}` - the TLS certificate downloaded on **step 3**. + - `{username}` - the username you defined upon Database Instance creation. + - `{db-instance-id}` - the UUID of your Database Instance. + - `{region}` - the database name you entered upon Database Instance creation. The default is called `rdb`. - #### Node.js - - The following code shows you how to use the `mongodb` module to connect using TLS. - - ```js - const { MongoClient } = require("mongodb"); - - userName = "" - password = "" - ip = "instance_ip" - port = 1234 - certFilePath = "" - - client = new MongoClient( - `mongodb://${userName}:${password}@${ip}:${port}`, { - tls: true, - tlsCaFile: certFilePath, - authMechanism: "PLAIN", - }) - await client.connect(); - - # get the database you want to use - const db = client.db("rdb") - # get the collection cars - const cars = db.collection("cars") - # prepare a new car to be inserted - let car = {name: "Supercar", price: 100000} - # execute the insertion - cars.insertOne(car) - # read the car you just inserted - car = cars.findOne() - # print the car, it should contain an ObjectId - print(car) - ``` + ``` +2. Run the command. +3. Enter your password when prompted. - #### Go - - The following code shows you how to use the `mongo` driver to connect using TLS. - ```go - package main - - import ( - "context" - "fmt" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/mongo/options" - ) - - func main() { - - username := "" - password := "" - host := "" - port := 1234 // replace with endpoint port number - caCertPath := "" - // prepare the uri for the connection - uri := fmt.Sprintf( - "mongodb://%s:%s@%s:%d/rdb?tls=true&tlsCACert=%s&authMechanism=PLAIN", - username, - password, - host, - port, - caCertPath, - ) - ctx := context.Background() - // connect to the database - client, _ := mongo.Connect(ctx, options.Client().ApplyURI(uri)) - // get the database - db := client.Database("rdb") - // get the collection - cars := db.Collection("cars") - // insert a document - carToInsert := Car{Name: "Supercar", Year: 2020} - cars.InsertOne(ctx, carToInsert) - - // read the document - carToRead := Car{} - cars.FindOne(ctx, map[string]interface{}{"name": "Supercar"}).Decode(&carToRead) - - // print the document - fmt.Println(carToRead) - - } - - type Car struct { - Name string - Year int - } - ``` +If the connection is successful, you should see the following message display on your console, and be able to write queries: + ```sh + The server generated these startup warnings when booting + Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + ``` +### Connect to a private endpoint -## How to delete your database +Follow the same procedure as above to connect to a private endpoint for one node, replacing `{privateNetorkName}` with the name of your Private Network: -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform that: - - This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. - -4. Type **DELETE** to confirm and click **Delete this Instance**. - - Alternatively, you can delete your Instance from your Database Instances list by clicking next to the Instance name and then **Delete**. - + ```sh + mongosh "mongodb://{instance_id}-0.{privateNetworkName}" -u {username} + ``` +### Connect to a private endpoint with mulitple nodes + +For multiple nodes, replace `{db-instance-id}` with the Database Instance UUID of each respective Instance, and `{privateNetworkName}` with the names of your Private Network: + + ```sh + "mongodb://{instance_id}-0.{privateNetworkName},{instance_id}-1.{privateNetworkName},{instance_id}-2.{privateNetworkName}" -u {username} + ``` \ No newline at end of file diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx index b6132b592d..d7162a0128 100644 --- a/managed-databases/mongodb/reference-content/autohealing.mdx +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -1,10 +1,10 @@ --- meta: title: Understanding the autohealing feature - description: Learn more about the autohealing feature for Managed Document Databases + description: Learn more about the autohealing feature for Managed MongoDB™ Databases content: h1: Understanding the autohealing feature - paragraph: Learn more about the autohealing feature for Managed Document Database + paragraph: Learn more about the autohealing feature for Managed MongoDB™ Database tags: databases ha high-availability autohealing database-nodes categories: - managed-databases diff --git a/managed-databases/mongodb/reference-content/index.mdx b/managed-databases/mongodb/reference-content/index.mdx index 498d030fc2..b55089a2f0 100644 --- a/managed-databases/mongodb/reference-content/index.mdx +++ b/managed-databases/mongodb/reference-content/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed Document Databases - Additional content - description: Managed Document Databases additional content + title: Managed MongoDB™ Databases - Additional content + description: Managed MongoDB™ Databases additional content content: - h1: Managed Document Databases - Additional content - paragraph: Managed Document Databases additional content + h1: Managed MongoDB™ Databases - Additional content + paragraph: Managed MongoDB™ Databases additional content --- diff --git a/managed-databases/mongodb/troubleshooting/disk-full.mdx b/managed-databases/mongodb/troubleshooting/disk-full.mdx index 9848424d04..1a243ccdeb 100644 --- a/managed-databases/mongodb/troubleshooting/disk-full.mdx +++ b/managed-databases/mongodb/troubleshooting/disk-full.mdx @@ -22,7 +22,7 @@ For Database Instances where 2% of the volume size is more than 2 GB, this thres When the Database Instance switches to `disk_full` state, the default transaction mode automatically switches to `read only`. This allows your applications to still access its data, while preventing new data from being added. -This state allows you to increase your volume or [upgrade your node type](/managed-databases/document-database/how-to/upgrade-a-database-instance/). You are also able to clear some space in your volume to increase your capacity. +This state allows you to increase your volume or [upgrade your node type](/managed-databases/mongodb/how-to/upgrade-a-database-instance/). You are also able to clear some space in your volume to increase your capacity. Failing to clear out some of your data, or forcing insertions while the database is in `disk_full` mode leads to downtime diff --git a/managed-databases/mongodb/troubleshooting/index.mdx b/managed-databases/mongodb/troubleshooting/index.mdx index bccd723ea0..0c8ae24013 100644 --- a/managed-databases/mongodb/troubleshooting/index.mdx +++ b/managed-databases/mongodb/troubleshooting/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed Document Databases - Troubleshooting - description: Managed Document Databases Troubleshooting + title: Managed MongoDB™ Databases - Troubleshooting + description: Managed MongoDB™ Databases Troubleshooting content: - h1: Managed Document Databases - Troubleshooting - paragraph: Managed Document Databases Troubleshooting + h1: Managed MongoDB™ Databases - Troubleshooting + paragraph: Managed MongoDB™ Databases Troubleshooting --- From 6ade0e98f26084f32268f9d662b28d37d796b12f Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Mon, 23 Sep 2024 14:30:43 +0200 Subject: [PATCH 03/10] fix(mdb): remove pages --- .../mongodb/how-to/add-a-database.mdx | 29 ----------- .../mongodb/how-to/add-users.mdx | 46 ---------------- .../how-to/configure-advanced-settings.mdx | 45 ---------------- .../how-to/connect-database-instance.mdx | 3 +- .../how-to/create-a-database-instance.mdx | 2 +- .../how-to/delete-a-database-instance.mdx | 2 +- .../mongodb/how-to/delete-database.mdx | 32 ------------ .../mongodb/how-to/manage-permissions.mdx | 52 ------------------- managed-databases/mongodb/quickstart.mdx | 2 +- 9 files changed, 5 insertions(+), 208 deletions(-) delete mode 100644 managed-databases/mongodb/how-to/add-a-database.mdx delete mode 100644 managed-databases/mongodb/how-to/add-users.mdx delete mode 100644 managed-databases/mongodb/how-to/configure-advanced-settings.mdx delete mode 100644 managed-databases/mongodb/how-to/delete-database.mdx delete mode 100644 managed-databases/mongodb/how-to/manage-permissions.mdx diff --git a/managed-databases/mongodb/how-to/add-a-database.mdx b/managed-databases/mongodb/how-to/add-a-database.mdx deleted file mode 100644 index 1edc81298b..0000000000 --- a/managed-databases/mongodb/how-to/add-a-database.mdx +++ /dev/null @@ -1,29 +0,0 @@ ---- -meta: - title: How to create a database - description: This page explains how to create a database -content: - h1: How to create a database - paragraph: This page explains how to create a database -tags: managed-database database postgresql mongodb database-instance mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the Database Instance name or > **More info** to access the Database Instance information page. -3. Go to the **Databases** tab. A list of your databases displays. The list includes the database created by default upon Database Instance creation. -4. Click **+ Create database** to create a new one. A pop-up appears. -5. Enter a name for your database. - -The new database appears in the list of your databases. diff --git a/managed-databases/mongodb/how-to/add-users.mdx b/managed-databases/mongodb/how-to/add-users.mdx deleted file mode 100644 index 95fab5a598..0000000000 --- a/managed-databases/mongodb/how-to/add-users.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -meta: - title: How to add users to a MongoDB™ Database Instance - description: This page explains how to add users to a MongoDB™ Database Instance -content: - h1: How to add users to a MongoDB™ Database Instance - paragraph: This page explains how to add users to a MongoDB™ Database Instance -tags: managed-database database postgresql mongodb database-instance mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - -Users can connect to a database and access its data. Each user has a different set of customizable permissions. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Go to the **Users** tab. A list of users displays. If it is the first time you are creating a user, your list will display the user you set up during the creation of your Database Instance. -4. Click to create a new user. -5. Click to grant admin rights to the user. - - Admin rights allow a user to create logical databases and users. These rights do not override the permissions configured for the logical databases. Logical database permissions must be set up in the permissions tab. - -6. Enter the `username` and `password`. - - Optionally, you can configure the appropriate permissions according to the user. - Three types of permissions are available: - - **None:** No access to the database - - **Read:** Allow users to read tables and fields in a database - - **Write:** Allow users to write content in databases - You can select the permission type in the Permissions tab. - -7. Click **Create a user** to confirm. - - Once the user is created, it is displayed in the user list. - -To update the password, the permissions or delete the user, click to display the respective options. diff --git a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx deleted file mode 100644 index 63119e2557..0000000000 --- a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx +++ /dev/null @@ -1,45 +0,0 @@ ---- -meta: - title: How to configure advanced MongoDB™ Database Instance settings - description: This page explains how to configure advanced database settings -content: - h1: How to configure advanced MongoDB™ Database Instance settings - paragraph: This page explains how to configure advanced database settings -tags: managed-database postgresql mongodb database-instance advanced-settings mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - -Advanced settings allow you to modify the default configuration of your database engines. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - - - Changing the advanced settings can have an impact on the performance of your Database Instance. - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the database information page. -3. Click the **Advanced settings** tab. - - To add advanced settings, follow these steps: - -- Click . -- Click **Add parameters**. -- Select your parameter from the dropdown list. -- Configure the value associated with your setting -- Click to validate. - -To delete them: -- Click in the advanced settings tab. -- Click next to the setting you wish to delete. -- Click to confirm your changes. - diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 03aa2a2569..931d9dc939 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -18,6 +18,7 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- You have installed either [mongosh](https://www.mongodb.com/docs/mongodb-shell/), or the [pymongo](https://pymongo.readthedocs.io/en/stable/) distribution for Python, or the Node.js [mongodb module](https://www.npmjs.com/package/mongodb) or the [mongo driver for Go](https://github.com/mongodb/mongo-go-driver), or [Mongoose](https://mongoosejs.com/) on your local machine ## How to connect via database client @@ -26,7 +27,7 @@ categories: 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. -5. Return to the console and click **Connect** in the **Connect Database Instance** section. +5. Return to the console and click **Connect** in the **Connect Database Instance** section. A pop-up appears. 6. Select a connection mode. The following modes are available: `mongosh`, `Python`, `Go`, `Node.js` and `Mongoose`. 7. Replace the variables in the commands with your information. diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 68f4a9faeb..4321d5081f 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -46,4 +46,4 @@ Document databases enable users to store and retrieve data in a document format, - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. + You are taken to the **Overview** tab for your Database Instance. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index 4cac4c1bb6..6c930b331e 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -23,7 +23,7 @@ categories: 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. -3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform you that: +3. Click the **Settings** tab, scroll down to the **Delete Database Instance** section and click **Delete Instance**. A pop-up appears to inform you that: This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. diff --git a/managed-databases/mongodb/how-to/delete-database.mdx b/managed-databases/mongodb/how-to/delete-database.mdx deleted file mode 100644 index e972389bb6..0000000000 --- a/managed-databases/mongodb/how-to/delete-database.mdx +++ /dev/null @@ -1,32 +0,0 @@ ---- -meta: - title: How to delete a database - description: This page explains how to delete a database -content: - h1: How to delete a database - paragraph: This page explains how to delete a database -tags: managed-database postgresql mongodb mongodb document database-instance -dates: - validation: 2024-02-08 - posted: 2023-08-01 -categories: - - managed-databases ---- - - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - You have a [database](/managed-databases/mongodb/how-to/add-a-database) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the Database Instance name or > **More info** to access the Database Instance information page. -3. Go to the **Databases** tab. A list of your databases displays. -4. Click > **Delete** next to the database of your choice. A pop-up appears to inform that: - - This will permanently destroy your database and all your data will be lost. This action is irreversible. - -5. Type **DELETE** to confirm and click **Delete database**. diff --git a/managed-databases/mongodb/how-to/manage-permissions.mdx b/managed-databases/mongodb/how-to/manage-permissions.mdx deleted file mode 100644 index 7d2825ac42..0000000000 --- a/managed-databases/mongodb/how-to/manage-permissions.mdx +++ /dev/null @@ -1,52 +0,0 @@ ---- -meta: - title: How to manage user permissions - description: This page explains how to manage user permissions on a Database Instance -content: - h1: How to manage user permissions - paragraph: This page explains how to manage user permissions on a Database Instance -tags: document mongodb managed-database postgresql database-instance mongodb -dates: - validation: 2024-02-08 - posted: 2023-08-01 -categories: - - managed-databases ---- - -Permissions define the actions a user can perform on a logical database. A database user is generated automatically when you create your Database Instance and this user is attributed all permissions. -However, newly created users have no permissions by default. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -## Set permissions for an existing user - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Go to the **Users** tab. A list of users displays. -4. Click > Update permissions to open the user permissions panel. -5. Select the appropriate permissions for each database. - - Three types of permissions are available: - - **None:** No access to the database - - **Read:** Allow users to read tables and fields in a database - - **Write:** Allow users to write content in databases - - -6. Click **Update user** to confirm. - -## Set permissions for a new user - -During user creation, the permissions panel can be accessed through the top tab menu. -For more information, see [how to add users](/managed-databases/mongodb/how-to/add-users). - - - Permissions are applied on existing items **at the time the configuration is set**, and not applied to any items created afterward. - When you modify your Database configuration, your configured permissions are automatically set to **Custom**. The **Custom** setting ensures that your permissions are still valid for items created before you reconfigured your Database. - Any items created after you change your configuration will not have permissions applied to them, you must set new permissions. - - diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index bcf4108147..b1d00975e1 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -45,7 +45,7 @@ MongoDB™ databases enable users to store and retrieve data in a document forma - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. + You are taken to the **Overview** tab for your Database Instance. ## How to connect via database client with mongosh From 9e21056b314f7a1309e825e64e95c48ee18741c8 Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Tue, 1 Oct 2024 10:12:15 +0200 Subject: [PATCH 04/10] Revert "fix(mdb): remove pages" This reverts commit 6ade0e98f26084f32268f9d662b28d37d796b12f. --- .../mongodb/how-to/add-a-database.mdx | 29 +++++++++++ .../mongodb/how-to/add-users.mdx | 46 ++++++++++++++++ .../how-to/configure-advanced-settings.mdx | 45 ++++++++++++++++ .../how-to/connect-database-instance.mdx | 3 +- .../how-to/create-a-database-instance.mdx | 2 +- .../how-to/delete-a-database-instance.mdx | 2 +- .../mongodb/how-to/delete-database.mdx | 32 ++++++++++++ .../mongodb/how-to/manage-permissions.mdx | 52 +++++++++++++++++++ managed-databases/mongodb/quickstart.mdx | 2 +- 9 files changed, 208 insertions(+), 5 deletions(-) create mode 100644 managed-databases/mongodb/how-to/add-a-database.mdx create mode 100644 managed-databases/mongodb/how-to/add-users.mdx create mode 100644 managed-databases/mongodb/how-to/configure-advanced-settings.mdx create mode 100644 managed-databases/mongodb/how-to/delete-database.mdx create mode 100644 managed-databases/mongodb/how-to/manage-permissions.mdx diff --git a/managed-databases/mongodb/how-to/add-a-database.mdx b/managed-databases/mongodb/how-to/add-a-database.mdx new file mode 100644 index 0000000000..1edc81298b --- /dev/null +++ b/managed-databases/mongodb/how-to/add-a-database.mdx @@ -0,0 +1,29 @@ +--- +meta: + title: How to create a database + description: This page explains how to create a database +content: + h1: How to create a database + paragraph: This page explains how to create a database +tags: managed-database database postgresql mongodb database-instance mongodb +dates: + validation: 2024-09-18 + posted: 2024-09-18 +categories: + - managed-databases +--- + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the Database Instance name or > **More info** to access the Database Instance information page. +3. Go to the **Databases** tab. A list of your databases displays. The list includes the database created by default upon Database Instance creation. +4. Click **+ Create database** to create a new one. A pop-up appears. +5. Enter a name for your database. + +The new database appears in the list of your databases. diff --git a/managed-databases/mongodb/how-to/add-users.mdx b/managed-databases/mongodb/how-to/add-users.mdx new file mode 100644 index 0000000000..95fab5a598 --- /dev/null +++ b/managed-databases/mongodb/how-to/add-users.mdx @@ -0,0 +1,46 @@ +--- +meta: + title: How to add users to a MongoDB™ Database Instance + description: This page explains how to add users to a MongoDB™ Database Instance +content: + h1: How to add users to a MongoDB™ Database Instance + paragraph: This page explains how to add users to a MongoDB™ Database Instance +tags: managed-database database postgresql mongodb database-instance mongodb +dates: + validation: 2024-09-18 + posted: 2024-09-18 +categories: + - managed-databases +--- + +Users can connect to a database and access its data. Each user has a different set of customizable permissions. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Go to the **Users** tab. A list of users displays. If it is the first time you are creating a user, your list will display the user you set up during the creation of your Database Instance. +4. Click to create a new user. +5. Click to grant admin rights to the user. + + Admin rights allow a user to create logical databases and users. These rights do not override the permissions configured for the logical databases. Logical database permissions must be set up in the permissions tab. + +6. Enter the `username` and `password`. + + Optionally, you can configure the appropriate permissions according to the user. + Three types of permissions are available: + - **None:** No access to the database + - **Read:** Allow users to read tables and fields in a database + - **Write:** Allow users to write content in databases + You can select the permission type in the Permissions tab. + +7. Click **Create a user** to confirm. + + Once the user is created, it is displayed in the user list. + +To update the password, the permissions or delete the user, click to display the respective options. diff --git a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx new file mode 100644 index 0000000000..63119e2557 --- /dev/null +++ b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx @@ -0,0 +1,45 @@ +--- +meta: + title: How to configure advanced MongoDB™ Database Instance settings + description: This page explains how to configure advanced database settings +content: + h1: How to configure advanced MongoDB™ Database Instance settings + paragraph: This page explains how to configure advanced database settings +tags: managed-database postgresql mongodb database-instance advanced-settings mongodb +dates: + validation: 2024-09-18 + posted: 2024-09-18 +categories: + - managed-databases +--- + +Advanced settings allow you to modify the default configuration of your database engines. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + + + + Changing the advanced settings can have an impact on the performance of your Database Instance. + + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the database information page. +3. Click the **Advanced settings** tab. + + To add advanced settings, follow these steps: + +- Click . +- Click **Add parameters**. +- Select your parameter from the dropdown list. +- Configure the value associated with your setting +- Click to validate. + +To delete them: +- Click in the advanced settings tab. +- Click next to the setting you wish to delete. +- Click to confirm your changes. + diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 931d9dc939..03aa2a2569 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -18,7 +18,6 @@ categories: - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) -- You have installed either [mongosh](https://www.mongodb.com/docs/mongodb-shell/), or the [pymongo](https://pymongo.readthedocs.io/en/stable/) distribution for Python, or the Node.js [mongodb module](https://www.npmjs.com/package/mongodb) or the [mongo driver for Go](https://github.com/mongodb/mongo-go-driver), or [Mongoose](https://mongoosejs.com/) on your local machine ## How to connect via database client @@ -27,7 +26,7 @@ categories: 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. -5. Return to the console and click **Connect** in the **Connect Database Instance** section. A pop-up appears. +5. Return to the console and click **Connect** in the **Connect Database Instance** section. 6. Select a connection mode. The following modes are available: `mongosh`, `Python`, `Go`, `Node.js` and `Mongoose`. 7. Replace the variables in the commands with your information. diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 4321d5081f..68f4a9faeb 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -46,4 +46,4 @@ Document databases enable users to store and retrieve data in a document format, - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance. + You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index 6c930b331e..4cac4c1bb6 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -23,7 +23,7 @@ categories: 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. -3. Click the **Settings** tab, scroll down to the **Delete Database Instance** section and click **Delete Instance**. A pop-up appears to inform you that: +3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform you that: This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. diff --git a/managed-databases/mongodb/how-to/delete-database.mdx b/managed-databases/mongodb/how-to/delete-database.mdx new file mode 100644 index 0000000000..e972389bb6 --- /dev/null +++ b/managed-databases/mongodb/how-to/delete-database.mdx @@ -0,0 +1,32 @@ +--- +meta: + title: How to delete a database + description: This page explains how to delete a database +content: + h1: How to delete a database + paragraph: This page explains how to delete a database +tags: managed-database postgresql mongodb mongodb document database-instance +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + - You have a [database](/managed-databases/mongodb/how-to/add-a-database) + + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the Database Instance name or > **More info** to access the Database Instance information page. +3. Go to the **Databases** tab. A list of your databases displays. +4. Click > **Delete** next to the database of your choice. A pop-up appears to inform that: + + This will permanently destroy your database and all your data will be lost. This action is irreversible. + +5. Type **DELETE** to confirm and click **Delete database**. diff --git a/managed-databases/mongodb/how-to/manage-permissions.mdx b/managed-databases/mongodb/how-to/manage-permissions.mdx new file mode 100644 index 0000000000..7d2825ac42 --- /dev/null +++ b/managed-databases/mongodb/how-to/manage-permissions.mdx @@ -0,0 +1,52 @@ +--- +meta: + title: How to manage user permissions + description: This page explains how to manage user permissions on a Database Instance +content: + h1: How to manage user permissions + paragraph: This page explains how to manage user permissions on a Database Instance +tags: document mongodb managed-database postgresql database-instance mongodb +dates: + validation: 2024-02-08 + posted: 2023-08-01 +categories: + - managed-databases +--- + +Permissions define the actions a user can perform on a logical database. A database user is generated automatically when you create your Database Instance and this user is attributed all permissions. +However, newly created users have no permissions by default. + + + + + - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) + - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + + +## Set permissions for an existing user + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Go to the **Users** tab. A list of users displays. +4. Click > Update permissions to open the user permissions panel. +5. Select the appropriate permissions for each database. + + Three types of permissions are available: + - **None:** No access to the database + - **Read:** Allow users to read tables and fields in a database + - **Write:** Allow users to write content in databases + + +6. Click **Update user** to confirm. + +## Set permissions for a new user + +During user creation, the permissions panel can be accessed through the top tab menu. +For more information, see [how to add users](/managed-databases/mongodb/how-to/add-users). + + + Permissions are applied on existing items **at the time the configuration is set**, and not applied to any items created afterward. + When you modify your Database configuration, your configured permissions are automatically set to **Custom**. The **Custom** setting ensures that your permissions are still valid for items created before you reconfigured your Database. + Any items created after you change your configuration will not have permissions applied to them, you must set new permissions. + + diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index b1d00975e1..bcf4108147 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -45,7 +45,7 @@ MongoDB™ databases enable users to store and retrieve data in a document forma - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance. + You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. ## How to connect via database client with mongosh From aaac720500163d9f44d4cf9846d04c9d573ffe31 Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Tue, 1 Oct 2024 14:43:41 +0200 Subject: [PATCH 05/10] fix(mdb): menu --- .../mongodb/how-to/add-a-database.mdx | 29 -------- .../mongodb/how-to/add-users.mdx | 46 ------------ .../how-to/configure-advanced-settings.mdx | 45 ------------ .../how-to/connect-database-instance.mdx | 45 ++++++------ .../how-to/create-a-database-instance.mdx | 10 +-- .../how-to/delete-a-database-instance.mdx | 14 ++-- .../mongodb/how-to/delete-database.mdx | 32 --------- .../mongodb/how-to/increase-volume.mdx | 35 ++++++++++ .../mongodb/how-to/manage-permissions.mdx | 52 -------------- .../mongodb/how-to/manage-snapshots.mdx | 19 ++--- .../mongodb/how-to/manage-users.mdx | 35 ++++++++++ .../mongodb/how-to/renew-tls-certificate.mdx | 37 ---------- managed-databases/mongodb/quickstart.mdx | 7 +- menu/navigation.json | 70 ++++++++++++++++++- 14 files changed, 189 insertions(+), 287 deletions(-) delete mode 100644 managed-databases/mongodb/how-to/add-a-database.mdx delete mode 100644 managed-databases/mongodb/how-to/add-users.mdx delete mode 100644 managed-databases/mongodb/how-to/configure-advanced-settings.mdx delete mode 100644 managed-databases/mongodb/how-to/delete-database.mdx create mode 100644 managed-databases/mongodb/how-to/increase-volume.mdx delete mode 100644 managed-databases/mongodb/how-to/manage-permissions.mdx create mode 100644 managed-databases/mongodb/how-to/manage-users.mdx delete mode 100644 managed-databases/mongodb/how-to/renew-tls-certificate.mdx diff --git a/managed-databases/mongodb/how-to/add-a-database.mdx b/managed-databases/mongodb/how-to/add-a-database.mdx deleted file mode 100644 index 1edc81298b..0000000000 --- a/managed-databases/mongodb/how-to/add-a-database.mdx +++ /dev/null @@ -1,29 +0,0 @@ ---- -meta: - title: How to create a database - description: This page explains how to create a database -content: - h1: How to create a database - paragraph: This page explains how to create a database -tags: managed-database database postgresql mongodb database-instance mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the Database Instance name or > **More info** to access the Database Instance information page. -3. Go to the **Databases** tab. A list of your databases displays. The list includes the database created by default upon Database Instance creation. -4. Click **+ Create database** to create a new one. A pop-up appears. -5. Enter a name for your database. - -The new database appears in the list of your databases. diff --git a/managed-databases/mongodb/how-to/add-users.mdx b/managed-databases/mongodb/how-to/add-users.mdx deleted file mode 100644 index 95fab5a598..0000000000 --- a/managed-databases/mongodb/how-to/add-users.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -meta: - title: How to add users to a MongoDB™ Database Instance - description: This page explains how to add users to a MongoDB™ Database Instance -content: - h1: How to add users to a MongoDB™ Database Instance - paragraph: This page explains how to add users to a MongoDB™ Database Instance -tags: managed-database database postgresql mongodb database-instance mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - -Users can connect to a database and access its data. Each user has a different set of customizable permissions. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Go to the **Users** tab. A list of users displays. If it is the first time you are creating a user, your list will display the user you set up during the creation of your Database Instance. -4. Click to create a new user. -5. Click to grant admin rights to the user. - - Admin rights allow a user to create logical databases and users. These rights do not override the permissions configured for the logical databases. Logical database permissions must be set up in the permissions tab. - -6. Enter the `username` and `password`. - - Optionally, you can configure the appropriate permissions according to the user. - Three types of permissions are available: - - **None:** No access to the database - - **Read:** Allow users to read tables and fields in a database - - **Write:** Allow users to write content in databases - You can select the permission type in the Permissions tab. - -7. Click **Create a user** to confirm. - - Once the user is created, it is displayed in the user list. - -To update the password, the permissions or delete the user, click to display the respective options. diff --git a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx b/managed-databases/mongodb/how-to/configure-advanced-settings.mdx deleted file mode 100644 index 63119e2557..0000000000 --- a/managed-databases/mongodb/how-to/configure-advanced-settings.mdx +++ /dev/null @@ -1,45 +0,0 @@ ---- -meta: - title: How to configure advanced MongoDB™ Database Instance settings - description: This page explains how to configure advanced database settings -content: - h1: How to configure advanced MongoDB™ Database Instance settings - paragraph: This page explains how to configure advanced database settings -tags: managed-database postgresql mongodb database-instance advanced-settings mongodb -dates: - validation: 2024-09-18 - posted: 2024-09-18 -categories: - - managed-databases ---- - -Advanced settings allow you to modify the default configuration of your database engines. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - - - Changing the advanced settings can have an impact on the performance of your Database Instance. - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the database information page. -3. Click the **Advanced settings** tab. - - To add advanced settings, follow these steps: - -- Click . -- Click **Add parameters**. -- Select your parameter from the dropdown list. -- Configure the value associated with your setting -- Click to validate. - -To delete them: -- Click in the advanced settings tab. -- Click next to the setting you wish to delete. -- Click to confirm your changes. - diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 03aa2a2569..4eb3ae47c4 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -15,10 +15,12 @@ categories: - -- You have an account and are logged into the [Scaleway console](https://console.scaleway.com) -- You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- Installed either [mongosh](https://www.mongodb.com/docs/mongodb-shell/), or the [pymongo](https://pymongo.readthedocs.io/en/stable/) distribution for Python, or the Node.js [mongodb module](https://www.npmjs.com/package/mongodb) or the [mongo driver for Go](https://github.com/mongodb/mongo-go-driver), or [Mongoose](https://mongoosejs.com/) on your local machine + ## How to connect via database client @@ -26,7 +28,7 @@ categories: 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. -5. Return to the console and click **Connect** in the **Connect Database Instance** section. +5. Return to the console and click **Connect** in the **Connect Database Instance** section. A pop-up appears. 6. Select a connection mode. The following modes are available: `mongosh`, `Python`, `Go`, `Node.js` and `Mongoose`. 7. Replace the variables in the commands with your information. @@ -38,35 +40,34 @@ To connect to a public endpoint using the MongoDB™ shell: 1. Replace the following variables in the command as described: ```sh - mongosh "mongodb+srv://{instance_id}.mgdb.{region}.scw.cloud" --tlsCAFile {your_certificate.pem} -u {username} + mongosh "mongodb+srv://{instance_id}.mgdb.{region}.scw.cloud" --tlsCAFile {your_certificate.pem} -u {username ``` - - `{your-certificate.pem}` - the TLS certificate downloaded on **step 3**. - - `{username}` - the username you defined upon Database Instance creation. - - `{db-instance-id}` - the UUID of your Database Instance. - - `{region}` - the database name you entered upon Database Instance creation. The default is called `rdb`. + - `{your-certificate.pem}` - the TLS certificate downloaded on **step 3**. + - `{username}` - the username you defined upon Database Instance creation. + - `{db-instance-id}` - the UUID of your Database Instance. + - `{region}` - the database name you entered upon Database Instance creation. The default is called `rdb`. - ``` 2. Run the command. 3. Enter your password when prompted. If the connection is successful, you should see the following message display on your console, and be able to write queries: - ```sh - The server generated these startup warnings when booting - Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. - ``` + ```sh + The server generated these startup warnings when booting + Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + ``` -Follow the same procedure to connect to a private endpoint for one node, replacing `{privateNetorkName}` with the name of your Private Netowrk: +Follow the same procedure to connect to a private endpoint for one node, replacing `{privateNetorkName}` with the name of your Private Network: - ```sh - mongosh "mongodb://{instance_id}-0.{privateNetworkName}" -u {username} - ``` + ```sh + mongosh "mongodb://{instance_id}-0.{privateNetworkName}" -u {username} + ``` For multiple nodes, replace `{db-instance-id}` with the Database Instance UUID of each respective Instance, and `{privateNetworkName}` with the names of your Private Network: - ```sh - "mongodb://{instance_id}-0.{privateNetworkName},{instance_id}-1.{privateNetworkName},{instance_id}-2.{privateNetworkName}" -u {username} - ``` + ```sh + "mongodb://{instance_id}-0.{privateNetworkName},{instance_id}-1.{privateNetworkName},{instance_id}-2.{privateNetworkName}" -u {username} + ``` ### Python diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 68f4a9faeb..c8d878caa4 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -7,8 +7,8 @@ content: paragraph: This page explains how to create a MongoDB™ Database Instance tags: postgresql mongodb mongodb database-instance managed-database database dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-10-01 + posted: 2024-10-01 categories: - managed-databases --- @@ -28,9 +28,9 @@ Document databases enable users to store and retrieve data in a document format, 1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. 2. Click **Create a Database Instance**. The creation wizard displays. 3. Complete the following steps in the wizard: - - Select ** MongoDB™** as a database engine. + - Select **MongoDB™** as a database engine. - Choose a region. This is the geographical location where your database will be deployed. - - Select a database configuration. You can choose between: + - Select a replica set configuration. You can choose between: - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. - Select a node type. @@ -46,4 +46,4 @@ Document databases enable users to store and retrieve data in a document format, - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. + You are taken to the **Overview** tab for your Database Instance. \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index 4cac4c1bb6..c54bfc7fa2 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -7,8 +7,8 @@ content: paragraph: This page explains how to delete a Database tags: managed-database postgresql mongodb mongodb document database-instance dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-10-01 + posted: 2024-10-01 categories: - managed-databases --- @@ -16,14 +16,14 @@ categories: - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. -3. Scroll down the page to the **Delete Instance** section and click **Delete Instance**. A pop-up appears to inform you that: +3. Click the **Settings** tab, scroll down to the **Delete Database Instance** section and click **Delete Instance**. A pop-up appears to inform you that: This will permanently destroy your Instance, and all your data will be lost. This action is irreversible. diff --git a/managed-databases/mongodb/how-to/delete-database.mdx b/managed-databases/mongodb/how-to/delete-database.mdx deleted file mode 100644 index e972389bb6..0000000000 --- a/managed-databases/mongodb/how-to/delete-database.mdx +++ /dev/null @@ -1,32 +0,0 @@ ---- -meta: - title: How to delete a database - description: This page explains how to delete a database -content: - h1: How to delete a database - paragraph: This page explains how to delete a database -tags: managed-database postgresql mongodb mongodb document database-instance -dates: - validation: 2024-02-08 - posted: 2023-08-01 -categories: - - managed-databases ---- - - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - You have a [database](/managed-databases/mongodb/how-to/add-a-database) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the Database Instance name or > **More info** to access the Database Instance information page. -3. Go to the **Databases** tab. A list of your databases displays. -4. Click > **Delete** next to the database of your choice. A pop-up appears to inform that: - - This will permanently destroy your database and all your data will be lost. This action is irreversible. - -5. Type **DELETE** to confirm and click **Delete database**. diff --git a/managed-databases/mongodb/how-to/increase-volume.mdx b/managed-databases/mongodb/how-to/increase-volume.mdx new file mode 100644 index 0000000000..6e9a373484 --- /dev/null +++ b/managed-databases/mongodb/how-to/increase-volume.mdx @@ -0,0 +1,35 @@ +--- +meta: + title: How to increase the storage of a Managed Database for MongoDB™ + description: Guide to increasing the block volume of your MongoDB™ Database Instance at Scaleway. +content: + h1: How to increase the storage of a Managed Database for MongoDB™ + paragraph: Guide to increasing the block volume of your MongoDB™ Database Instance at Scaleway. +tags: managed-database postgresql mysql upgrade +dates: + validation: 2024-10-01 + posted: 2024-10-01 +categories: + - managed-databases +--- + +You can increase the Block Storage volume of your MongoDB™ Database Instance in the Scaleway console anytime. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + + +## How to increase a Block Storage volume + +1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the name of the Database Instance you want to configure. The Database Instance overview page displays. +3. Scroll down to **Volume settings**. +4. Specify your volume capacity (in GB). The amount you define will be your new volume capacity. + + - You can increase your Block Storage volume to up to 10 TB. + - Block volume sizes cannot be decreased. + +5. Click **Increase volume size** to confirm. \ No newline at end of file diff --git a/managed-databases/mongodb/how-to/manage-permissions.mdx b/managed-databases/mongodb/how-to/manage-permissions.mdx deleted file mode 100644 index 7d2825ac42..0000000000 --- a/managed-databases/mongodb/how-to/manage-permissions.mdx +++ /dev/null @@ -1,52 +0,0 @@ ---- -meta: - title: How to manage user permissions - description: This page explains how to manage user permissions on a Database Instance -content: - h1: How to manage user permissions - paragraph: This page explains how to manage user permissions on a Database Instance -tags: document mongodb managed-database postgresql database-instance mongodb -dates: - validation: 2024-02-08 - posted: 2023-08-01 -categories: - - managed-databases ---- - -Permissions define the actions a user can perform on a logical database. A database user is generated automatically when you create your Database Instance and this user is attributed all permissions. -However, newly created users have no permissions by default. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -## Set permissions for an existing user - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Go to the **Users** tab. A list of users displays. -4. Click > Update permissions to open the user permissions panel. -5. Select the appropriate permissions for each database. - - Three types of permissions are available: - - **None:** No access to the database - - **Read:** Allow users to read tables and fields in a database - - **Write:** Allow users to write content in databases - - -6. Click **Update user** to confirm. - -## Set permissions for a new user - -During user creation, the permissions panel can be accessed through the top tab menu. -For more information, see [how to add users](/managed-databases/mongodb/how-to/add-users). - - - Permissions are applied on existing items **at the time the configuration is set**, and not applied to any items created afterward. - When you modify your Database configuration, your configured permissions are automatically set to **Custom**. The **Custom** setting ensures that your permissions are still valid for items created before you reconfigured your Database. - Any items created after you change your configuration will not have permissions applied to them, you must set new permissions. - - diff --git a/managed-databases/mongodb/how-to/manage-snapshots.mdx b/managed-databases/mongodb/how-to/manage-snapshots.mdx index 02377e9865..026cf094d9 100644 --- a/managed-databases/mongodb/how-to/manage-snapshots.mdx +++ b/managed-databases/mongodb/how-to/manage-snapshots.mdx @@ -7,8 +7,8 @@ content: paragraph: This page explains how to manage database snapshots tags: managed-database database database-snapshot mongodb mongodb document dates: - validation: 2024-02-08 - posted: 2023-08-01 + validation: 2024-10-01 + posted: 2024-10-01 categories: - managed-databases --- @@ -19,10 +19,9 @@ You can have up to 100 snapshots per Instance and project (depending on quotas). - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) ## How to create snapshots @@ -46,11 +45,15 @@ You can restore the data contained in a snapshot to a Database Instance. When yo 2. Click the next to the name of the snapshot. 3. Click **Create Database Instance from snapshot**. A pop-up appears. 4. Enter a name for your new Instance. -5. Choose a node type and configuration. +5. Choose a node type. It is possible to select a different (larger or smaller) node type for your new Instance. However, the block volume size will be the same as the size of the restored snapshot. All Instance settings will be restored if you chose a node type with the same or more memory size than the initial Instance. Settings will be reset to the default if your node type has less memory. -6. Click **Create Instance** to confirm. +6. Select a replica set configuration. You can choose between: + - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. +7. Review the estimated cost. +8. Click **Create Instance** to confirm. You can see the new Instance in your Database Instances list. diff --git a/managed-databases/mongodb/how-to/manage-users.mdx b/managed-databases/mongodb/how-to/manage-users.mdx new file mode 100644 index 0000000000..5d0965e0a2 --- /dev/null +++ b/managed-databases/mongodb/how-to/manage-users.mdx @@ -0,0 +1,35 @@ +--- +meta: + title: How to manage a MongoDB™ Database Instance user + description: This page explains how to manage the MongoDB™ Database Instance default user +content: + h1: How to manage a MongoDB™ Database Instance user + paragraph: This page explains how to manage the MongoDB™ Database Instance default user +tags: managed-database database postgresql mongodb database-instance mongodb +dates: + validation: 2024-10-01 + posted: 2024-10-01 +categories: + - managed-databases +--- + +Users can connect to a database and access its data. + + + During the MongoDB™ private beta, you can have only one user per Instance. The default user has admin rights on the Database Instance. The name and password of this default user can be set up upon Database Instance creation. + + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) + +## How to change the password of your user + +1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click the database name or > **More info** to access the Database Instance information page. +3. Go to the **Users** tab. Your default user displays. +4. Click **Change password** to do so. A pop-up appears. +5. Enter your new password and confirm. + diff --git a/managed-databases/mongodb/how-to/renew-tls-certificate.mdx b/managed-databases/mongodb/how-to/renew-tls-certificate.mdx deleted file mode 100644 index 3b2dbec878..0000000000 --- a/managed-databases/mongodb/how-to/renew-tls-certificate.mdx +++ /dev/null @@ -1,37 +0,0 @@ ---- -meta: - title: How to renew a TLS certificate for a Database Instance - description: This page explains how to renew a TLS certificate for a Database Instance -content: - h1: How to renew a TLS certificate for a Database Instance - paragraph: This page explains how to renew a TLS certificate for a Database Instance -tags: managed-database database postgresql mongodb mongodb document database-instance -dates: - validation: 2024-02-08 - posted: 2023-08-01 -categories: - - managed-databases ---- - -The creation and management of TLS certificates is a feature included in the Managed MongoDB™ Database offers. - -A certificate is generated automatically upon the creation of a Database Instance. You can renew your certificates at any time. - - - - - - You have an account and are logged into the [Scaleway console](https://console.scaleway.com) - - You have a [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) - - -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. -2. Click the database name or > **More info** to access the Database Instance information page. -3. Click **Renew** under **TLS Certificate** in the **Database Instance Information** section. A pop-up appears. -4. Click **Renew TLS certificate** once you have read the warnings displayed and wish to continue. - - - Renewing a certificate means you want will need to download and update the new certificate for all database clients. - - -A green success message pops up in the top right corner of the screen to confirm the certificate was renewed. - diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index bcf4108147..6edac088ba 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -18,6 +18,7 @@ Managed MongoDB™ Databases provide fully-managed document Database Instances, MongoDB™ databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. + - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization - A [MongoDB™-compatible client](https://www.mongodb.com/try/download/shell) installed @@ -27,9 +28,9 @@ MongoDB™ databases enable users to store and retrieve data in a document forma 1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. 2. Click **Create a Database Instance**. The creation wizard displays. 3. Complete the following steps in the wizard: - - Select ** MongoDB™** as a database engine. + - Select **MongoDB™** as a database engine. - Choose a region. This is the geographical location where your database will be deployed. - - Select a database configuration. You can choose between: + - Select a replica set configuration. You can choose between: - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. - Select a node type. @@ -45,7 +46,7 @@ MongoDB™ databases enable users to store and retrieve data in a document forma - Enter a name for your Database Instance. 4. Click **Create a Database Instance** to confirm your choices and launch creation. - You are taken to the **Overview** tab for your Database Instance, where you can see information including the **Endpoint** to enable you to connect to it. + You are taken to the **Overview** tab for your Database Instance. ## How to connect via database client with mongosh diff --git a/menu/navigation.json b/menu/navigation.json index 4d81810709..671cb634ca 100644 --- a/menu/navigation.json +++ b/menu/navigation.json @@ -2312,6 +2312,74 @@ ], "label": "Redis™", "slug": "redis" + }, + { + "items": [ + { + "label": "MongoDB™ Overview", + "slug": "../mongodb" + }, + { + "label": "Concepts", + "slug": "concepts" + }, + { + "label": "Quickstart", + "slug": "quickstart" + }, + { + "items": [ + { + "label": "Create a Database Instance", + "slug": "create-a-database-instance" + }, + { + "label": "Connect to a Database Instance", + "slug": "connect-database-instance" + }, + { + "label": "Manage users", + "slug": "manage-users" + }, + { + "label": "Manage snapshots", + "slug": "manage-snapshots" + }, + { + "label": "Increase the storage size", + "slug": "increase-volume" + }, + { + "label": "Delete a Database Instance", + "slug": "delete-a-database-instance" + } + ], + "label": "How to", + "slug": "how-to" + }, + { + "items": [ + { + "label": "Understanding the autohealing feature", + "slug": "autohealing" + } + ], + "label": "Additional Content", + "slug": "reference-content" + }, + { + "items": [ + { + "label": "Dealing with disk_full state in a Database Instance", + "slug": "disk-full" + } + ], + "label": "Troubleshooting", + "slug": "troubleshooting" + } + ], + "label": "MongoDB™", + "slug": "mongodb" } ], "label": "Managed Databases", @@ -5317,4 +5385,4 @@ ], "label": "Additional Services" } -] +] \ No newline at end of file From dac8d9d383890479dbb158e07c8c7aee92b2cc1e Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Thu, 3 Oct 2024 13:41:37 +0200 Subject: [PATCH 06/10] fix(mdb): review ro Co-authored-by: Rowena Jones <36301604+RoRoJ@users.noreply.github.com> --- managed-databases/mongodb/api-cli/backup-and-restore.mdx | 4 ++-- .../mongodb/how-to/connect-database-instance.mdx | 4 ++-- .../mongodb/how-to/create-a-database-instance.mdx | 2 +- managed-databases/mongodb/how-to/manage-users.mdx | 2 +- managed-databases/mongodb/reference-content/autohealing.mdx | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx index b5c2813584..2ca028b4ac 100644 --- a/managed-databases/mongodb/api-cli/backup-and-restore.mdx +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -41,7 +41,7 @@ To create backups, we will use the `mongodump` tool, which can create backups fo 3. Click the database name or > **More info** to access the Database Instance information page. 4. Download the Database Instance's SSL certificate. - Make sure you know the path to the certificate in your local machine, as it will be used in a later step. + Make sure you know the path to the certificate on your local machine, as it will be used in a later step. 5. Run the following command, replacing the values according to the table below. ``` @@ -77,7 +77,7 @@ To create backups, we will use the `mongodump` tool, which can create backups fo `authenticationMechanism` : the list of authentication mechanisms the server accepts - If no response is returned, the operation was successful. You can make sure the backup occurred by checking if new files were added to the destination folder. + If no response is returned, the operation was successful. You can make sure the backup occurred by checking that new files were added to the destination folder. ## How to restore from a backup diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 4eb3ae47c4..2a55d47212 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -18,11 +18,11 @@ categories: - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart/) - Installed either [mongosh](https://www.mongodb.com/docs/mongodb-shell/), or the [pymongo](https://pymongo.readthedocs.io/en/stable/) distribution for Python, or the Node.js [mongodb module](https://www.npmjs.com/package/mongodb) or the [mongo driver for Go](https://github.com/mongodb/mongo-go-driver), or [Mongoose](https://mongoosejs.com/) on your local machine -## How to connect via database client +## How to connect via a database client 1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index c8d878caa4..27c22b1734 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -34,7 +34,7 @@ Document databases enable users to store and retrieve data in a document format, - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. - Select a node type. - - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume to up to 10 TB. + - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume size to up to 10 TB. - Add a name and set a password for your user. Your username must adhere to specific criteria. diff --git a/managed-databases/mongodb/how-to/manage-users.mdx b/managed-databases/mongodb/how-to/manage-users.mdx index 5d0965e0a2..4c2aca4f29 100644 --- a/managed-databases/mongodb/how-to/manage-users.mdx +++ b/managed-databases/mongodb/how-to/manage-users.mdx @@ -16,7 +16,7 @@ categories: Users can connect to a database and access its data. - During the MongoDB™ private beta, you can have only one user per Instance. The default user has admin rights on the Database Instance. The name and password of this default user can be set up upon Database Instance creation. + During the MongoDB™ private beta, you can have only one user per Instance. The default user has admin rights on the Database Instance. The name and password of this default user can be set upon Database Instance creation. diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx index d7162a0128..ec34d29fd8 100644 --- a/managed-databases/mongodb/reference-content/autohealing.mdx +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -20,6 +20,6 @@ Your Database Instance then goes into autohealing mode and switches to the `AUTO Your Database Instance will work only with the standby node for at most 700 seconds. -After 700 seconds, if your main database node is still considered as down, a new node is spawned and automatically configured as a standby database node. Your initial standby nodes become the main one. +After 700 seconds, if your main database node is still considered as down, a new node is spawned and automatically configured as a standby database node. Your initial standby node becomes the main one. Once this process is complete, your Database Instance goes back to `READY` status (represented by the green dot in the Scaleway console). \ No newline at end of file From a8c09d9a434b8e4cdc03f86f4e14a75d41e9c283 Mon Sep 17 00:00:00 2001 From: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> Date: Thu, 3 Oct 2024 13:44:01 +0200 Subject: [PATCH 07/10] fix(mdb): review ro 2 Co-authored-by: Rowena Jones <36301604+RoRoJ@users.noreply.github.com> --- managed-databases/mongodb/api-cli/backup-and-restore.mdx | 2 +- managed-databases/mongodb/reference-content/autohealing.mdx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx index 2ca028b4ac..6199f12626 100644 --- a/managed-databases/mongodb/api-cli/backup-and-restore.mdx +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -22,7 +22,7 @@ This tutorial shows how to backup and restore your MongoDB™ Databases with the - You have an account and are logged into the [Scaleway console](https://console.scaleway.com/) - You have a [MongoDB®-compatible client](https://www.mongodb.com/try/download/shell) installed - - You have [created a MongoDB™ Database Instance](/managed-databases/mongodb/how-to/create-a-database-instance) + - You have [created a MongoDB™ Database Instance](/managed-databases/mongodb/how-to/create-a-database-instance/) - You have [mongodump and mongorestore tools](https://www.mongodb.com/docs/database-tools/installation/installation/) installed diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx index ec34d29fd8..1f724769c4 100644 --- a/managed-databases/mongodb/reference-content/autohealing.mdx +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -10,7 +10,7 @@ categories: - managed-databases --- -At Scaleway, High Availability Database Instances are continuously monitored and benefit from the autohealing feature. +At Scaleway, High Availability (HA) Database Instances are continuously monitored and benefit from the autohealing feature. This feature is what guarantees your Database Instance will remain available even when one of its nodes is down. From 0c39c44e41e9a41830bc45d832d271cac246de49 Mon Sep 17 00:00:00 2001 From: SamyOubouaziz Date: Wed, 9 Oct 2024 15:33:36 +0200 Subject: [PATCH 08/10] fix(RDB): update --- .../mongodb/api-cli/backup-and-restore.mdx | 24 +++++----- managed-databases/mongodb/api-cli/index.mdx | 8 ++-- managed-databases/mongodb/concepts.mdx | 20 +++++---- .../how-to/connect-database-instance.mdx | 34 +++++++------- .../how-to/create-a-database-instance.mdx | 22 ++++++---- .../how-to/delete-a-database-instance.mdx | 11 +++-- .../mongodb/how-to/increase-volume.mdx | 18 +++++--- managed-databases/mongodb/how-to/index.mdx | 8 ++-- .../mongodb/how-to/manage-snapshots.mdx | 14 +++--- .../mongodb/how-to/manage-users.mdx | 18 +++++--- managed-databases/mongodb/index.mdx | 28 ++++++------ managed-databases/mongodb/quickstart.mdx | 30 +++++++------ .../mongodb/reference-content/autohealing.mdx | 8 +++- .../mongodb/reference-content/index.mdx | 8 ++-- .../mongodb/troubleshooting/disk-full.mdx | 4 ++ .../mongodb/troubleshooting/index.mdx | 8 ++-- menu/navigation.json | 6 +-- tutorials/install-parse-server/index.mdx | 8 ++-- tutorials/mongodb-ubuntu-1604/index.mdx | 40 ++++++++--------- .../index.mdx | 18 ++++---- .../index.mdx | 14 +++--- tutorials/setup-mongodb-on-ubuntu/index.mdx | 44 +++++++++---------- 22 files changed, 218 insertions(+), 175 deletions(-) diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx index 6199f12626..7414fd18f2 100644 --- a/managed-databases/mongodb/api-cli/backup-and-restore.mdx +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -1,28 +1,32 @@ --- meta: - title: Back up and restore MongoDB™ Databases with MongoDB® tools - description: This page shows you how to back up and restore MongoDB™ Databases with MongoDB® command line tools + title: Back up and restore MongoDB® Databases with MongoDB® tools + description: This page shows you how to back up and restore MongoDB® Databases with MongoDB® command line tools content: - h1: Back up and restore MongoDB™ Databases with MongoDB® tools - paragraph: This page shows you how to back up and restore MongoDB™ Databases with MongoDB® command line tools + h1: Back up and restore MongoDB® Databases with MongoDB® tools + paragraph: This page shows you how to back up and restore MongoDB® Databases with MongoDB® command line tools tags: databases mongodb mongodb document backup database-nodes categories: - managed-databases - postgresql-and-mysql --- -Managed MongoDB™ Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + +Managed MongoDB® Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. -This means you can use MongoDB® command line tools to use and manage your MongoDB™ Databases. +This means you can use MongoDB® command line tools to use and manage your MongoDB® Databases. -This tutorial shows how to backup and restore your MongoDB™ Databases with the MongoDB® `mongodump` and `mongorestore` command line database tools. +This tutorial shows how to backup and restore your MongoDB® Databases with the MongoDB® `mongodump` and `mongorestore` command line database tools. - You have an account and are logged into the [Scaleway console](https://console.scaleway.com/) - You have a [MongoDB®-compatible client](https://www.mongodb.com/try/download/shell) installed - - You have [created a MongoDB™ Database Instance](/managed-databases/mongodb/how-to/create-a-database-instance/) + - You have [created a MongoDB® Database Instance](/managed-databases/mongodb/how-to/create-a-database-instance/) - You have [mongodump and mongorestore tools](https://www.mongodb.com/docs/database-tools/installation/installation/) installed @@ -32,12 +36,12 @@ This tutorial shows how to backup and restore your MongoDB™ Databases with the Make sure you keep the `--ssl` and `--sslCAFile=` options in your commands, as you will need to authenticate using the default SSL certificate when you connect to your Database Instance. -## How to back up a MongoDB™ Database Instance +## How to back up a MongoDB® Database Instance To create backups, we will use the `mongodump` tool, which can create backups for an entire Database Instance, logical database or collection. It can also use a query to back up part of a collection. 1. Navigate to the [Scaleway console](https://console.scaleway.com/). -2. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +2. Click **MongoDB® Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 3. Click the database name or > **More info** to access the Database Instance information page. 4. Download the Database Instance's SSL certificate. diff --git a/managed-databases/mongodb/api-cli/index.mdx b/managed-databases/mongodb/api-cli/index.mdx index 7930cc70a3..58632032a4 100644 --- a/managed-databases/mongodb/api-cli/index.mdx +++ b/managed-databases/mongodb/api-cli/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed MongoDB™ Databases - API/CLI Documentation - description: Managed MongoDB™ Databases API/CLI Documentation + title: Managed MongoDB® Databases - API/CLI Documentation + description: Managed MongoDB® Databases API/CLI Documentation content: - h1: Managed MongoDB™ Databases - API/CLI Documentation - paragraph: Managed MongoDB™ Databases API/CLI Documentation + h1: Managed MongoDB® Databases - API/CLI Documentation + paragraph: Managed MongoDB® Databases API/CLI Documentation --- diff --git a/managed-databases/mongodb/concepts.mdx b/managed-databases/mongodb/concepts.mdx index 20297321ec..70fac83803 100644 --- a/managed-databases/mongodb/concepts.mdx +++ b/managed-databases/mongodb/concepts.mdx @@ -1,15 +1,19 @@ --- meta: - title: Managed MongoDB™ Databases - Concepts - description: This page explains all the concepts related to Managed MongoDB™ Databases. + title: Managed MongoDB® Databases - Concepts + description: This page explains all the concepts related to Managed MongoDB® Databases. content: - h1: Managed MongoDB™ Databases - Concepts - paragraph: This page explains all the concepts related to Managed MongoDB™ Databases. + h1: Managed MongoDB® Databases - Concepts + paragraph: This page explains all the concepts related to Managed MongoDB® Databases. tags: concepts managed-databases ferredb mongodb document categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + ## Block Storage Low Latency Block Storage Low Latency is a storage type similar to [Basic Block Storage](#basic-block-storage) that provides lower latency and high resiliency through 5k IOPS. You can increase your volume size to up to 10 TB. @@ -38,7 +42,7 @@ A point of connection to a database. The endpoint is associated with an IPv4 add ## Engine -A database engine is the software component that stores and retrieves your data from a database. Currently, MongoDB™ 7.0.11 and 7.0.12 are available. +A database engine is the software component that stores and retrieves your data from a database. Currently, MongoDB® 7.0.11 and 7.0.12 are available. ## Logs @@ -53,13 +57,13 @@ Compared to traditional database management, which requires customers to provisi - During the MongoDB™ Private Beta, only the France region is available. + During the MongoDB® Private Beta, only the France region is available. ## Replica-set 1-node -An Instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. +An Instance of MongoDB® that runs as a single server and does not provide redundancy or high availability. ## Replica-set 3-nodes -A group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. +A group of 3 MongoDB® servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index 2a55d47212..f0e2a0af04 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -1,10 +1,10 @@ --- meta: - title: How to connect to a MongoDB™ Database Instance - description: This page explains how to connect to a MongoDB™ Database Instance + title: How to connect to a MongoDB® Database Instance + description: This page explains how to connect to a MongoDB® Database Instance content: - h1: How to connect to a MongoDB™ Database Instance - paragraph: This page explains how to connect to a MongoDB™ Database Instance + h1: How to connect to a MongoDB® Database Instance + paragraph: This page explains how to connect to a MongoDB® Database Instance tags: mongodb mongodb document database-instance managed-database database dates: validation: 2024-09-18 @@ -13,18 +13,22 @@ categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart/) +- A [MongoDB® Database Instance](/managed-databases/mongodb/quickstart/) - Installed either [mongosh](https://www.mongodb.com/docs/mongodb-shell/), or the [pymongo](https://pymongo.readthedocs.io/en/stable/) distribution for Python, or the Node.js [mongodb module](https://www.npmjs.com/package/mongodb) or the [mongo driver for Go](https://github.com/mongodb/mongo-go-driver), or [Mongoose](https://mongoosejs.com/) on your local machine ## How to connect via a database client -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. @@ -36,7 +40,7 @@ Find below a detailed description of each connection mode: ### mongosh -To connect to a public endpoint using the MongoDB™ shell: +To connect to a public endpoint using the MongoDB® shell: 1. Replace the following variables in the command as described: ```sh @@ -54,7 +58,7 @@ To connect to a public endpoint using the MongoDB™ shell: If the connection is successful, you should see the following message display on your console, and be able to write queries: ```sh The server generated these startup warnings when booting - Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + Powered by MongoDB® v0.9.0 and PostgreSQL 14.6. ``` Follow the same procedure to connect to a private endpoint for one node, replacing `{privateNetorkName}` with the name of your Private Network: @@ -76,7 +80,7 @@ The following code shows you how to use the `pymongo` library to connect using T ```python from pymongo import MongoClient -# Replace with your MongoDB connection details +# Replace with your MongoDB® connection details username = "your_username" password = "your_password" # it is best to use environment variables to manage sensitive data instance_id = "your_instance_id" @@ -114,7 +118,7 @@ The following code shows you how to use the `mongodb` module to connect using TL const { MongoClient } = require('mongodb'); const path = require('path'); -// Replace with your MongoDB connection details +// Replace with your MongoDB® connection details const username = encodeURIComponent('your_username'); const password = encodeURIComponent('your_password'); const region = "your_region" // "fr-par" for Paris. @@ -137,7 +141,7 @@ const client = new MongoClient(connectionString, { async function run() { try { - // Connect to the MongoDB server + // Connect to the MongoDB® server await client.connect(); console.log('Connected to MongoDB!'); @@ -153,7 +157,7 @@ async function run() { } finally { // Close the connection await client.close(); - console.log('Connection to MongoDB closed.'); + console.log('Connection to MongoDB® closed.'); } } @@ -223,7 +227,7 @@ The following code shows you how to use the `Mongoose` schema to connect using T const mongoose = require('mongoose'); const path = require('path'); -// Replace with your MongoDB connection details +// Replace with your MongoDB® connection details const username = encodeURIComponent('your_username'); const password = encodeURIComponent('your_password'); const region = "your_region" // "fr-par" for Paris. @@ -236,7 +240,7 @@ const tlsCertificatePath = path.resolve(__dirname, 'path/to/your_tls_certificate // Construct the connection string const connectionString = `mongodb+srv://${username}:${password}@${instanceId}.mgdb.${region}.scw.cloud`; -// Connect to MongoDB using Mongoose +// Connect to MongoDB® using Mongoose mongoose.connect(connectionString, { useNewUrlParser: true, useUnifiedTopology: true, @@ -244,7 +248,7 @@ mongoose.connect(connectionString, { tlsCAFile: tlsCertificatePath, // Path to the CA certificate file }) .then(() => { - console.log('Connected to MongoDB with Mongoose!'); + console.log('Connected to MongoDB® with Mongoose!'); }) .catch(err => { console.error('Connection error', err); diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 27c22b1734..4fb77925c9 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -1,10 +1,10 @@ --- meta: - title: How to create a MongoDB™ Database Instance - description: This page explains how to create a MongoDB™ Database Instance + title: How to create a MongoDB® Database Instance + description: This page explains how to create a MongoDB® Database Instance content: - h1: How to create a MongoDB™ Database Instance - paragraph: This page explains how to create a MongoDB™ Database Instance + h1: How to create a MongoDB® Database Instance + paragraph: This page explains how to create a MongoDB® Database Instance tags: postgresql mongodb mongodb database-instance managed-database database dates: validation: 2024-10-01 @@ -13,7 +13,11 @@ categories: - managed-databases --- -Managed MongoDB™ Databases provide fully-managed document Database Instances, with MongoDB™ as a database engine. + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + +Managed MongoDB® Databases provide fully-managed document Database Instances, with MongoDB® as a database engine. Document databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. @@ -25,14 +29,14 @@ Document databases enable users to store and retrieve data in a document format, ## How to create a database -1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. 2. Click **Create a Database Instance**. The creation wizard displays. 3. Complete the following steps in the wizard: - - Select **MongoDB™** as a database engine. + - Select **MongoDB®** as a database engine. - Choose a region. This is the geographical location where your database will be deployed. - Select a replica set configuration. You can choose between: - - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. + - **Replica-set 1-node** - an instance of MongoDB® that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB® servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. - Select a node type. - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume size to up to 10 TB. - Add a name and set a password for your user. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index c54bfc7fa2..9f81120983 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -1,9 +1,9 @@ --- meta: - title: How to delete a MongoDB™ Database Instance + title: How to delete a MongoDB® Database Instance description: This page explains how to delete a Database content: - h1: How to delete a MongoDB™ Database Instance + h1: How to delete a MongoDB® Database Instance paragraph: This page explains how to delete a Database tags: managed-database postgresql mongodb mongodb document database-instance dates: @@ -13,15 +13,18 @@ categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- A [MongoDB® Database Instance](/managed-databases/mongodb/quickstart) -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click the **Settings** tab, scroll down to the **Delete Database Instance** section and click **Delete Instance**. A pop-up appears to inform you that: diff --git a/managed-databases/mongodb/how-to/increase-volume.mdx b/managed-databases/mongodb/how-to/increase-volume.mdx index 6e9a373484..d63581d485 100644 --- a/managed-databases/mongodb/how-to/increase-volume.mdx +++ b/managed-databases/mongodb/how-to/increase-volume.mdx @@ -1,10 +1,10 @@ --- meta: - title: How to increase the storage of a Managed Database for MongoDB™ - description: Guide to increasing the block volume of your MongoDB™ Database Instance at Scaleway. + title: How to increase the storage of a Managed MongoDB® database + description: Guide to increasing the block volume of your Managed MongoDB® Database Instance at Scaleway. content: - h1: How to increase the storage of a Managed Database for MongoDB™ - paragraph: Guide to increasing the block volume of your MongoDB™ Database Instance at Scaleway. + h1: How to increase the storage of a Managed MongoDB® database + paragraph: Guide to increasing the block volume of your Managed MongoDB® Database Instance at Scaleway. tags: managed-database postgresql mysql upgrade dates: validation: 2024-10-01 @@ -13,18 +13,22 @@ categories: - managed-databases --- -You can increase the Block Storage volume of your MongoDB™ Database Instance in the Scaleway console anytime. + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + +You can increase the Block Storage volume of your MongoDB® Database Instance in the Scaleway console anytime. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- A [MongoDB® Database Instance](/managed-databases/mongodb/quickstart) ## How to increase a Block Storage volume -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the name of the Database Instance you want to configure. The Database Instance overview page displays. 3. Scroll down to **Volume settings**. 4. Specify your volume capacity (in GB). The amount you define will be your new volume capacity. diff --git a/managed-databases/mongodb/how-to/index.mdx b/managed-databases/mongodb/how-to/index.mdx index 4cf9a0f7cc..c1c6b7583c 100644 --- a/managed-databases/mongodb/how-to/index.mdx +++ b/managed-databases/mongodb/how-to/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed MongoDB™ Databases - How Tos - description: Managed MongoDB™ Databases How Tos + title: Managed MongoDB® Databases - How Tos + description: Managed MongoDB® Databases How Tos content: - h1: Managed MongoDB™ Databases - How Tos - paragraph: Managed MongoDB™ Databases How Tos + h1: Managed MongoDB® Databases - How Tos + paragraph: Managed MongoDB® Databases How Tos --- diff --git a/managed-databases/mongodb/how-to/manage-snapshots.mdx b/managed-databases/mongodb/how-to/manage-snapshots.mdx index 026cf094d9..c84de655d7 100644 --- a/managed-databases/mongodb/how-to/manage-snapshots.mdx +++ b/managed-databases/mongodb/how-to/manage-snapshots.mdx @@ -1,9 +1,9 @@ --- meta: - title: How to manage MongoDB™ Database snapshots + title: How to manage MongoDB® Database snapshots description: This page explains how to manage database snapshots content: - h1: How to manage MongoDB™ Database snapshots + h1: How to manage MongoDB® Database snapshots paragraph: This page explains how to manage database snapshots tags: managed-database database database-snapshot mongodb mongodb document dates: @@ -13,6 +13,10 @@ categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + [Snapshots](/managed-databases/mongodb/how-to/manage-snapshots/) allow you to restore data in a new Database Instance. You can have up to 100 snapshots per Instance and project (depending on quotas). @@ -21,7 +25,7 @@ You can have up to 100 snapshots per Instance and project (depending on quotas). - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- A [MongoDB® Database Instance](/managed-databases/mongodb/quickstart) ## How to create snapshots @@ -50,8 +54,8 @@ You can restore the data contained in a snapshot to a Database Instance. When yo It is possible to select a different (larger or smaller) node type for your new Instance. However, the block volume size will be the same as the size of the restored snapshot. All Instance settings will be restored if you chose a node type with the same or more memory size than the initial Instance. Settings will be reset to the default if your node type has less memory. 6. Select a replica set configuration. You can choose between: - - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. + - **Replica-set 1-node** - an instance of MongoDB® that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB® servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. 7. Review the estimated cost. 8. Click **Create Instance** to confirm. diff --git a/managed-databases/mongodb/how-to/manage-users.mdx b/managed-databases/mongodb/how-to/manage-users.mdx index 4c2aca4f29..a115ed744f 100644 --- a/managed-databases/mongodb/how-to/manage-users.mdx +++ b/managed-databases/mongodb/how-to/manage-users.mdx @@ -1,10 +1,10 @@ --- meta: - title: How to manage a MongoDB™ Database Instance user - description: This page explains how to manage the MongoDB™ Database Instance default user + title: How to manage a MongoDB® Database Instance user + description: This page explains how to manage the MongoDB® Database Instance default user content: - h1: How to manage a MongoDB™ Database Instance user - paragraph: This page explains how to manage the MongoDB™ Database Instance default user + h1: How to manage a MongoDB® Database Instance user + paragraph: This page explains how to manage the MongoDB® Database Instance default user tags: managed-database database postgresql mongodb database-instance mongodb dates: validation: 2024-10-01 @@ -13,21 +13,25 @@ categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + Users can connect to a database and access its data. - During the MongoDB™ private beta, you can have only one user per Instance. The default user has admin rights on the Database Instance. The name and password of this default user can be set upon Database Instance creation. + During the MongoDB® private beta, you can have only one user per Instance. The default user has admin rights on the Database Instance. The name and password of this default user can be set upon Database Instance creation. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™ Database Instance](/managed-databases/mongodb/quickstart) +- A [MongoDB® Database Instance](/managed-databases/mongodb/quickstart) ## How to change the password of your user -1. Click **MongoDB™ Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB® Databases** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Go to the **Users** tab. Your default user displays. 4. Click **Change password** to do so. A pop-up appears. diff --git a/managed-databases/mongodb/index.mdx b/managed-databases/mongodb/index.mdx index c2deb6ff24..9cf523176f 100644 --- a/managed-databases/mongodb/index.mdx +++ b/managed-databases/mongodb/index.mdx @@ -1,18 +1,18 @@ --- meta: - title: Managed MongoDB™ Databases Documentation - description: Dive into Scaleway Managed MongoDB™ Databases with our quickstart guides, how-tos, tutorials and more. + title: Managed MongoDB® Databases Documentation + description: Dive into Scaleway Managed MongoDB® Databases with our quickstart guides, how-tos, tutorials and more. content: - h1: Managed MongoDB™ Databases Documentation - paragraph: Dive into Scaleway Managed MongoDB™ Databases with our quickstart guides, how-tos, tutorials and more. + h1: Managed MongoDB® Databases Documentation + paragraph: Dive into Scaleway Managed MongoDB® Databases with our quickstart guides, how-tos, tutorials and more. --- ## Getting Started @@ -21,28 +21,28 @@ content: @@ -53,7 +53,7 @@ content: @@ -61,10 +61,10 @@ content: ## Changelog diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index 6edac088ba..a3d0560923 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -1,10 +1,10 @@ --- meta: - title: Managed MongoDB™ Databases - Quickstart - description: This page shows you how to get started with Managed MongoDB™ Databases. + title: Managed MongoDB® Databases - Quickstart + description: This page shows you how to get started with Managed MongoDB® Databases. content: - h1: Managed MongoDB™ Databases - Quickstart - paragraph: This page shows you how to get started with Managed MongoDB™ Databases. + h1: Managed MongoDB® Databases - Quickstart + paragraph: This page shows you how to get started with Managed MongoDB® Databases. tags: document managed-database database mongodb dates: validation: 2024-09-12 @@ -13,26 +13,30 @@ categories: - managed-databases --- -Managed MongoDB™ Databases provide fully-managed document Database Instances, with MongoDB™ as a database engine. + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + -MongoDB™ databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. +Managed MongoDB® Databases provide fully-managed document Database Instances, with MongoDB® as a database engine. + +MongoDB® databases enable users to store and retrieve data in a document format, such as `json`. Compared to traditional relational databases where data is stored in a table-like format, document-type storage supports storing multiple nested keys and values in each document key. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A [MongoDB™-compatible client](https://www.mongodb.com/try/download/shell) installed +- A [MongoDB®-compatible client](https://www.mongodb.com/try/download/shell) installed ## How to create a Database Instance -1. Click **MongoDB™** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu, if you do not have a Database Instance already created, the creation page displays. 2. Click **Create a Database Instance**. The creation wizard displays. 3. Complete the following steps in the wizard: - - Select **MongoDB™** as a database engine. + - Select **MongoDB®** as a database engine. - Choose a region. This is the geographical location where your database will be deployed. - Select a replica set configuration. You can choose between: - - **Replica-set 1-node** - an instance of MongoDB™ that runs as a single server and does not provide redundancy or high availability. - - **Replica-set 3-nodes** - a group of 3 MongoDB™ servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. + - **Replica-set 1-node** - an instance of MongoDB® that runs as a single server and does not provide redundancy or high availability. + - **Replica-set 3-nodes** - a group of 3 MongoDB® servers (1 primary and 2 standby nodes) that maintain the same data set. Replica sets provide redundancy and high availability and are the basis for all production deployments. If the main node fails for any reason, one of the remaining standby nodes is assigned and can take over requests, reducing downtime. - Select a node type. - Define the size of your Block Storage volume. You can increase your storage space without changing your node type, with no downtime. You can increase your volume to up to 10 TB. - Add a name and set a password for your user. @@ -50,7 +54,7 @@ MongoDB™ databases enable users to store and retrieve data in a document forma ## How to connect via database client with mongosh -1. Click **MongoDB™** under **Managed Databases** on the side menu. A list of your Database Instances displays. +1. Click **MongoDB®** under **Managed Databases** on the side menu. A list of your Database Instances displays. 2. Click the database name or > **More info** to access the Database Instance information page. 3. Click next to the **TLS certificate** to download it. 4. Transfer the file to where you will execute the connection command. @@ -77,7 +81,7 @@ MongoDB™ databases enable users to store and retrieve data in a document forma If the connection is successful, you should see the following message display on your console, and be able to write queries: ```sh The server generated these startup warnings when booting - Powered by MongoDB™ v0.9.0 and PostgreSQL 14.6. + Powered by MongoDB® v0.9.0 and PostgreSQL 14.6. ``` ### Connect to a private endpoint diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx index 1f724769c4..5f7ce9cf96 100644 --- a/managed-databases/mongodb/reference-content/autohealing.mdx +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -1,15 +1,19 @@ --- meta: title: Understanding the autohealing feature - description: Learn more about the autohealing feature for Managed MongoDB™ Databases + description: Learn more about the autohealing feature for Managed MongoDB® Databases content: h1: Understanding the autohealing feature - paragraph: Learn more about the autohealing feature for Managed MongoDB™ Database + paragraph: Learn more about the autohealing feature for Managed MongoDB® Database tags: databases ha high-availability autohealing database-nodes categories: - managed-databases --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + At Scaleway, High Availability (HA) Database Instances are continuously monitored and benefit from the autohealing feature. This feature is what guarantees your Database Instance will remain available even when one of its nodes is down. diff --git a/managed-databases/mongodb/reference-content/index.mdx b/managed-databases/mongodb/reference-content/index.mdx index b55089a2f0..26c20a6bc6 100644 --- a/managed-databases/mongodb/reference-content/index.mdx +++ b/managed-databases/mongodb/reference-content/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed MongoDB™ Databases - Additional content - description: Managed MongoDB™ Databases additional content + title: Managed MongoDB® Databases - Additional content + description: Managed MongoDB® Databases additional content content: - h1: Managed MongoDB™ Databases - Additional content - paragraph: Managed MongoDB™ Databases additional content + h1: Managed MongoDB® Databases - Additional content + paragraph: Managed MongoDB® Databases additional content --- diff --git a/managed-databases/mongodb/troubleshooting/disk-full.mdx b/managed-databases/mongodb/troubleshooting/disk-full.mdx index 1a243ccdeb..42473b08eb 100644 --- a/managed-databases/mongodb/troubleshooting/disk-full.mdx +++ b/managed-databases/mongodb/troubleshooting/disk-full.mdx @@ -14,6 +14,10 @@ categories: - postgresql-and-mysql --- + +Managed MongoDB® is currently in closed private beta and is not accessible to users yet. + + Whenever your Database Instance volume is close to reaching full capacity, your Database Instance switches to `disk_full` mode. The Database Instance switches to `disk_full` mode when the amount of free space in the volume falls under 2% of the total volume size. diff --git a/managed-databases/mongodb/troubleshooting/index.mdx b/managed-databases/mongodb/troubleshooting/index.mdx index 0c8ae24013..2779b5e142 100644 --- a/managed-databases/mongodb/troubleshooting/index.mdx +++ b/managed-databases/mongodb/troubleshooting/index.mdx @@ -1,8 +1,8 @@ --- meta: - title: Managed MongoDB™ Databases - Troubleshooting - description: Managed MongoDB™ Databases Troubleshooting + title: Managed MongoDB® Databases - Troubleshooting + description: Managed MongoDB® Databases Troubleshooting content: - h1: Managed MongoDB™ Databases - Troubleshooting - paragraph: Managed MongoDB™ Databases Troubleshooting + h1: Managed MongoDB® Databases - Troubleshooting + paragraph: Managed MongoDB® Databases Troubleshooting --- diff --git a/menu/navigation.json b/menu/navigation.json index 671cb634ca..9e8c62b6c1 100644 --- a/menu/navigation.json +++ b/menu/navigation.json @@ -2316,7 +2316,7 @@ { "items": [ { - "label": "MongoDB™ Overview", + "label": "MongoDB® Overview", "slug": "../mongodb" }, { @@ -2378,7 +2378,7 @@ "slug": "troubleshooting" } ], - "label": "MongoDB™", + "label": "MongoDB®", "slug": "mongodb" } ], @@ -5385,4 +5385,4 @@ ], "label": "Additional Services" } -] \ No newline at end of file +] diff --git a/tutorials/install-parse-server/index.mdx b/tutorials/install-parse-server/index.mdx index 456377f70c..ee3b14562b 100644 --- a/tutorials/install-parse-server/index.mdx +++ b/tutorials/install-parse-server/index.mdx @@ -25,7 +25,7 @@ Parse provides a cloud-based backend service to build data-driven mobile applica ## Installing MongoDB -MongoDB is a document-oriented database that is free and open-source. It is considered one of the most popular NoSQL database engines because it is scalable, powerful, reliable, and easy to use. In contrast to relational databases, MongoDB does not require a deep predefined schema before you can add data since it can be altered at any time. +MongoDB® is a document-oriented database that is free and open-source. It is considered one of the most popular NoSQL database engines because it is scalable, powerful, reliable, and easy to use. In contrast to relational databases, MongoDB® does not require a deep predefined schema before you can add data since it can be altered at any time. 1. Update the Ubuntu package manager: ``` @@ -35,11 +35,11 @@ MongoDB is a document-oriented database that is free and open-source. It is cons ``` apt upgrade ``` -3. Install MongoDB. By default, MongoDB is available in the Ubuntu 20.04 default repository. +3. Install MongoDB. By default, MongoDB® is available in the Ubuntu 20.04 default repository. ``` apt install mongodb-server -y ``` -4. Verify MongoDB status. +4. Verify MongoDB® status. ``` systemctl status mongodb.service ``` @@ -138,7 +138,7 @@ These steps should install Node.js efficiently on your system. Additionally, you The configuration details are as follows: - `appName`: Set any name for your Parse server - - `databaseURI`: Connection string to the MongoDB database + - `databaseURI`: Connection string to the MongoDB® database - `appID`: Set a random string as appID, which will be used to connect the server. - `masterKey`: Set a random string for the master key. - `serverURL`: Set a URL for your parse server diff --git a/tutorials/mongodb-ubuntu-1604/index.mdx b/tutorials/mongodb-ubuntu-1604/index.mdx index 135368ee02..0bdf549954 100644 --- a/tutorials/mongodb-ubuntu-1604/index.mdx +++ b/tutorials/mongodb-ubuntu-1604/index.mdx @@ -1,10 +1,10 @@ --- meta: - title: Install and secure MongoDB on Ubuntu 22.04 Jammy Jellyfish - description: Follow a 3-step tutorial to install and secure MongoDB on Ubuntu 22.04 Jammy Jellyfish for robust database management. + title: Install and secure MongoDB® on Ubuntu 22.04 Jammy Jellyfish + description: Follow a 3-step tutorial to install and secure MongoDB® on Ubuntu 22.04 Jammy Jellyfish for robust database management. content: - h1: Install and secure MongoDB on Ubuntu 22.04 Jammy Jellyfish - paragraph: Follow a 3-step tutorial to install and secure MongoDB on Ubuntu 22.04 Jammy Jellyfish for robust database management. + h1: Install and secure MongoDB® on Ubuntu 22.04 Jammy Jellyfish + paragraph: Follow a 3-step tutorial to install and secure MongoDB® on Ubuntu 22.04 Jammy Jellyfish for robust database management. tags: database mysql mongoDB UFW bindIP categories: - instances @@ -13,9 +13,9 @@ dates: posted: 2018-06-25 --- -MongoDB is a document-oriented database that is free and open-source. It is considered one of the most popular NoSQL database engines because it is scalable, powerful, reliable, and easy to use. +MongoDB® is a document-oriented database that is free and open-source. It is considered one of the most popular NoSQL database engines because it is scalable, powerful, reliable, and easy to use. -In contrast to relational databases, MongoDB does not require a deep predefined schema before you can add data since it can be altered at any time. As it uses the NoSQL concept, data rows are stored in JSON-like documents which allows arbitrary data to be inserted. +In contrast to relational databases, MongoDB® does not require a deep predefined schema before you can add data since it can be altered at any time. As it uses the NoSQL concept, data rows are stored in JSON-like documents which allows arbitrary data to be inserted. @@ -27,10 +27,10 @@ In contrast to relational databases, MongoDB does not require a deep predefined ## Setting up MongoDB -### Adding MongoDB Repository +### Adding MongoDB® Repository - You should always use the official MongoDB `mongodb-org` packages, which are kept up-to-date with the most recent major and minor MongoDB releases. + You should always use the official MongoDB® `mongodb-org` packages, which are kept up-to-date with the most recent major and minor MongoDB® releases. 1. [Connect to your Instance](/compute/instances/how-to/connect-to-instance/) via SSH. @@ -47,13 +47,13 @@ In contrast to relational databases, MongoDB does not require a deep predefined apt upgrade -y apt install gnupg curl ``` -4. Import the key for the official MongoDB repository (Ubuntu ensures the authenticity of software packages by verifying that they are signed with GPG keys.). +4. Import the key for the official MongoDB® repository (Ubuntu ensures the authenticity of software packages by verifying that they are signed with GPG keys.). ``` curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor ``` -5. Add the MongoDB repository details so that Ubuntu's `apt` command-line tool will know where to download the packages. Execute the following command to create a list file for MongoDB. +5. Add the MongoDB® repository details so that Ubuntu's `apt` command-line tool will know where to download the packages. Execute the following command to create a list file for MongoDB. ``` echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-7.0.list ``` @@ -68,7 +68,7 @@ In contrast to relational databases, MongoDB does not require a deep predefined ``` apt install mongodb-org ``` -2. Press enter or type `Y` to proceed when prompted. Once the installation is completed, we start the MongoDB daemon. +2. Press enter or type `Y` to proceed when prompted. Once the installation is completed, we start the MongoDB® daemon. ``` systemctl start mongod.service ``` @@ -77,7 +77,7 @@ In contrast to relational databases, MongoDB does not require a deep predefined systemctl status mongod ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2024-06-17 11:33:47 UTC; 1s ago Docs: https://docs.mongodb.org/manual @@ -97,14 +97,14 @@ In contrast to relational databases, MongoDB does not require a deep predefined ### Securing MongoDB -The default installation of MongoDB is vulnerable because no authentication is required to interact with the database. Any user could create and destroy databases, as well as read from and write to their contents by default. To secure MongoDB, we need to create an administrative user and enable authentication. +The default installation of MongoDB® is vulnerable because no authentication is required to interact with the database. Any user could create and destroy databases, as well as read from and write to their contents by default. To secure MongoDB, we need to create an administrative user and enable authentication. 1. Connect to the Mongo shell to add a new user. ``` mongosh ``` - The legacy mongo shell was deprecated in MongoDB 5.0 and removed in MongoDB 6.0. The new MongoDB Shell, mongosh, offers numerous advantages over the legacy shell. + The legacy mongo shell was deprecated in MongoDB® 5.0 and removed in MongoDB® 6.0. The new MongoDB® Shell, mongosh, offers numerous advantages over the legacy shell. ``` Current Mongosh Log ID: 66701f399be3b0bbf2597192 @@ -119,7 +119,7 @@ The default installation of MongoDB is vulnerable because no authentication is r You can choose any preferred name for the administrative user since the privilege level is assigned from the role of `userAdminAnyDatabase`. - The `admin` database designates where the credentials are stored. You can learn more about authentication in the [MongoDB Security Authentication section](https://docs.mongodb.com/manual/core/authentication/). + The `admin` database designates where the credentials are stored. You can learn more about authentication in the [MongoDB® Security Authentication section](https://docs.mongodb.com/manual/core/authentication/). 2. Set the username of your choice and be sure to pick a secure password and substitute it in the command below: ``` use admin @@ -159,7 +159,7 @@ The default installation of MongoDB is vulnerable because no authentication is r ### Enabling authentication -To enforce authentication, we need to enable authentication and restart the MongoDB daemon. +To enforce authentication, we need to enable authentication and restart the MongoDB® daemon. 1. Open the configuration file. ``` @@ -179,7 +179,7 @@ To enforce authentication, we need to enable authentication and restart the Mong systemctl status mongod.service ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2022-11-21 12:44:17 UTC; 6min ago Docs: https://docs.mongodb.org/manual @@ -285,7 +285,7 @@ Uncomplicated Firewall (UFW), is a front-end to iptables. Its main goal is to ma OpenSSH ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) ``` -6. Allow access to the default MongoDB port `27017` but restrict that access to a specific host. +6. Allow access to the default MongoDB® port `27017` but restrict that access to a specific host. ``` ufw allow from client_ip_address to any port 27017 ``` @@ -353,11 +353,11 @@ Using Mongosh: 2.2.9 ``` service mongod stop ``` -2. Remove any MongoDB packages that you had previously installed. +2. Remove any MongoDB® packages that you had previously installed. ``` apt purge mongodb-org* ``` -3. Remove MongoDB databases and log files. +3. Remove MongoDB® databases and log files. ``` rm -r /var/log/mongodb rm -r /var/lib/mongodb diff --git a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx index f65cc442b3..b35176c755 100644 --- a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx +++ b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx @@ -23,7 +23,7 @@ Private Networks are a LAN-like layer 2 Ethernet network. A new network interfac To reach the goal of this tutorial, you will use four [Production-Optimized Instance](/compute/instances/reference-content/choosing-instance-type/) running **Ubuntu 22.04 (Jammy Jellyfish)** or later: - 1 POP2-2C-8G Instance as NGINX Proxy frontend, that distributes the load on the Rocket.Chat applications -- 1 POP2-8C-32G Instance as MongoDB host +- 1 POP2-8C-32G Instance as MongoDB® host - 2 POP2-4C-16G Instances running the Rocket.Chat application - A [Private Network](/network/vpc/quickstart/) between these Instances @@ -79,7 +79,7 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst 9. Configure the IP address of the private interface. In our example, we use the following IP's for our Instances: - NGINX Proxy Instance: `192.168.1.1/24` - - MongoDB Instance: `192.168.1.2/24` + - MongoDB® Instance: `192.168.1.2/24` - Rocket.Chat Instance 1: `192.168.1.3/24` - Rocket.Chat Instance 2: `192.168.1.4/24` @@ -106,12 +106,12 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst ``` root@mogodb-instance:~# apt update && apt upgrade -y ``` -3. Install the required prerequisites and the MongoDB GPG key to your system: +3. Install the required prerequisites and the MongoDB® GPG key to your system: ``` apt install -y gnupg wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | apt-key add - ``` -4. Add the [MongoDB](/tutorials/mongodb-ubuntu-1604/) repository to your system. In this tutorial, we use MongoDB 6.0: +4. Add the [MongoDB](/tutorials/mongodb-ubuntu-1604/) repository to your system. In this tutorial, we use MongoDB® 6.0: ``` echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-6.0.list ``` @@ -119,7 +119,7 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst ``` apt update ``` -6. Install MongoDB using the `apt` package manager: +6. Install MongoDB® using the `apt` package manager: ``` apt install mongodb-org -y ``` @@ -152,13 +152,13 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst ``` - In this setup we limit the access to the MongoDB on an IP basis, for a production environment it is recommended to use stronger authentication methods. Refer to the [MongoDB Security Checklist](https://docs.mongodb.com/manual/administration/security-checklist/) for more information. + In this setup we limit the access to the MongoDB® on an IP basis, for a production environment it is recommended to use stronger authentication methods. Refer to the [MongoDB® Security Checklist](https://docs.mongodb.com/manual/administration/security-checklist/) for more information. -8. Enable and start the MongoDB service: +8. Enable and start the MongoDB® service: ``` systemctl enable mongod.service && systemctl start mongod.service ``` -9. Initialize the ReplicaSet on the MongoDB using the following command: +9. Initialize the ReplicaSet on the MongoDB® using the following command: ``` mongosh --eval "printjson(rs.initiate())" ``` @@ -409,7 +409,7 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst 7. Check the number of running Instances from the Rocket.Chat administration interface. -Once everything is set up and working, you can remove the public flexible IP addresses from both Rocket.Chat Instances, as well as from the MongoDB instance. They will be able to communicate securely using the Private Network. +Once everything is set up and working, you can remove the public flexible IP addresses from both Rocket.Chat Instances, as well as from the MongoDB® instance. They will be able to communicate securely using the Private Network. ## Conclusion diff --git a/tutorials/run-messaging-platform-with-rocketchat/index.mdx b/tutorials/run-messaging-platform-with-rocketchat/index.mdx index c24b1ec098..65a5df75ef 100644 --- a/tutorials/run-messaging-platform-with-rocketchat/index.mdx +++ b/tutorials/run-messaging-platform-with-rocketchat/index.mdx @@ -32,7 +32,7 @@ validation_frequency: 24 ``` sudo apt update && sudo apt upgrade -y && sudo apt -y install curl ``` -2. Add the key used by apt to install the official MongoDB packages: +2. Add the key used by apt to install the official MongoDB® packages: ``` curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ @@ -104,19 +104,19 @@ validation_frequency: 24 Replace `rocketchat.example.com` with the domain for your Rocket.Chat Instance. -## Configuring a MongoDB replica set +## Configuring a MongoDB® replica set -We recommend you use the [MongoDB replica set](https://docs.mongodb.com/manual/replication/) to improve Rocket.Chat's performance with Meteor Oplog tailing. +We recommend you use the [MongoDB® replica set](https://docs.mongodb.com/manual/replication/) to improve Rocket.Chat's performance with Meteor Oplog tailing. -1. Run the following code to add a replica set to your MongoDB configuration: +1. Run the following code to add a replica set to your MongoDB® configuration: ``` echo -e "replication:\n replSetName: \"rs01\"" | tee -a /etc/mongod.conf ``` -2. Enable and start the MongoDB service. +2. Enable and start the MongoDB® service. ``` systemctl enable mongod.service && systemctl start mongod.service ``` -3. Connect to the MongoDB shell and initiate the replica set with `rs.initiate()`. +3. Connect to the MongoDB® shell and initiate the replica set with `rs.initiate()`. ``` mongo > rs.initiate() @@ -148,7 +148,7 @@ We recommend you use the [MongoDB replica set](https://docs.mongodb.com/manual/r ``` rs01:PRIMARY> ``` -5. Leave the MongoDB shell. +5. Leave the MongoDB® shell. ``` rs01:PRIMARY> exit bye diff --git a/tutorials/setup-mongodb-on-ubuntu/index.mdx b/tutorials/setup-mongodb-on-ubuntu/index.mdx index cab92e1ebd..5cacefabff 100644 --- a/tutorials/setup-mongodb-on-ubuntu/index.mdx +++ b/tutorials/setup-mongodb-on-ubuntu/index.mdx @@ -1,10 +1,10 @@ --- meta: - title: Installing and Securing MongoDB on Ubuntu Focal Fossa (20.04) - description: This tutorial explains in 3 steps how to install and secure MongoDB on Ubuntu Linux + title: Installing and Securing MongoDB® on Ubuntu Focal Fossa (20.04) + description: This tutorial explains in 3 steps how to install and secure MongoDB® on Ubuntu Linux content: - h1: Installing and Securing MongoDB on Ubuntu Focal Fossa (20.04) - paragraph: This tutorial explains in 3 steps how to install and secure MongoDB on Ubuntu Linux + h1: Installing and Securing MongoDB® on Ubuntu Focal Fossa (20.04) + paragraph: This tutorial explains in 3 steps how to install and secure MongoDB® on Ubuntu Linux tags: database mysql mongoDB UFW bindIP categories: - instances @@ -13,11 +13,11 @@ dates: posted: 2022-03-01 --- -MongoDB is a document-oriented database, available for free as an open-source solution. Renowned for its scalability, robustness, reliability, and user-friendly nature, it is one of the premier choices among NoSQL database engines. +MongoDB® is a document-oriented database, available for free as an open-source solution. Renowned for its scalability, robustness, reliability, and user-friendly nature, it is one of the premier choices among NoSQL database engines. -Diverging from traditional relational databases, MongoDB users no longer need an intricate predefined schema before adding data. This flexibility stems from its ability to modify schemas at any point in time. Embracing the NoSQL philosophy, it employs JSON-like documents for data storage, allowing the insertion of diverse and arbitrary data. +Diverging from traditional relational databases, MongoDB® users no longer need an intricate predefined schema before adding data. This flexibility stems from its ability to modify schemas at any point in time. Embracing the NoSQL philosophy, it employs JSON-like documents for data storage, allowing the insertion of diverse and arbitrary data. -Powerful [Production-Optimized Instance](/compute/instances/reference-content/choosing-instance-type/) comes with the compute and storage capabilities you need to run your MongoDB Instance smoothly. +Powerful [Production-Optimized Instance](/compute/instances/reference-content/choosing-instance-type/) comes with the compute and storage capabilities you need to run your MongoDB® Instance smoothly. We recommend you follow this tutorial using a [Production-Optimized Instance](/compute/instances/reference-content/choosing-instance-type/). @@ -33,10 +33,10 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch ## Setting up MongoDB -### Adding MongoDB repository +### Adding MongoDB® repository - You should always use the official MongoDB `mongodb-org` packages, to make sure you have the latest, up-to-date major and minor MongoDB releases. + You should always use the official MongoDB® `mongodb-org` packages, to make sure you have the latest, up-to-date major and minor MongoDB® releases. 1. [Connect to your Instance](/compute/instances/how-to/connect-to-instance/) via SSH. @@ -57,14 +57,14 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch ``` apt upgrade ``` -4. Import the key for the official MongoDB repository (Ubuntu ensures the authenticity of software packages by verifying that they are signed with GPG keys.). +4. Import the key for the official MongoDB® repository (Ubuntu ensures the authenticity of software packages by verifying that they are signed with GPG keys.). ``` curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \ sudo gpg -o /etc/apt/trusted.gpg.d/mongodb-server-7.0.gpg \ --dearmor ``` The command above should respond with an `OK`. -5. Add the MongoDB repository details so that Ubuntu's `apt` command-line tool will know where to download the packages. Execute the following command to create a list file for MongoDB. +5. Add the MongoDB® repository details so that Ubuntu's `apt` command-line tool will know where to download the packages. Execute the following command to create a list file for MongoDB. ``` echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list ``` @@ -82,7 +82,7 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch ``` apt install mongodb-org ``` -2. Press enter or type `Y` to proceed when prompted. Once the installation is completed, start the MongoDB daemon. +2. Press enter or type `Y` to proceed when prompted. Once the installation is completed, start the MongoDB® daemon. ``` systemctl start mongod.service ``` @@ -91,7 +91,7 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch systemctl status mongod ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor prese> Active: active (running) since Tue 2022-03-01 10:36:39 UTC; 1s ago Docs: https://docs.mongodb.org/manual @@ -105,7 +105,7 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch systemctl status mongod.service ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor prese> Active: active (running) since Tue 2022-03-01 10:36:39 UTC; 1s ago Docs: https://docs.mongodb.org/manual @@ -126,7 +126,7 @@ Powerful [Production-Optimized Instance](/compute/instances/reference-content/ch ### Securing MongoDB -The default installation of MongoDB is vulnerable because no authentication is required to interact with the database. Any user could create and destroy databases, as well as read from and write to their contents by default. To secure MongoDB, we need to create an administrative user and enable authentication. +The default installation of MongoDB® is vulnerable because no authentication is required to interact with the database. Any user could create and destroy databases, as well as read from and write to their contents by default. To secure MongoDB, we need to create an administrative user and enable authentication. 1. Connect to the [Mongo shell](https://docs.mongodb.com/mongodb-shell/) to add a new user. ``` @@ -143,7 +143,7 @@ The default installation of MongoDB is vulnerable because no authentication is r You can choose any preferred name for the administrative user since the privilege level is assigned from the role of `userAdminAnyDatabase`. - The `admin` database designates where the credentials are stored. You can learn more about authentication in the [MongoDB Security Authentication section](https://docs.mongodb.com/manual/core/authentication/). + The `admin` database designates where the credentials are stored. You can learn more about authentication in the [MongoDB® Security Authentication section](https://docs.mongodb.com/manual/core/authentication/). 2. Set the username of your choice and pick your own secure password, then substitute them in the command below: ``` use admin @@ -166,7 +166,7 @@ The default installation of MongoDB is vulnerable because no authentication is r ### Enabling authentication -To enforce authentication, we need to enable authentication and restart the MongoDB daemon. +To enforce authentication, we need to enable authentication and restart the MongoDB® daemon. 1. Open the configuration file. ``` @@ -187,7 +187,7 @@ To enforce authentication, we need to enable authentication and restart the Mong systemctl status mongod ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor prese> Active: active (running) since Tue 2022-03-01 10:43:45 UTC; 2s ago Docs: https://docs.mongodb.org/manual @@ -201,7 +201,7 @@ To enforce authentication, we need to enable authentication and restart the Mong systemctl status mongod.service ``` ``` - ● mongod.service - MongoDB Database Server + ● mongod.service - MongoDB® Database Server Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor prese> Active: active (running) since Tue 2022-03-01 10:43:45 UTC; 2s ago Docs: https://docs.mongodb.org/manual @@ -307,7 +307,7 @@ Uncomplicated Firewall (UFW), is a front-end to iptables. Its main goal is to ma OpenSSH ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) ``` -6. Allow access to the default MongoDB port `27017` but restrict that access to a specific host. +6. Allow access to the default MongoDB® port `27017` but restrict that access to a specific host. ``` ufw allow from client_ip_address to any port 27017 ``` @@ -376,11 +376,11 @@ For mongosh info see: https://docs.mongodb.com/mongodb-shell/ ``` service mongod stop ``` -2. Remove any MongoDB packages that you had previously installed. +2. Remove any MongoDB® packages that you had previously installed. ``` apt purge mongodb-org* ``` -3. Remove MongoDB databases and log files. +3. Remove MongoDB® databases and log files. ``` rm -r /var/log/mongodb rm -r /var/lib/mongodb From 59d2102ad476671d34eb3e8945ec30eedb20289d Mon Sep 17 00:00:00 2001 From: SamyOubouaziz Date: Wed, 9 Oct 2024 15:49:49 +0200 Subject: [PATCH 09/10] fix(RDB): update --- managed-databases/mongodb/api-cli/backup-and-restore.mdx | 2 +- managed-databases/mongodb/concepts.mdx | 2 +- managed-databases/mongodb/how-to/connect-database-instance.mdx | 2 +- managed-databases/mongodb/how-to/create-a-database-instance.mdx | 2 +- managed-databases/mongodb/how-to/delete-a-database-instance.mdx | 2 +- managed-databases/mongodb/how-to/increase-volume.mdx | 2 +- managed-databases/mongodb/how-to/manage-snapshots.mdx | 2 +- managed-databases/mongodb/how-to/manage-users.mdx | 2 +- managed-databases/mongodb/quickstart.mdx | 2 +- managed-databases/mongodb/reference-content/autohealing.mdx | 2 +- managed-databases/mongodb/troubleshooting/disk-full.mdx | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/managed-databases/mongodb/api-cli/backup-and-restore.mdx b/managed-databases/mongodb/api-cli/backup-and-restore.mdx index 7414fd18f2..3fea15d63c 100644 --- a/managed-databases/mongodb/api-cli/backup-and-restore.mdx +++ b/managed-databases/mongodb/api-cli/backup-and-restore.mdx @@ -12,7 +12,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. Managed MongoDB® Databases provide fully-managed document Database Instances, with a MongoDB®-compatible API layer over a PostgreSQL engine to store and retrieve data. diff --git a/managed-databases/mongodb/concepts.mdx b/managed-databases/mongodb/concepts.mdx index 70fac83803..afde2e5cd7 100644 --- a/managed-databases/mongodb/concepts.mdx +++ b/managed-databases/mongodb/concepts.mdx @@ -11,7 +11,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. ## Block Storage Low Latency diff --git a/managed-databases/mongodb/how-to/connect-database-instance.mdx b/managed-databases/mongodb/how-to/connect-database-instance.mdx index f0e2a0af04..1c17484b49 100644 --- a/managed-databases/mongodb/how-to/connect-database-instance.mdx +++ b/managed-databases/mongodb/how-to/connect-database-instance.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. diff --git a/managed-databases/mongodb/how-to/create-a-database-instance.mdx b/managed-databases/mongodb/how-to/create-a-database-instance.mdx index 4fb77925c9..8d9fdcc0d0 100644 --- a/managed-databases/mongodb/how-to/create-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/create-a-database-instance.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. Managed MongoDB® Databases provide fully-managed document Database Instances, with MongoDB® as a database engine. diff --git a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx index 9f81120983..fa0bbadb5c 100644 --- a/managed-databases/mongodb/how-to/delete-a-database-instance.mdx +++ b/managed-databases/mongodb/how-to/delete-a-database-instance.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. diff --git a/managed-databases/mongodb/how-to/increase-volume.mdx b/managed-databases/mongodb/how-to/increase-volume.mdx index d63581d485..060bf42464 100644 --- a/managed-databases/mongodb/how-to/increase-volume.mdx +++ b/managed-databases/mongodb/how-to/increase-volume.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. You can increase the Block Storage volume of your MongoDB® Database Instance in the Scaleway console anytime. diff --git a/managed-databases/mongodb/how-to/manage-snapshots.mdx b/managed-databases/mongodb/how-to/manage-snapshots.mdx index c84de655d7..fdc37b476a 100644 --- a/managed-databases/mongodb/how-to/manage-snapshots.mdx +++ b/managed-databases/mongodb/how-to/manage-snapshots.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. [Snapshots](/managed-databases/mongodb/how-to/manage-snapshots/) allow you to restore data in a new Database Instance. diff --git a/managed-databases/mongodb/how-to/manage-users.mdx b/managed-databases/mongodb/how-to/manage-users.mdx index a115ed744f..63fd1f9403 100644 --- a/managed-databases/mongodb/how-to/manage-users.mdx +++ b/managed-databases/mongodb/how-to/manage-users.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. Users can connect to a database and access its data. diff --git a/managed-databases/mongodb/quickstart.mdx b/managed-databases/mongodb/quickstart.mdx index a3d0560923..6b63a2469a 100644 --- a/managed-databases/mongodb/quickstart.mdx +++ b/managed-databases/mongodb/quickstart.mdx @@ -14,7 +14,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. Managed MongoDB® Databases provide fully-managed document Database Instances, with MongoDB® as a database engine. diff --git a/managed-databases/mongodb/reference-content/autohealing.mdx b/managed-databases/mongodb/reference-content/autohealing.mdx index 5f7ce9cf96..759e9f990e 100644 --- a/managed-databases/mongodb/reference-content/autohealing.mdx +++ b/managed-databases/mongodb/reference-content/autohealing.mdx @@ -11,7 +11,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. At Scaleway, High Availability (HA) Database Instances are continuously monitored and benefit from the autohealing feature. diff --git a/managed-databases/mongodb/troubleshooting/disk-full.mdx b/managed-databases/mongodb/troubleshooting/disk-full.mdx index 42473b08eb..c9de3e6a00 100644 --- a/managed-databases/mongodb/troubleshooting/disk-full.mdx +++ b/managed-databases/mongodb/troubleshooting/disk-full.mdx @@ -15,7 +15,7 @@ categories: --- -Managed MongoDB® is currently in closed private beta and is not accessible to users yet. +Managed MongoDB® is currently in closed beta, and is not open for registration yet. Whenever your Database Instance volume is close to reaching full capacity, your Database Instance switches to `disk_full` mode. From 199d29c50f0c9a0b79deb93e8ba632ce1f0b2878 Mon Sep 17 00:00:00 2001 From: SamyOubouaziz Date: Wed, 9 Oct 2024 16:53:05 +0200 Subject: [PATCH 10/10] fix(RDB): update --- .../mutli-node-rocket-chat-community-private-network/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx index b35176c755..6e50328754 100644 --- a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx +++ b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx @@ -101,7 +101,7 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst ## Installing MongoDB -1. Log into your Mongo DB instance using SSH. +1. Log into your MongoDB instance using SSH. 2. Update the APT repositories and upgrade the software already installed on the version to the latest version available in Ubuntu's official repositories: ``` root@mogodb-instance:~# apt update && apt upgrade -y