クイックスタート: データベースを作成して接続する
MongoDB 互換の Firestore データベースを作成し、mongosh
ツールで接続する方法について学びます。
始める前に
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Make sure that you have the following role or roles on the project: roles/datastore.owner
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
[IAM] に移動 - プロジェクトを選択します。
- [ アクセスを許可] をクリックします。
-
[新しいプリンシパル] フィールドに、ユーザー ID を入力します。 これは通常、Google アカウントのメールアドレスです。
- [ロールを選択] リストでロールを選択します。
- 追加のロールを付与するには、 [別のロールを追加] をクリックして各ロールを追加します。
- [保存] をクリックします。
-
mongosh
ツールをインストールします。
MongoDB 互換の Firestore データベースを作成し、接続文字列を取得する
Google Cloud コンソールで、新しい Firestore Enterprise エディション データベースを作成します。MongoDB 互換の Firestore を使用するには、Firestore Enterprise エディションが必要です。
-
Google Cloud コンソールで [データベース] ページに移動します。
- [Firestore データベースを作成する] をクリックします。
- データベース ID を入力します。
- Enterprise Edition を選択します。
- データベースのロケーションを選択します。
[データベースを作成] をクリックします。
データベースの初期化が完了すると、コンソールでデータベースの Firestore Studio が開きます。
-
[外部 MongoDB ツールを使用して Firestore に接続する] セクションで、接続文字列をコピーします。
接続文字列は、データベースの UID(システム生成)とデータベースの場所によって異なります。
UID.LOCATION.firestore.goog
SCRAM 認証用のユーザーを作成する
Google Cloud コンソールで、新しいデータベース ユーザーを作成し、ユーザーに Identity and Access Management 権限を割り当てます。
-
Google Cloud コンソールで [データベース] ページに移動します。
- データベースのリストからデータベースを選択します。
- ナビゲーション メニューで [Auth] をクリックします。
- [ユーザーを追加] をクリックします。
- ユーザー名を入力します。
- ユーザーの Identity and Access Management ロールを選択します。
- [作成] をクリックします。データベースはユーザーを作成し、ユーザーの生成されたパスワードを表示します。このパスワードをコピーして保存します。後でこのパスワードを取得することはできません。
mongosh
を使用して接続する
接続文字列、ユーザー名、パスワードを使用してデータベースに接続し、次の構成オプションを使用してローカルで mongosh
を実行します。
mongosh 'mongodb://USERNAME:PASSWORD@CONNECTION_STRING:443/DATABASE_ID?loadBalanced=true&authMechanism=SCRAM-SHA-256&authMechanismProperties=ENVIRONMENT:gcp,TOKEN_RESOURCE:FIRESTORE&tls=true&retryWrites=false'
次のように置き換えます。
- USERNAME: 作成したデータベース ユーザーの名前。
- PASSWORD: 作成したデータベース ユーザーの生成されたパスワード。
- CONNECTION_STRING: データベース接続文字列。
- DATABASE_ID: データベース ID
接続すると、次のようなデータを作成、読み取ることができます。
db.pages.insertOne({ message: "Hello World!"}) db.pages.find({}) exit
クリーンアップ
このページで使用したリソースをクリーンアップするには、データベース ユーザーを削除してデータベースを削除します。
データベース ユーザーを削除する
データベース ユーザーを削除して、ユーザーと割り当てられた Identity and Access Management 権限を削除します。
-
Google Cloud コンソールで [データベース] ページに移動します。
- データベースのリストからデータベースを選択します。
- ナビゲーション メニューで [Auth] をクリックします。
- 削除するユーザーの [アクション] 列で [ アクション] をクリックします。[ユーザーを削除] をクリックします。ダイアログが表示されます。
- 削除を確定するには、[削除] をクリックします。
- ダイアログに IAM ページへのリンクが表示されます。リンクをクリックして、データベース ユーザーに割り当てられた権限を削除します。
-
アクセス権を取り消すプリンシパルを含む行を探します。その行の [
プリンシパルを編集します] をクリックします。作成したデータベース ユーザーのプリンシパルには、次の命名形式を使用します。
principal://firestore.googleapis.com/projects/PROJECT_NUMBER/name/databases/DATABASE_ID/userCreds/USER_ID
- 取り消すロールの [削除] ボタンをクリックし、[保存] をクリックします。
データベースの削除
データベースを削除するには、次の操作を行います。
-
Google Cloud コンソールで [データベース] ページに移動します。
- 削除するデータベースの [アクション] 列で、 [さらに表示] をクリックします。[削除] をクリックします。ダイアログが表示されます。
[データベースを削除しますか?] ダイアログのテキスト フィールドにデータベース ID を入力して、削除を確定します。[削除] をクリックします。オペレーションの成功または失敗がコンソールに表示されます。
オペレーションが失敗した場合は、データベースの詳細を表示し、削除保護が無効になっていることを確認します。削除保護を無効にするには、削除保護の設定を更新するをご覧ください。