Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
1
00:00:01,210 --> 00:00:02,670
In this lesson,
we're going to talk
2
00:00:02,670 --> 00:00:04,860
about how connections
are made to an Oracle
3
00:00:04,860 --> 00:00:07,170
database via a network.
4
00:00:07,170 --> 00:00:11,700
So that's all about how Oracle
does its networking component.
5
00:00:11,700 --> 00:00:13,890
And Oracle's
networking stack that's
6
00:00:13,890 --> 00:00:17,720
included with its database
product is called Oracle Net.
7
00:00:17,720 --> 00:00:19,470
Now it's been called
many different things
8
00:00:19,470 --> 00:00:22,770
through previous versions,
such as SQL Net, Net 8,
9
00:00:22,770 --> 00:00:25,410
and so on and so
forth, but Oracle Net
10
00:00:25,410 --> 00:00:28,690
is the name given
to it at this point.
11
00:00:28,690 --> 00:00:30,870
And Oracle Net is
really an amazing thing
12
00:00:30,870 --> 00:00:35,340
because it allows a user
to connect to a database
13
00:00:35,340 --> 00:00:38,250
irrespective of the
operating systems involved.
14
00:00:38,250 --> 00:00:40,500
So I can have a
client machine running
15
00:00:40,500 --> 00:00:44,280
SQL Developer on Windows and
still connect to an Oracle
16
00:00:44,280 --> 00:00:46,260
database running on Linux.
17
00:00:46,260 --> 00:00:48,660
And there's no network
problems there because
18
00:00:48,660 --> 00:00:50,550
of Oracle's networking stack.
19
00:00:50,550 --> 00:00:52,830
And this has been in
place for a long time
20
00:00:52,830 --> 00:00:55,530
and was really one of the
first commercial databases
21
00:00:55,530 --> 00:00:58,200
to really make use
of this technology.
22
00:00:58,200 --> 00:01:02,940
And truthfully, the connection
information involved and setup
23
00:01:02,940 --> 00:01:04,540
are really pretty quite simple.
24
00:01:04,540 --> 00:01:07,530
There's not a lot to
administer Oracle networking.
25
00:01:07,530 --> 00:01:09,300
It really just
requires the knowledge
26
00:01:09,300 --> 00:01:11,370
of a couple of
different subjects.
27
00:01:11,370 --> 00:01:15,000
So a database can participate
in different network models.
28
00:01:15,000 --> 00:01:17,970
So we can have a
client-server model,
29
00:01:17,970 --> 00:01:19,650
and that's a direct connection.
30
00:01:19,650 --> 00:01:24,000
So that occurs when a user,
say running SQL Developer,
31
00:01:24,000 --> 00:01:27,660
makes a direct connection to
a database, client to server.
32
00:01:27,660 --> 00:01:29,910
This can also be
certain applications
33
00:01:29,910 --> 00:01:31,870
that make those
types of connections.
34
00:01:31,870 --> 00:01:35,940
So we might build and deploy
an application to our users.
35
00:01:35,940 --> 00:01:39,120
And in that application
is connection information
36
00:01:39,120 --> 00:01:41,850
on how to connect directly
to an Oracle database.
37
00:01:41,850 --> 00:01:45,310
So it's a direct connection,
client to server.
38
00:01:45,310 --> 00:01:47,850
We also have the network model
that's really more popular
39
00:01:47,850 --> 00:01:51,810
today that most DBAs would
be more likely to see,
40
00:01:51,810 --> 00:01:54,570
and that's a multi-tier
network model.
41
00:01:54,570 --> 00:01:57,030
And that's connection
through another server.
42
00:01:57,030 --> 00:01:59,460
So that would be a situation
where a user connects
43
00:01:59,460 --> 00:02:03,480
into a web server and then maybe
an application server and then
44
00:02:03,480 --> 00:02:04,570
a database server.
45
00:02:04,570 --> 00:02:08,910
So there's multi-tiers
involved, multiple tiers.
46
00:02:08,910 --> 00:02:13,980
Oracle networking also supports
two major server architectures
47
00:02:13,980 --> 00:02:16,740
for the Oracle database.
48
00:02:16,740 --> 00:02:19,250
The first is called
dedicated server.
49
00:02:19,250 --> 00:02:22,460
Dedicated server setup,
a connecting user
50
00:02:22,460 --> 00:02:26,480
is given a dedicated server
process when they connect.
51
00:02:26,480 --> 00:02:29,720
So if we have a database
and then a user,
52
00:02:29,720 --> 00:02:32,930
we have a process running on
the database called a listener.
53
00:02:32,930 --> 00:02:35,390
And the listener is
only there and has
54
00:02:35,390 --> 00:02:38,870
only the job of listening
for incoming connections.
55
00:02:38,870 --> 00:02:41,090
So Kara, when she
makes an attempt
56
00:02:41,090 --> 00:02:43,370
to connect to a
database, she's actually
57
00:02:43,370 --> 00:02:45,170
contacting the listener first.
58
00:02:45,170 --> 00:02:46,820
If the listener
isn't running, she
59
00:02:46,820 --> 00:02:49,920
won't be able to make a network
connection to the database.
60
00:02:49,920 --> 00:02:52,790
Once her user name and
password are negotiated
61
00:02:52,790 --> 00:02:55,250
and she is
authenticated, then she's
62
00:02:55,250 --> 00:02:58,190
given her own dedicated
server process
63
00:02:58,190 --> 00:03:00,270
to do work on the database.
64
00:03:00,270 --> 00:03:02,060
So, on the Linux
operating system,
65
00:03:02,060 --> 00:03:05,600
we would actually see that
as an individual process
66
00:03:05,600 --> 00:03:07,430
out on the operating system.
67
00:03:07,430 --> 00:03:11,360
And so all work that Kara does
in her session to the database
68
00:03:11,360 --> 00:03:13,740
occurs through that pipe.
69
00:03:13,740 --> 00:03:16,530
Oracle also supports what's
called shared server.
70
00:03:16,530 --> 00:03:18,810
And this has been called a
number of different things
71
00:03:18,810 --> 00:03:20,310
through past versions as well.
72
00:03:20,310 --> 00:03:23,820
Multi-threaded server was
one of its previous names.
73
00:03:23,820 --> 00:03:26,850
And in a shared server
model, the connecting user
74
00:03:26,850 --> 00:03:29,910
is given a shared
server process.
75
00:03:29,910 --> 00:03:31,500
So it looks something like this.
76
00:03:31,500 --> 00:03:33,540
We have a database
here, and then we
77
00:03:33,540 --> 00:03:35,880
have a process
called a dispatcher.
78
00:03:35,880 --> 00:03:37,590
And the dispatcher's
job is really
79
00:03:37,590 --> 00:03:40,980
to play traffic light
for incoming connections.
80
00:03:40,980 --> 00:03:43,200
So between this dispatcher
and the database,
81
00:03:43,200 --> 00:03:45,480
we have what's
called shared servers
82
00:03:45,480 --> 00:03:47,830
or shared server processes.
83
00:03:47,830 --> 00:03:50,580
So these are dedicated
connections into the database.
84
00:03:50,580 --> 00:03:54,550
So we can think of them as
pipelines into the database.
85
00:03:54,550 --> 00:03:58,310
But when a user tries to
connect to this database,
86
00:03:58,310 --> 00:04:00,830
first, the user has to
go through a dispatcher.
87
00:04:00,830 --> 00:04:04,700
And the dispatcher will decide
which shared server process
88
00:04:04,700 --> 00:04:06,020
Kara gets to use.
89
00:04:06,020 --> 00:04:09,230
So she may get this
shared server process.
90
00:04:09,230 --> 00:04:12,560
As long as she's doing work
on that shared server process,
91
00:04:12,560 --> 00:04:15,860
it acts almost as a
dedicated server process.
92
00:04:15,860 --> 00:04:18,020
But the moment that
she becomes idle,
93
00:04:18,020 --> 00:04:20,960
that shared server becomes
available for someone else.
94
00:04:20,960 --> 00:04:23,060
So Scott, if he
were to connect in,
95
00:04:23,060 --> 00:04:25,920
would get a different
shared server process.
96
00:04:25,920 --> 00:04:27,650
And no matter how
many connections
97
00:04:27,650 --> 00:04:31,160
are incoming to the database,
they go through the dispatcher,
98
00:04:31,160 --> 00:04:34,670
and they all have to negotiate
through those shared server
99
00:04:34,670 --> 00:04:36,330
processes.
8177
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.