0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

mongoDBに接続

Posted at

mongodbを起動

mongodbを作成するときにユーザ認証を有りにする。

  • dockerの場合
version: "3"
services:
  db:
    build: .
    restart: always
    container_name: db-container
    hostname: db-server
    environment:
      - MONGO_DATA_DIR=/var/lib/mongodb
      - MONGO_LOG_DIR=/var/log/mongodb
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=example
      - MONGO_INITDB_DATABASE=app1
    volumes:
      - ./db:/var/lib/mongodb
    ports:
      - 27017:27017
    command: mongod

MONGO_INITDB_ROOT_USERNAMEとMONGO_INITDB_ROOT_PASSWORDを設定すれば認証有りになる。

このユーザはadminという認証dbに作成されスーパーユーザロールであるrootが与えられる。

mongodbに接続

mongodbに接続するにはmongodb compassで簡単に接続可能。

cliでする場合は、

#認証なしでとりあえず接続(接続後、db一覧等のコマンドを打っても認証が必要なコマンドですのでエラーが出ます。)
mongosh
#認証有りで接続。@の前にユーザ名を入れて、パスワードは対話形式で聞かれる。
mongosh mongodb://<ユーザ名>@localhost:27017/

認証なしでとりあえず接続してから、認証することも可能。

db.auth(”ユーザ名”,”パスワード”)コマンドでOK。

mongoshのコマンドはhelpでこんな感じで見れるので適宜確認。

またjsコマンドもOK。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?