﻿1
00:00:01,160 --> 00:00:04,580
‫All right, as a final step in this section,

2
00:00:04,580 --> 00:00:07,880
‫let's now connect our remote hosted database

3
00:00:07,880 --> 00:00:11,603
‫with our Compass app and also with the Mongo shell.

4
00:00:13,040 --> 00:00:15,030
‫So back here in the Atlas app,

5
00:00:15,030 --> 00:00:17,890
‫let's open up the Connect assistant

6
00:00:17,890 --> 00:00:20,220
‫by clicking this button here,

7
00:00:20,220 --> 00:00:22,320
‫and so now before we can actually connect,

8
00:00:22,320 --> 00:00:24,000
‫we need to do a couple of things.

9
00:00:24,000 --> 00:00:27,023
‫First up, we need to add our current IP address,

10
00:00:28,210 --> 00:00:31,540
‫just like this, so that our computer is actually able

11
00:00:31,540 --> 00:00:35,310
‫to connect to this cluster, okay?

12
00:00:35,310 --> 00:00:38,150
‫Next up, let's create a username.

13
00:00:38,150 --> 00:00:39,920
‫And I'm calling mine simply Jonas,

14
00:00:39,920 --> 00:00:43,510
‫and then a password, which I'm gonna autogenerate here.

15
00:00:43,510 --> 00:00:44,930
‫And I'm actually showing it to you now

16
00:00:44,930 --> 00:00:48,900
‫because I need to copy it, but don't try to connect

17
00:00:48,900 --> 00:00:51,550
‫to my database using this password,

18
00:00:51,550 --> 00:00:53,040
‫because of course I'm gonna change it

19
00:00:53,040 --> 00:00:54,600
‫by the end of the course.

20
00:00:54,600 --> 00:00:56,750
‫Now where am I gonna save it?

21
00:00:56,750 --> 00:00:59,400
‫Well, let's go to our application

22
00:00:59,400 --> 00:01:01,860
‫and open up our config file.

23
00:01:01,860 --> 00:01:03,330
‫And so this is what we created

24
00:01:03,330 --> 00:01:05,343
‫this file for in the first place.

25
00:01:06,570 --> 00:01:09,720
‫Right, so remember how we said that each configuration,

26
00:01:09,720 --> 00:01:11,980
‫we were gonna save into this file,

27
00:01:11,980 --> 00:01:13,670
‫and so the database password

28
00:01:13,670 --> 00:01:15,763
‫is actually a perfect example for that.

29
00:01:18,430 --> 00:01:19,423
‫So database,

30
00:01:21,170 --> 00:01:22,870
‫password and I'm setting it

31
00:01:22,870 --> 00:01:25,120
‫to the password that we just created.

32
00:01:25,120 --> 00:01:27,890
‫And later, when we will then connect our application

33
00:01:27,890 --> 00:01:30,310
‫to the database, we will then of course use

34
00:01:30,310 --> 00:01:34,663
‫this environment variable to create that connection, okay.

35
00:01:36,620 --> 00:01:39,710
‫So, let's now create the user actually.

36
00:01:39,710 --> 00:01:42,120
‫And now next up, all we have to do is to choose

37
00:01:42,120 --> 00:01:44,470
‫a connection method and we're gonna start

38
00:01:44,470 --> 00:01:47,710
‫with the MongoDB Compass application.

39
00:01:47,710 --> 00:01:50,550
‫Okay, so we already have Compass,

40
00:01:50,550 --> 00:01:54,670
‫and I'm sure we have a 1.12 or later

41
00:01:54,670 --> 00:01:59,090
‫and so let's now go ahead and copy this connection string.

42
00:01:59,090 --> 00:02:02,143
‫Okay, and now open up Compass.

43
00:02:02,980 --> 00:02:06,050
‫Then up here, in the menu, hit connect here.

44
00:02:08,140 --> 00:02:10,977
‫Then it will take some time to open up this new window.

45
00:02:13,570 --> 00:02:16,440
‫But by the time it does, it will then have automatically

46
00:02:16,440 --> 00:02:19,440
‫detected that we have a MongoDB connection string

47
00:02:19,440 --> 00:02:21,780
‫in our clipboard, and so all we have to do

48
00:02:21,780 --> 00:02:24,810
‫is to hit yes here and it will then automatically

49
00:02:24,810 --> 00:02:27,250
‫fill all of these settings for us.

50
00:02:27,250 --> 00:02:31,200
‫So our hostname our username and all this other stuff.

51
00:02:31,200 --> 00:02:34,163
‫And so all we need is our password here.

52
00:02:35,400 --> 00:02:38,870
‫So I'm going back to that file, grab it from there,

53
00:02:38,870 --> 00:02:41,500
‫paste it here, and connect.

54
00:02:44,210 --> 00:02:46,810
‫And indeed, it did successfully connect,

55
00:02:46,810 --> 00:02:49,140
‫now it's loading our databases.

56
00:02:49,140 --> 00:02:52,370
‫And here we actually see the three database that

57
00:02:52,370 --> 00:02:55,500
‫already come pre-configured in this cluster.

58
00:02:55,500 --> 00:02:58,393
‫So let's create a new one called natours.

59
00:03:00,600 --> 00:03:03,470
‫And we also have to create a collection name right away,

60
00:03:03,470 --> 00:03:06,950
‫and I'm calling it, of course, tours.

61
00:03:06,950 --> 00:03:10,530
‫So create database and here we go.

62
00:03:10,530 --> 00:03:14,880
‫So open that up, and now open the tours collection.

63
00:03:14,880 --> 00:03:19,520
‫And now let's then finally insert our first document.

64
00:03:19,520 --> 00:03:22,543
‫Okay, so again, name,

65
00:03:23,780 --> 00:03:25,123
‫The Forest Hiker.

66
00:03:27,320 --> 00:03:29,710
‫The price, should be 297

67
00:03:31,270 --> 00:03:33,483
‫and I'm giving it a double number here,

68
00:03:34,530 --> 00:03:35,780
‫and I also want to create

69
00:03:38,520 --> 00:03:39,353
‫the rating,

70
00:03:40,310 --> 00:03:43,790
‫4.7, and also as a double.

71
00:03:43,790 --> 00:03:47,680
‫So insert, and so just like this we have our first tour

72
00:03:47,680 --> 00:03:50,000
‫created on our remote database.

73
00:03:50,000 --> 00:03:51,840
‫Great, that's awesome.

74
00:03:51,840 --> 00:03:53,940
‫Let's now go back actually to Chrome

75
00:03:55,330 --> 00:03:59,890
‫and take a look at our cluster here,

76
00:03:59,890 --> 00:04:03,730
‫so when I open up this cluster by clicking here,

77
00:04:03,730 --> 00:04:06,140
‫then it's gonna load our collections up here

78
00:04:07,970 --> 00:04:09,640
‫and so give it a second.

79
00:04:09,640 --> 00:04:13,220
‫And so now, we actually have our database name,

80
00:04:13,220 --> 00:04:16,170
‫our collection name, and the tour that we just created

81
00:04:16,170 --> 00:04:18,450
‫in Compass, and that's awesome.

82
00:04:18,450 --> 00:04:21,850
‫So it means that our connection is really working.

83
00:04:21,850 --> 00:04:24,400
‫Now another thing that we can and should do,

84
00:04:24,400 --> 00:04:28,250
‫is to allow access from everywhere to this cluster.

85
00:04:28,250 --> 00:04:30,810
‫So remember how right in the beginning of this video

86
00:04:30,810 --> 00:04:33,988
‫we whitelisted our IP in order to grant access

87
00:04:33,988 --> 00:04:37,400
‫to our current computer to this cluster.

88
00:04:37,400 --> 00:04:40,290
‫But if you happen to switch computers during development,

89
00:04:40,290 --> 00:04:43,200
‫you might need to whitelist the IP of that computer as well,

90
00:04:43,200 --> 00:04:46,060
‫because otherwise you might not be able to connect.

91
00:04:46,060 --> 00:04:48,900
‫But since we're not really dealing with sensitive data here

92
00:04:48,900 --> 00:04:51,950
‫anyway, we can simply whitelist every single IP

93
00:04:51,950 --> 00:04:55,060
‫in the world and allow access from everywhere.

94
00:04:55,060 --> 00:04:57,840
‫Now of course, we will always still need our username

95
00:04:57,840 --> 00:05:00,350
‫and our password, but this way we don't need

96
00:05:00,350 --> 00:05:03,010
‫to keep adding our computers to whitelist.

97
00:05:03,010 --> 00:05:06,370
‫We will simply whitelist all IPs that exist.

98
00:05:06,370 --> 00:05:10,720
‫Okay, so click over here on access,

99
00:05:10,720 --> 00:05:14,410
‫or actually it's not here, so let's open up

100
00:05:14,410 --> 00:05:18,430
‫this cluster again, and here I think it's on security

101
00:05:18,430 --> 00:05:20,730
‫and IP whitelist, and now here

102
00:05:20,730 --> 00:05:24,010
‫on the right side click on add IP address,

103
00:05:24,010 --> 00:05:26,573
‫and now I wanna allow access from anywhere.

104
00:05:27,520 --> 00:05:30,460
‫Confirm, and that's it.

105
00:05:30,460 --> 00:05:32,840
‫Okay, and now just as a last step,

106
00:05:32,840 --> 00:05:37,080
‫let's also connect our Mongo shell to this cluster.

107
00:05:37,080 --> 00:05:39,740
‫So let's go back to clusters here,

108
00:05:39,740 --> 00:05:42,380
‫open up again the connect assistant

109
00:05:43,333 --> 00:05:45,550
‫and then connect with Mongo shell.

110
00:05:45,550 --> 00:05:48,210
‫Now we already have it installed here, and so now

111
00:05:48,210 --> 00:05:51,463
‫all we need to do is to copy this connection string.

112
00:05:52,390 --> 00:05:55,099
‫So copied it, open up the terminal,

113
00:05:55,099 --> 00:05:58,463
‫and here we actually still have the Mongo shell running.

114
00:05:59,530 --> 00:06:01,790
‫So let's quit that very quick,

115
00:06:01,790 --> 00:06:03,860
‫because remember this is still connected

116
00:06:03,860 --> 00:06:06,810
‫to our locally running Mongo server.

117
00:06:06,810 --> 00:06:08,590
‫But now, we no longer want that,

118
00:06:08,590 --> 00:06:11,930
‫we want to connect to our hosted database.

119
00:06:11,930 --> 00:06:14,350
‫And so let's copy our string here,

120
00:06:14,350 --> 00:06:18,690
‫hit return, and it will now probably ask us for our password

121
00:06:18,690 --> 00:06:22,360
‫and indeed it does and that is in vs code

122
00:06:22,360 --> 00:06:25,743
‫which I have just here, so copy it,

123
00:06:27,350 --> 00:06:30,470
‫back to the terminal, paste it, hit return,

124
00:06:30,470 --> 00:06:32,463
‫and I think it's doing something here.

125
00:06:34,480 --> 00:06:36,950
‫And it looks like it worked.

126
00:06:36,950 --> 00:06:41,950
‫So, dbs remember, just to show all the database,

127
00:06:42,020 --> 00:06:44,403
‫and indeed here we have, natours.

128
00:06:45,250 --> 00:06:48,110
‫So great, we are connected.

129
00:06:48,110 --> 00:06:50,300
‫So let's say, use natours,

130
00:06:51,510 --> 00:06:53,640
‫and so we switched to db natours

131
00:06:54,880 --> 00:06:59,410
‫and now db.tours.find

132
00:06:59,410 --> 00:07:00,810
‫and here we have the documents

133
00:07:00,810 --> 00:07:03,950
‫that we just created before using Compass.

134
00:07:03,950 --> 00:07:07,760
‫Perfect, so now everything is really interconnected.

135
00:07:07,760 --> 00:07:11,030
‫We have the Mongo shell, and we have also Compass both

136
00:07:11,030 --> 00:07:15,060
‫connected to our remote database hosted on Atlas.

137
00:07:15,060 --> 00:07:17,630
‫And so like this, we are actually ready to move on

138
00:07:17,630 --> 00:07:20,270
‫to the next section, connect our database

139
00:07:20,270 --> 00:07:23,000
‫with our express application and then finally

140
00:07:23,000 --> 00:07:26,190
‫start working with the database in our application.

141
00:07:26,190 --> 00:07:28,550
‫So great job making it until this point,

142
00:07:28,550 --> 00:07:29,900
‫and I hope to see you soon.

