오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

아래의 글을 정말 잘 읽어 보십시요..

중요한 내용들이고요.. 헷갈리지 않게요... 그럼 중간중간에 토를 좀 달아보겠습니다.

Introduction

One of the intriguing aspects of Cisco routers, especially for those new to routing, is how the router chooses which route is the best among those presented by routing protocols, manual configuration, and various other means. While route selection is much simpler than you might imagine, to understand it completely requires some knowledge about the way Cisco routers work.

Prerequisites

Requirements

There are no specific prerequisites for this document.

Components Used

This document is not restricted to specific software and hardware versions.

Conventions

For more information on document conventions, see the Cisco Technical Tips Conventions.

Processes Involved

There are three processes involved in building and maintaining the routing table in a Cisco router:

  • Various routing processes, which actually run a network (or routing) protocol, such as Enhanced Interior Gateway Routing Protocol (EIGRP), Border Gateway Protocol (BGP), Intermediate System-to-Intermediate System (IS-IS), and Open Shortest Path First (OSPF).

  • The routing table itself, which accepts information from the routing processes and also replies to requests for information from the forwarding process.

  • The forwarding process, which requests information from the routing table to make a packet forwarding decision.

Let's examine the interaction between the routing protocols and the routing table to understand how the routing table is built.

Building the Routing Table

라우팅 결정을 위해서는 총 3가지의 변수가 있습니다. 바로 administrative distance, metric, 그리고 prefix length죠... AD값에 정의는 바로 밑의 표에서 확인을 할수가 있습니다.

 

The main considerations while building the routing table are:

  • Administrative distance - This is the measure of trustworthiness of the source of the route. If a router learns about a destination from more than one routing protocol, administrative distance is compared and the preference is given to the routes with lower administrative distance. In other words, it is the beleivability of the source of the route.

  • Metrics - This is a measure used by the routing protocol to calculate the best path to a given destination, if it learns multiple paths to the same destination. Each routing protocol uses a different metric.

  • Prefix length

As each routing process receives updates and other information, it chooses the best path to any given destination and attempts to install this path into the routing table. For instance, if EIGRP learns of a path toward 10.1.1.0/24, and decides this particular path is the best EIGRP path to this destination, it tries to install the path it has learned into the routing table.

The router decides whether or not to install the routes presented by the routing processes based on the administrative distance of the route in question. If this path has the lowest administrative distance to this destination (when compared to the other routes in the table), it's installed in the routing table. If this route isn't the route with the best administrative distance, then the route is rejected.

To understand this better, let's look at an example. Assume a router has four routing processes running: EIGRP, OSPF, RIP, and IGRP. Now, all four of these processes have learned of various routes to the 192.168.24.0/24 network, and each has chosen its best path to that network through its internal metrics and processes.

Each of these four processes attempts to install their route toward 192.168.24.0/24 into the routing table. The routing processes are each assigned an administrative distance, which is used to decide which route to install.

Default Administrative Distances

Connected

0

Static

1

eBGP

20

EIGRP (internal)

90

IGRP

100

OSPF

110

IS-IS

115

RIP

120

EIGRP (external)

170

iBGP

200

EIGRP summary route

5

Since the internal EIGRP route has the best administrative distance (the smaller the administrative distance, the higher the preference), it's installed in the routing table.

Backup Routes

What do the other protocols, RIP, IGRP, and OSPF, do with the routes that weren't installed? What if the most preferred route, learned from EIGRP, fails? Cisco IOS® Software uses two approaches to solve this problem: The first is to have each routing process attempt to install its best routes periodically. If the most preferred route fails, the next best route (according to administrative distance) succeeds on the next attempt. The other solution is for the routing protocol that failed to install its route in the table to hang on to the route, and tell the routing table process to report if the best path fails.

For protocols that don't have their own routing information tables, such as IGRP, the first method is used. Every time IGRP receives an update about a route, it attempts to install the updated information in the routing table. If there's already a route to this same destination in the routing table, the installation attempt fails.

For protocols that have their own database of routing information, such as EIGRP, IS-IS, OSPF, BGP, and RIP, a backup route is registered when the initial attempt to install the route fails. If the route installed in the routing table fails for some reason, the routing tabel maintenance process calls each routing protocol process that has registered a backup route, and asks them to reinstall the route in the routing table. If there are multiple protocols with registered backup routes, the preferred route is chosen based on administrative distance.

Adjusting the Administrative Distance

밑의 예에서 보듯이 ip route 1.1.1.0 255.255.255.0 2.2.2.1 200 이런식으로 ad값을 조정할수가 있습니다.

 

The default administrative distance might not always be right for your network; you may want to adjust them so that RIP routes are preferred over IGRP routes, for instance. Before explaining how to adjust the administrative distances, we need to look at the implications of changing the administrative distance.

Changing the administrative distance on routing protocols can be very dangerous! Changing the default distances can actually lead to routing loops and other oddities in your network. We recommend you change administrative distance with caution, and only after you have thought through what you want to achieve, and all the consequences of your actions.

For entire protocols, changing the distance is relatively easy; simply configure the distance using the distance command in the routing process subconfiguration mode. You can also change the distance for routes learned from one source only in some protocols, and you can change the distance on just some routes.

For static routes, you can change the distance of each route by entering a distance after the ip route command:

ip route network subnet mask next hop distance

You can't change the administrative distance for all the static routes at once.

How Metrics Determine the Route Selection Process

metric은 이미 AD값에 의해서 routing table안에서 두개의 동등한 path가 존제할때 metric에 의해서 best path를 찾는 것입니다.

 

Routes are chosen and built in the routing table based on the routing protocol's administrative distance. The routes learned from the routing protocol with the lowest administrative distance are installed in the routing table. If there are multiple paths to the same destination from a single routing protocol, then the multiple paths would have the same administrative distance and the best path is selected based on the metrics. Metrics are values associated with specific routes, ranking them from most preferred to least preferred. The parameters used to determine the metrics differ for different routing protocols. The path with the lowest metric is selected as the optimal path and installed in the routing table. If there are multiple paths to the same destination with equal metrics, load balancing is done on these equal cost paths. For more information on load balancing see How Does Load Balancing Work?

Prefix Lengths

이부분이 정말 재미있죠... 라우터안에 4개의 라우팅 프로세스가 돌구 있습니다. 그리고 서로다른 prefix의 route들을 여러 라우팅 프로세스에 의해서 받았습니다. 그럼 어떻게 저것들에 대한 포워딩 결정을 하게 될까요?

 

Let's look at another scenario to see how the router handles another common situation: varying prefix lengths. Assume, again, that a router has four routing processes running on it, and each process has received these routes:

  • EIGRP (internal): 192.168.32.0/26

  • RIP: 192.168.32.0/24

  • OSPF: 192.168.32.0/19

Which of these routes will be installed in the routing table? Since EIGRP internal routes have the best administrative distance, it's tempting to assume the first one will be installed. However, since each of these routes has a different prefix length (subnet mask), they're considered different destinations, and they will all be installed in the routing table.

Let's see how the forwarding engine uses the information from the routing table to make forwarding decisions.

Making Forwarding Decisions

예제는 192.168.32.1로 향하는 패킷이 라우터에 도착했을때 어떤놈을 next hop으로 선정할것이냐 하는문제입니다. 여기에서 유명한 longest prefix가 나오는데요... 자 빠져봅시다!

답은 10.1.1.1 입니다. 이유는.... 첫째... 192.168.32.1이 속한 subnet이 어디인가 하는거죠... 이부분을 가장 먼저 생각해야 합니다. 그러면 D,R,O 다 포함이 되지만... longest prefix가 우선시 되므로 D가 선정이 됩니다. 고로 eigrp에서 받은 route가 선정이 됩니다. 만약에 192.168.32.100으로 향하는놈이라면 /26은 탈락이 됩니다. subnet range에서 탈락을 하고 마는거죠... 그러면 그다음엔 longest prefix가 우선시 되므로 /24 즉 R이 선정이 됩니다.

 

Let's look at the three routes we just installed in the routing table, and see how they look on the router.

router# show ip route
     ....
     D   192.168.32.0/26 [90/25789217] via 10.1.1.1
     R   192.168.32.0/24 [120/4] via 10.1.1.2
     O   192.168.32.0/19 [110/229840] via 10.1.1.3
     ....

If a packet arrives on a router interface destined for 192.168.32.1, which route would the router choose? It depends on the prefix length, or the number of bits set in the subnet mask. Longer prefixes are always preferred over shorter ones when forwarding a packet.

In this case, a packet destined to 192.168.32.1 is directed toward 10.1.1.1, because 192.168.32.1 falls within the 192.168.32.0/26 network (192.168.32.0 to 192.168.32.63). It also falls within the other two routes available, but the 192.168.32.0/26 has the longest prefix within the routing table (26 bits verses 24 or 19 bits).

Likewise, if a packet destined for 192.168.32.100 arrives on one of the router's interfaces, it's forwarded to 10.1.1.2, because 192.168.32.100 doesn't fall within 192.168.32.0/26 (192.168.32.0 through 192.168.32.63), but it does fall within the 192.168.32.0/24 destination (192.168.32.0 through 192.168.32.255). Again, it also falls into the range covered by 192.168.32.0/19, but 192.168.32.0/24 has a longer prefix length.

IP Classless

자 오늘의 주인공 ip classless입니다. 중요한 말이 나오죠... 이 명령어는 라우팅과 포워딩 프로세스와 헷갈리는데.. 사실  ip classless는 포워딩 프로세스에만 관여를 하는거지 라우팅에는 전혀 상관이 없습니다. 말인즉.. 우리가 rip igrp는 classful이고 rip v2 eigrp ospf isis등은 classless하다고 했죠? 이건 우리가 아는대로 돌아가구.. 이거랑은 전혀 상관없는 말이라는거죠...

자 no ip classless가 설정이 되었다고 하지요.. 라우터는 supernets으로 패킷을 포워딩 하지 않습니다. 그리고 Note 잘 읽어 보시구요... 내용은 supernet 또는 default route가 isis 또는 ospf로부터 기인된 거라면 no ip classless로 설정된건 무시된답니다.

자 다시 빠져보자면... 172.30.32.0/24네트웍은 172.30.32.0 부터 172.30.32.255를 포함하고 있습니다. 그리고 172.30.32.0/20네트웍은 172.30.32.0 부터 172.30.47.255 까지를 포함합니다. (이거 잘 이해하셔야 합니다.)

만약에 172.30.32.1은 longest prefix match로 10.1.1.1로 갑니다. 172.30.33.1은 10.1.1.2로 가구요 192.168.10.1은 10.1.1.3으로 갑니다. 하지만 172.30.254.1은 drop되버립니다. 이게 골때리죠.... 분명 우리가 의도한것은 10.1.1.3으로 가야되는데... 이게 바로 no ip classless의 설정의 행동으로 어떻게 되는지를 알수있는 방법입니다. 좀더 specific하지 않은 네트웍이 supernet안에 존재하지 않는다면... 그놈들은 drop되어버린다는거죠... 그럼 supernet은.. 어떤의미인가.. 하면 하나의 domain이라고 생각을 해도 무관합니다. 그리고 그 네트웍은 유일하기 때문에 그 아래에서 나오는 그림과 같이 다른쪽에 10.x.x.x 대역은 없다고 생각을 합니다. 내가 이미 10.x.x.x 대역의 supernet이기 때문이죠......  

 

Where the ip classless configuration command falls within the routing and forwarding processes is often confusing. In reality, IP classless only affects the operation of the forwarding processes in IOS; it doesn't affect the way the routing table is built. If IP classless isn't configured (using the no ip classless command), the router won't forward packets to supernets. As an example, let's again place three routes in the routing table and route packets through the router.

Note: If the supernet or default route is learned via IS-IS or OSPF, the no ip classless configuration command is ignored. In this case, packet switching behavior works as though ip classless were configured.

router# show ip route
....
     172.30.0.0/16 is variably  subnetted, 2 subnets, 2 masks
D        172.30.32.0/20 [90/4879540] via  10.1.1.2
D       172.30.32.0/24  [90/25789217] via 10.1.1.1
S*   0.0.0.0/0 [1/0] via 10.1.1.3  

Remembering that the 172.30.32.0/24 network includes the addresses 172.30.32.0 through 172.30.32.255, and the 172.30.32.0/20 network includes the addresses 172.30.32.0 through 172.30.47.255, we can then try switching three packets through this routing table and see what the results are.

  • A packet destined to 172.30.32.1 is forwarded to 10.1.1.1, since this is the longest prefix match.

  • A packet destined to 172.30.33.1 is forwarded to 10.1.1.2, since this is the longest prefix match.

  • A packet destined to 192.168.10.1 is forwarded to 10.1.1.3; since this network doesn't exist in the routing table, this packet is forwarded to the default route.

  • A packet destined to 172.30.254.1 is dropped.

The surprising answer out of these four is the last packet, which is dropped. It's dropped because its destination, 172.30.254.1, is within a known major network, 172.30.0.0/16, but the router doesn't know about this particular subnet within that major network.

This is the essence of classful routing: If one part of a major network is known, but the subnet toward which the packet is destined within that major network is unknown, the packet is dropped.

The most confusing aspect of this rule is that the router only uses the default route if the destination major network doesn't exist in the routing table at all.

This can cause problems in a network where a remote site, with one connection back to the rest of the network, is running no routing protocols, as illustrated.

21a.gif

The remote site router is configured like this:

interface Serial 0
     ip address 10.1.2.2 255.255.255.0
   !
   interface Ethernet 0
     ip address 10.1.1.1 255.255.255.0
   !
   ip route 0.0.0.0 0.0.0.0 10.1.2.1
   !
   no ip classless

With this configuration, the hosts at the remote site can reach destinations on the Internet (through the 10.x.x.x cloud), but not destinations within the 10.x.x.x cloud, which is the corporate network. Because the remote router knows about some part of the 10.0.0.0/8 network, the two directly connected subnets, and no other subnet of 10.x.x.x, it assumes these other subnets don't exist and drops any packets destined for them. Traffic destined to the Internet, however, doesn't ever have a destination in the 10.x.x.x range of addresses, and is therefore correctly routed through the default route.

Configuring ip classless on the remote router resolves this problem by allowing the router to ignore the classful boundaries of the networks in its routing table and simply route to the longest prefix match it can find.

Summary

In summary, making a forwarding decision actually consists of three sets of processes: the routing protocols, the routing table, and the actual process which makes a forwarding decision and switches packets. These three sets of processes are illustrated, along with their relationship, below.

21b.gif

The longest prefix match always wins among the routes actually installed in the routing table, while the routing protocol with the lowest administrative distance always wins when installing routes into the routing table.

 

 

 

 

꼭 이해해 주셨으면 하구요.... 전 가끔씩 어떤이에게 라우팅이라는걸 가르쳐줄때... 첫마디로 이런 이야기를 합니다. 라우팅은.. destination routing이다.... 알았지~~ 라고.... 이건.. 라우팅의 기본입니다. 항상 목적지를 보고 어디로 갈지를 결정하는것이지요...

가끔 connected interface가 있음에도 불구하고 static routing을 넣는 사람들이 있는데... 기본이 바로서지 못해서인거 같다는 생각에 안타깝습니다...

원 소스는 http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a0080094823.shtml 입니다.

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

HTML에 사용되는 색 이름

* 브라우저 버전에 따라 대응여부가 다릅니다.
좌측 테이블은 색상이름을 HTML 소스에 입력한 것임.<td bgcolor='red'>
우측 테이블은 색상번호를 HTML 소스에 입력한 것임.<td bgcolor='#ff0000'>
브라우저에서 같은 색상으로 표시된다는 것을 확인하십시오.
[참고서적] "Web Safe Color 배색사전" (C.I.S./영진닷컴)


red (#FF0000)

red (#FF0000)

crimson (#DC143C)

crimson (#DC143C)

firebrick (#B22222)

firebrick (#B22222)

maroon (#800000)

maroon (#800000)

darkred (#8B0000)

darkred (#8B0000)

brown (#A52A2A)

brown (#A52A2A)

sienna (#A0522D)

sienna (#A0522D)

saddlebrown (#8B4513)

saddlebrown (#8B4513)

indianred (#CD5C5C)

indianred (#CD5C5C)

rosybrown (#BC8F8F)

rosybrown (#BC8F8F)

lightcoral (#F08080)

lightcoral (#F08080)

salmon (#FA8072)

salmon (#FA8072)

darksalmon (#E9967A)

darksalmon (#E9967A)

coral (#FF7F50)

coral (#FF7F50)

tomato (#FF6347)

tomato (#FF6347)

sandybrown (#F4A460)

sandybrown (#F4A460)

lightsalmon (#FFA07A)

lightsalmon (#FFA07A)

peru (#CD853F)

peru (#CD853F)

chocolate (#D2691E)

chocolate (#D2691E)

orangered (#FF4500)

orangered (#FF4500)

orange (#FFA500)

orange (#FFA500)

darkorange (#FF8C00)

darkorange (#FF8C00)

tan (#D2B48C)

tan (#D2B48C)

peachpuff (#FFDAB9)

peachpuff (#FFDAB9)

bisque (#FFE4C4)

bisque (#FFE4C4)

moccasin (#FFE4B5)

moccasin (#FFE4B5)

navajowhite (#FFDEAD)

navajowhite (#FFDEAD)

wheat (#F5DEB3)

wheat (#F5DEB3)

burlywood (#DEB887)

burlywood (#DEB887)

darkgoldenrod (#B8860B)

darkgoldenrod (#B8860B)

goldenrod (#DAA520)

goldenrod (#DAA520)

gold (#FFD700)

gold (#FFD700)

yellow (#FFFF00)

yellow (#FFFF00)

lightgoldenrodyellow (#FAFAD2)

lightgoldenrodyellow (#FAFAD2)

palegoldenrod (#EEE8AA)

palegoldenrod (#EEE8AA)

khaki (#F0E68C)

khaki (#F0E68C)

darkkhaki (#BDB76B)

darkkhaki (#BDB76B)

lawngreen (#7CFC00)

lawngreen (#7CFC00)

greenyellow (#ADFF2F)

greenyellow (#ADFF2F)

chartreuse (#7FFF00)

chartreuse (#7FFF00)

lime (#00FF00)

lime (#00FF00)

limegreen (#32CD32)

limegreen (#32CD32)

yellowgreen (#9ACD32)

yellowgreen (#9ACD32)

olive (#808000)

olive (#808000)

olivedrab (#6B8E23)

olivedrab (#6B8E23)

darkolivegreen (#556B2F)

darkolivegreen (#556B2F)

forestgreen (#228B22)

forestgreen (#228B22)

darkgreen (#006400)

darkgreen (#006400)

green (#008000)

green (#008000)

seagreen (#2E8B57)

seagreen (#2E8B57)

mediumseagreen (#3CB371)

mediumseagreen (#3CB371)

darkseagreen (#8FBC8F)

darkseagreen (#8FBC8F)

lightgreen (#90EE90)

lightgreen (#90EE90)

palegreen (#98FB98)

palegreen (#98FB98)

springgreen (#00FF7F)

springgreen (#00FF7F)

mediumspringgreen (#00FA9A)

mediumspringgreen (#00FA9A)

teal (#008080)

teal (#008080)

darkcyan (#008B8B)

darkcyan (#008B8B)

lightseagreen (#20B2AA)

lightseagreen (#20B2AA)

mediumaquamarine (#66CDAA)

mediumaquamarine (#66CDAA)

cadetblue (#5F9EA0)

cadetblue (#5F9EA0)

steelblue (#4682B4)

steelblue (#4682B4)

aquamarine (#7FFFD4)

aquamarine (#7FFFD4)

powderblue (#B0E0E6)

powderblue (#B0E0E6)

paleturquoise(#AFEEEE)

paleturquoise (#AFEEEE)

lightblue (#ADD8E6)

lightblue (#ADD8E6)

lightsteelblue (#B0C4DE)

lightsteelblue (#B0C4DE)

skyblue (#87CEEB)

skyblue (#87CEEB)

lightskyblue (#87CEFA)

lightskyblue (#87CEFA)

mediumturquoise (#48D1CC)

mediumturquoise (#48D1CC)

turquoise (#40E0D0)

turquoise (#40E0D0)

darkturquoise (#00CED1)

darkturquoise (#00CED1)

aqua (#00FFFF)

aqua (#00FFFF)

cyan (#00FFFF)

cyan (#00FFFF)

deepskyblue (#00BFFF)

deepskyblue (#00BFFF)

dodgerblue (#1E90FF)

dodgerblue (#1E90FF)

cornflowerblue (#6495ED)

cornflowerblue (#6495ED)

royalblue (#4169E1)

royalblue (#4169E1)

blue (#0000FF)

blue (#0000FF)

mediumblue (#0000CD)

mediumblue (#0000CD)

navy (#000080)

navy (#000080)

darkblue (#00008B)

darkblue (#00008B)

midnightblue (#191970)

midnightblue (#191970)

darkslateblue (#483D8B)

darkslateblue (#483D8B)

slateblue (#6A5ACD)

slateblue (#6A5ACD)

mediumslateblue (#7B68EE)

mediumslateblue (#7B68EE)

mediumpurple (#9370DB)

mediumpurple (#9370DB)

darkorchid (#9932CC)

darkorchid (#9932CC)

darkviolet (#9400D3)

darkviolet (#9400D3)

blueviolet (#8A2BE2)

blueviolet (#8A2BE2)

mediumorchid (#BA55D3)

mediumorchid (#BA55D3)

plum (#DDA0DD)

plum (#DDA0DD)

lavender (#E6E6FA)

lavender (#E6E6FA)

thistle (#D8BFD8)

thistle (#D8BFD8)

orchid (#DA70D6)

orchid (#DA70D6)

violet (#EE82EE)

violet (#EE82EE)

indigo (#4B0082)

indigo (#4B0082)

darkmagenta (#8B008B)

darkmagenta (#8B008B)

purple (#800080)

purple (#800080)

mediumvioletred (#C71585)

mediumvioletred (#C71585)

deeppink (#FF1493)

deeppink (#FF1493)

fuchsia (#FF00FF)

fuchsia (#FF00FF)

magenta (#FF00FF)

magenta (#FF00FF)

hotpink (#FF69B4)

hotpink (#FF69B4)

palevioletred (#DB7093)

palevioletred (#DB7093)

lightpink (#FFB6C1)

lightpink (#FFB6C1)

pink (#FFC0CB)

pink (#FFC0CB)

mistyrose (#FFE4E1)

mistyrose (#FFE4E1)

blanchedalmond (#FFEBCD)

blanchedalmond (#FFEBCD)

lightyellow (#FFFFE0)

lightyellow (#FFFFE0)

cornsilk (#FFF8DC)

cornsilk (#FFF8DC)

antiquewhite (#FAEBD7)

antiquewhite (#FAEBD7)

papayawhip (#FFEFD5)

papayawhip (#FFEFD5)

lemonchiffon (#FFFACD)

lemonchiffon (#FFFACD)

beige (#F5F5DC)

beige (#F5F5DC)

linen (#FAF0E6)

linen (#FAF0E6)

oldlace (#FDF5E6)

oldlace (#FDF5E6)

lightcyan (#E0FFFF)

lightcyan (#E0FFFF)

aliceblue (#F0F8FF)

aliceblue (#F0F8FF)

whitesmoke (#F5F5F5)

whitesmoke (#F5F5F5)

lavenderblush (#FFF0F5)

lavenderblush (#FFF0F5)

floralwhite (#FFFAF0)

floralwhite (#FFFAF0)

mintcream (#F5FFFA)

mintcream (#F5FFFA)

ghostwhite (#F8F8FF)

ghostwhite (#F8F8FF)

honeydew (#F0FFF0)

honeydew (#F0FFF0)

seashell (#FFF5EE)

seashell (#FFF5EE)

ivory (#FFFFF0)

ivory (#FFFFF0)

azure (#F0FFFF)

azure (#F0FFFF)

snow (#FFFAFA)

snow (#FFFAFA)

white (#FFFFFF)

white (#FFFFFF)

gainsboro (#DCDCDC)

gainsboro (#DCDCDC)

lightgrey (#D3D3D3)

lightgrey (#D3D3D3)

silver (#C0C0C0)

silver (#C0C0C0)

darkgray (#A9A9A9)

darkgray (#A9A9A9)

lightslategray (#778899)

lightslategray (#778899)

slategray (#708090)

slategray (#708090)

gray (#808080)

gray (#808080)

dimgray (#696969)

dimgray (#696969)

darkslategray (#2F4F4F)

darkslategray (#2F4F4F)

black (#000000)

black (#000000)



 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

No. 10445

ARCHIVE LOG MODE 운영 방법
==========================

Oracle에서 Online Backup을 받거나 완벽한 Recovery 작업을 수행하기
위해서는 DB를 Archive log mode로 운영하여야 한다.


텍스트로 만들어진 파라미터 화일을 사용하는 경우 (Oracle 8i 까지)
Archive log mode로 운영하기 위해서는 다음과 같이 변경하여야 한다.

1.  initSID.ora file과 configSID.ora 에 다음의 parameter가 이미 setting
    되어 있는지 확인한 후에 없을 경우 initSID.ora 에 setting한다.

1) LOG_ARCHIVE_START = TRUE

  * ARCH process 가 기동
  * log switch 발생 시 automatic archive를 수행한다.
    만약 이 parametrer가 false이면 manual archive를 실시하여야 한다.

2) LOG_ARCHIVE_DEST = /home/oracle7/dbs/archive_file/arc

 * archive 장소의 디렉토리와 확장자를 포함하지 않는 파일명을 지정.
 * 여기에서 archive_file까지는 directory이며 마지막에 있는 arc는
   archive log file의 initial 명이다.
              
3) LOG_ARCHIVE_FORMAT = %s.log

 * archive file의 확장자와 log sequence 번호의 형식을 지정.
 * 이는 (2)에서 정의된 archive log의 initial file 명과 함께 나타난다.

   [ 예 ]  arc123.log, arc124.log
          (123과 124는 log sequence number 이다.)
           와 같은 형태의 화일이 생성된다.


2. 다음과 같이 작업하여 archive log mode로 변환한다.

        $ svrmgrl

 SVRMGR> connect internal
 SVRMGR> startup mount                - (1)
 SVRMGR> alter database archivelog;   - (2)
 SVRMGR> archive log list             - (3)
        Database log mode                ARCHIVELOG - (4)
        Automatic archival               ENABLED    - (5)
        Archive destination           ?/dbs_ar/offline_log/offline - (6)
        Oldest online log sequence       123 - (7)
        Next log sequence to archive     125 - (8)
        Current log sequence             125 - (9)
        SVRMGR> alter database open;       - (10)
       
       
(1)  DB를 startup mount까지만 한다.
(2)  이 Command를 이용하여 archivelog mode로 DB를 변경한다.
(3)  Archivelog mode로 변경되었는지를 확인한다.
(4)  DB가 Archivelog mode임을 나타낸다.
     만약 NOARCHIVELOG로 되어 있으면 변경되지 않은 것을 의미한다.
(5)  initSID.ora file에서 LOG_ARCHIVE_START parameter를 TRUE로
     정의하였음을 나타내며 false인 경우에는 DISABLED로 나타난다.
(6)  initSID.ora file의 LOG_ARCHIVE_DEST parameter에서 정의한
     archive할 장소이다.
(7)  3 개의 redo log 중 가장 오래된 redo log의 sequence가 123임을
     의미한다.
(8)  다음에 archive 받을 file의 log sequence 번호를 나타낸다.
(9)  현재 사용 중인 redo log의 sequence가 125임을 의미한다.
     만약 이전부터 archivelog mode로 운영 중이었다면 여기에서 archivelog
     file은 log sequence 124까지 archiveing되어있다는 것을 의미한다.
(10) Archive mode로 변경 후 DB를 open한다.

바이너리로 만들어진 파라미터 화일을 사용하는 경우 (Oracle 9i 부터)
Archive log mode로 운영하기 위해서는 다음과 같이 변경하여야 한다.

1.  Parameter 확인

$sqlplus /nolog

SQL>connect sys/passwd@orcl as sysdba
Connected.
SQL> archive log list
Database log mode              No Archive Mode
Automatic archival             Enabled
Archive destination            /u01/oracle/dbs/
Oldest online log sequence     1
Current log sequence           3

SQL> select name, value from v$parameter
     where name = 'log_archive_start'
     or name = 'log_archive_dest'
     or name = 'log_archive_format' ;

2. 다음과 같이 작업하여 archive log mode로 변환한다.

SQL> ALTER SYSTEM SET LOG_ARCHIVE_START = TRUE
     SCOPE=SPFILE;

System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area   89201304 bytes
Fixed Size                   453272 bytes
Variable Size              67108864 bytes
Database Buffers           20971520 bytes
Redo Buffers                 667648 bytes
Database mounted.
SQL> archive log list
Database log mode              No Archive Mode
Automatic archival             Enabled
Archive destination            /u01/oracle/dbs/archive/orcl/arc
Oldest online log sequence     1
Current log sequence           3
SQL> alter database archivelog;

Database altered.

SQL> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /u01/oracle/dbs/archive/orcl/arc
Oldest online log sequence     1
Next log sequence to archive   3
Current log sequence           3
SQL> alter database open
  2  ;

Database altered.

반대로, archivelog mode에서 no archivelog mode로 전환하는 방법은 다음과
같습니다. archivelog mode에서 no archivelog mode로 전환하기 전에
데이터베이스는 반드시 immediate 또는 normal 로 셧다운 되어야만 전환이
가능 합니다.

먼저, 위에서 setting 했던 initSID.ora file 와 configSID.ora 에 있는
다음 parameter 앞에 # 을 넣고 저장합니다.

#LOG_ARCHIVE_START = TRUE
#LOG_ARCHIVE_DEST = /home/oracle7/dbs/archive_file/arc
#LOG_ARCHIVE_FORMAT = %s.log

  $ svrmgrl
  SVRMGR> connect internal;
  SVRMGR> shutdown immediate
  SVRMGR> startup mount
  ORACLE instance started.
  Database mounted.
  SVRMGR> alter database noarchivelog;
  Statement processed.
  SVRMGR> alter database open;
  Statement processed.

바이너리로 만들어진 파라미터 화일을 사용하는 경우 (Oracle 9i 부터)
Noarchive log mode로 운영하기 위해서는 다음과 같이 변경하여야 한다.

1.  Parameter 확인

$sqlplus /nolog

SQL>connect sys/passwd@orcl as sysdba
Connected.
SQL> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /u01/oracle/dbs/archive/orcl/arc
Oldest online log sequence     1
Next log sequence to archive   3
Current log sequence           3

SQL> select name, value from v$parameter
     where name = 'log_archive_start'
     or name = 'log_archive_dest'
     or name = 'log_archive_format' ;

2. 다음과 같이 작업하여 Noarchive log mode로 변환한다.

SQL> ALTER SYSTEM SET LOG_ARCHIVE_START = FALSE
     SCOPE=SPFILE;
System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area   89201304 bytes
Fixed Size                   453272 bytes
Variable Size              67108864 bytes
Database Buffers           20971520 bytes
Redo Buffers                 667648 bytes
Database mounted.
SQL> alter database noarchivelog;

Database altered.
SQL> archive log list
Database log mode              No Archive Mode
Automatic archival             Enabled
Archive destination            /u01/oracle/dbs/archive/orcl/arc
Oldest online log sequence     1
Current log sequence           3
SQL> alter database open
  2  ;

Database altered.

    

 


아카이브 데스티네이션 경로 변경
-- db archive mode 로 변경시키는 방법
-- archive mode : redo log file 을 백업을 받는 방식

SQL> archive log list
데이터베이스 로그 모드              아카이브 모드가 아님
자동 아카이브             사용 안함
아카이브 대상            C:\oracle\ora92\RDBMS
가장 오래된 온라인 로그 순서     48
현재 로그 순서           51

SQL> alter system set log_archive_start = true scope=spfile;
시스템이 변경되었습니다.

-- os directory 설정
-- oracle 에선 파일은 자동으로 만들어주는데 디렉토리는 무조건
-- 사용자가 수동으로 만들어줘야 한다.

SQL> alter system set log_archive_dest_1 ='location=c:\arch1';

시스템이 변경되었습니다.

SQL> alter system set log_archive_dest_2 = 'location=c:\arch2';

시스템이 변경되었습니다.

-- log_archive_dest 확인
SQL> show parameter log_archive_dest


-- archive file 형식 지정
SQL> alter system set log_archive_format ='%t_%s.arc' scope=spfile;

-- %s 는 로그 시퀀스 번호

시스템이 변경되었습니다.

SQL> shutdown immediate

SQL> startup mount
-- control file 을 읽는다.

ORACLE 인스턴스가 시작되었습니다.

Total System Global Area  101784276 bytes
Fixed Size                   453332 bytes
Variable Size              75497472 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
데이터베이스가 마운트되었습니다.

-- control file 의 속성을 바꾼다.
-- archivelog mode 로 변경

SQL> alter database archivelog;

데이타베이스가 변경되었습니다.

SQL> archive log list
데이터베이스 로그 모드              아카이브 모드
자동 아카이브             사용
아카이브 대상            c:\arch2
가장 오래된 온라인 로그 순서     48
아카이브할 다음 로그   51
현재 로그 순서           51

SQL> alter database open;

데이타베이스가 변경되었습니다.

SQL> alter system switch logfile;

시스템이 변경되었습니다.

-- 그러면 c:\arch1, c:\arch2 밑에 로그파일이 생성된다.

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가


PL/SQL 이란 ?

 
- PL/SQL 은 Oracle's Procedural Language extension to SQL. 의 약자 입니다.

 - SQL문장에서 변수정의, 조건처리(IF), 반복처리(LOOP, WHILE, FOR)등을 지원하며,
   오라클 자체에 내장되어 있는 Procedure Language입니다

 - DECLARE문을 이용하여 정의되며, 선언문의 사용은 선택 사항입니다.  

 - PL/SQL 문은 블록 구조로 되어 있고 PL/SQL 자신이 컴파일 엔진을 가지고 있습니다.



PL/SQL의 장점

 - PL/SQL 문은 BLOCK 구조다수의 SQL 문을 한번에 ORACLE DB 로 보내서 처리하므로
   수행속도를 향상 시킬수 있습니다.

 - PL/SQL 의 모든 요소는 하나 또는 두개이상의 블록으로 구성하여 모듈화가 가능하다.

 - 보다 강력한 프로그램을 작성하기 위해서 큰 블록안에 소블럭을 위치시킬 수 있습니다.

 - Variable, Constant, Cursor, Exception을 정의하고, SQL문장과 Procedural 문장에서
   사용합니다. .

 - 단순, 복잡한 데이터형태의 변수를 선언합니다.

 - 테이블의 데이터 구조와 DataBase의 컬럼럼에 준하여 동적으로 변수를 선언 할 수 있습니다.

 - Exception 처리 루틴을 이용하여 Oracle Server Error를 처리합니다.

 - 사용자 정의 에러를 선언하고 Exception 처리 루틴으로 처리 가능 합니다.

 

* 교육 담당 & 관리자 : 김 윤 석
* 교육 문의 & 예약 접수 : 02) 6255-8046
* 홈페이지 http://www.itmoya.net/ocp/main_1.htm
- 오라클지정 교육원, 본원 시험실시, 40%바우쳐제공

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가


PL/SQL Block Structure

 - PL/SQL은 프로그램을 논리적인 블록으로 나누는 구조화된 블록 언어 입니다.

 - PL/SQL 블록은 선언부(선택적), 실행부(필수적),예외 처리부(선택적)로 구성되어 있고,  
   BEGIN과 END 키워드는 반드시 기술해 주어야 합니다.

 - PL/SQL 블록에서 사용하는 변수는 블록에 대해 논리적으로 선언할 수 있고 사용할 수 있습니다.

 

● DECLARE
    - Optional
    - Variables, cursors, user-defined exceptions

● BEGIN
    - Mandatory
    - SQL Statements
    - PL/SQL Statements

● EXCEPTION
    - Actions to perform when errors occur

● END;
    - Mandatory



  ◈ Declarative Section(선언부)

   -  변수, 상수, CURSOR, USER_DEFINE Exception선언


  ◈ Executable Section(실행부)

   -  SQL, 반복분, 조건문실행
   -  실행부는 BEGIN으로 시작하고 END 로 끝납니다.
   -  실행문은 프로그램 내용이 들어가는 부분으로서 필수적으로 사용되어야 합니다.


  ◈ Exception Handling Section(예외처리)

    - 예외에 대한 처리.
    - 일반적으로 오류를 정의하고 처리하는 부분으로 선택 사항입니다.



PL/SQL 프로그램의 작성 요령

 
 - PL/SQL 블록내에서는 한 문장이 종료할 때마다 세미콜론(;)을 사용합니다. .

  - END뒤에 ;을 사용하여 하나의 블록이 끝났다는 것을 명시 합니다.

  - PL/SQL 블록의 작성은 편집기를 통해 파일로 작성할 수도 있고,
    SQL프롬프트에서 바로 작성할 수도 있습니다.

  - SLQ*PLUS환경에서는 DELCLARE나 BEGIN이라는 키워드로 PL/SQL블럭이 시작하는 것을
    알 수 있습니다.

 - 단일행 주석 : --

 - 여러행 주석 : /* */

 - PL/SQL 블록은 행에 / 가있으면 종결 됩니다.

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

UTL_SMTP PACKAGE을 사용하여 E-MAIL을 GENERATE하는 과정

======================================================

 

PURPOSE

---------

 

UTL_SMTP package는 Oracle8i Release 2 (8.1.6)이상에서 UTL_TCP package을 이용하여 e-mail 을 PL/SQL에서 generate하는 것이 가능하게 하였다.

 

Explanation

-----------

 

UTL_SMTP packag을 사용하기 위해서는 Database에 Java option이 install되어 있어야 하며 TCPConnection class인 $ORACLE_HOME/plsql/jlib/plsql.jar file이 load되어 있어야 한다. 그리고 JAVA_POOL_SIZE는 40M이상을 권장한다.

 

UTL_SMTP package을 사용하여 E-mail을 generate하는 과정을 살펴보자.

 

1. SMTP server을 이용하여 connection을 맺는다. (보통 25번 port을 사용한다)

이것은 UTL_SMTP.OPEN_CONNECTION() function call을 통해 가능하다.

 

Ex) utl_smtp.open_connection(mailhost,25)

 

2. SMTP server와 UTL_SMTP.HELO() call을 통해 초기화을 한다.

 

Ex) utl_smtp.helo(mail_conn,mailhost);

 

3. UTL_SMTP.MAIL()을 이용하여 'From' mail ID 를 지정한다.

 

Ex) utl_smtp.mail(mail_conn,sender);

 

4. UTL_SMTP.RCPT()을 이용하여 'To' mail ID 를 지정한다.

 

Ex) utl_smtp.rcpt(mail_conn,recipient);

 

5. Body의 message을 정렬시에는 <CR><LF>에 의해 line을 나눌 수 있다.

 

Ex) CHR(13)||CHR(10)

 

6. UTL_SMTP.DATA() 응 이용하여 UTL_SMTP buffer로 message을 pass한다.

 

Ex) utl_smtp.data(mail_conn,message);

 

7. UTL_SMTP.QUIT()을 call함으로써 SMTP connection을 끝내게 된다.

 

Ex) utl_smtp.quit(mail_conn);

 

좀더 자세한 sample은 bulletin : 12130에서 보기로 하고 여기선 간단히 E-mail을 보내는 sample을 보여주기로 한다.

 

Example 
-------- 

      CREATE OR REPLACE PROCEDURE send_email 
      ( sender    IN VARCHAR2, 
        recipient IN VARCHAR2, 
        message   IN VARCHAR2) 
      AS 
       
        mailhost VARCHAR2(100) := 'gmapacsmtp.oraclecorp.com'; 
        mail_conn utl_smtp.connection; 

      BEGIN 

         mail_conn :=utl_smtp.open_connection(mailhost,100);  
         utl_smtp.helo(mail_conn,mailhost);  
         utl_smtp.mail(mail_conn,sender);  
         utl_smtp.rcpt(mail_conn,recipient);  
         utl_smtp.data(mail_conn,message);  
         utl_smtp.quit(mail_conn); 

     END; 
/ 

 

SQL> exec send_email('Oracle','TTT@oracle.com','This sample is education purpose only');

 

 Sample2) 한글 data을 mail로 보낼때는 bulletin : 12130을 자세히 보면  
          알 수 있듯이 Sample1의 utl_smtp.data(mail_conn,message);  
          부분을 바꾸어 주어야 한다. 

      CREATE OR REPLACE PROCEDURE send_email 
      ( sender    IN VARCHAR2, 
        recipient IN VARCHAR2, 
        message   IN VARCHAR2) 
      AS 
       
        mailhost VARCHAR2(100) := 'gmapacsmtp.oraclecorp.com'; 
        mail_conn utl_smtp.connection; 

      BEGIN 

         mail_conn :=utl_smtp.open_connection(mailhost,100);  
         utl_smtp.helo(mail_conn,mailhost);  
         utl_smtp.mail(mail_conn,sender);  
         utl_smtp.rcpt(mail_conn,recipient);  
--         utl_smtp.data(mail_conn,message);  

         utl_smtp.open_data(mail_conn); 
         utl_smtp.write_raw_data(mail_conn, UTL_RAW.CAST_TO_RAW(message)); 
         utl_smtp.close_data(mail_conn); 

         utl_smtp.quit(mail_conn); 

     END; 
/ 

 

SQL> exec send_email('Oracle','TTT@oracle.com','이 샘플은 교육목적입니다.');

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

산술 함수
 

  • ABS(n) : 절대값 |n|
  • sin() cos() tan() sinH() cosH() tanH() : radian값을 이용
    • ex> 30' 일 경우 sin(30* (3.14.../180));
  • exp(n) : 지수값 e를 밑으로 하는 e의 n승 값;
  • LN(n):자연 log값 밑수 e 지수 n
  • SQRT(n): 루트n
  • power(m,n): m의 n승
  • MOD(m.n) : m을  n 으로 나눈 나머지
  • floor(n): n보다 작은 정수값들중에서 최대값
  • ceil(n): n보다 큰 정수값들중에서 최소값
     
    • ex> floor(3.5)   -->  3   ,    ceil (3.5)  -->  4
    •        floor(-3.2) --> -4  ,     ceil (-3.5) --> -3
  • greatest(m,n): 두 수중에서 큰것
  • least(m,n);두 수중에서 작은 것
  • TO_NUMBER('숫자형 문자열'):문자를 숫자로 변환
  • round(m,n):반올림
  • trunc(m,n):절삭한다 즉 반올림을 허용하지 않는다.
     
    • ex>  Round(2.4678, 2)   -->  2.47   ,    trunc(2.4687, 2)    -->  2.46
    •      Round(3654.26, -2) --> 3700  ,   trunc (3654.26, -2 ) --> 3600
  • NVL(col명,값): col의 값이 null를 가질때 값을 가진다.
    • ex> 100+NULL은 NULL이 되기 때문에 이러한 문제점을 해결할 때 사용한다.
    • select ename,sal,comm,sal+nvl(comm,0) from emp;

           -->sal값과 comm값을 더하는데 comm값이 null값이면 0값을 취한다...

문자열 함수

  •  lower():소문자로 변환시켜주는 함수
  • upper():대문자로 변환시켜주는 함수
  • Initcap():단어의 첫자만 대문자로 나머지는 소문자로
     
    • Initcap('i LOVE you') ---->  I Love You

 

  •  ength():문자열의 길이
  • substr(문자열,위치,갯수): 해당위치에서 갯수만큼의 문자열을 추출한다.
     
    • substr ('KOREA', 3, 2) ---->  'RE'
      -- 3번째인 R부터 2글자 출력
  • instr(문자열,찾을 문자열[,위치,찾을위치])

 :문자열에서 이 문자를 찾아라. return값은 찾은 위치
 

    • Instr("abcdabkdoerabjdlfjdg","ab") -----> 1
      -- 1번째에서 시작해서 처음  ab가 나타나는 1출력
    • Instr("abcdabkdoerabjdlfjdg","ab",4,2) ---->  12
      -- 4번째부터 시작해서 두번째 나타나는  ab 출력

 

  • user:현재 접속된 사용자를 보여준다.
  • decode(col명,비교값,취할값,비교값,취할값,....기본값)

 :col값이 비교값이면 취할값으로 대체.

 

    • decode(deptno,10,'총무부',20,'영업부',30,'전산부','관리부'):나머지는 관리부
      -- deptno가 10이면 총무부 , 20이면 영업부, 30이면 전산부 나머지 는 관리부 출력

날짜 함수

  • TO_CHAR(날짜,'포맷'): 날짜를 문자열로 바꾼다.
  • TO_DATE(문자열,'포맷'):문자열을 날짜로 ex> TO_DATE('97-10-14',' -----')
  • ADD_MONTHS(날짜,n):현재 날짜에 n개월수를 더한다.
  • MONTHS_BETWEEN(날짜1,날짜2):두 날짜의 개월수의 차를 구한다.
  • LAST_DAY(날짜):그 달의 마지막 날짜를 구한다.
  • NEXT_DAY(날짜,'요일'):날짜로 부터 다음에 나오는 요일은 며칠인가
    • next_day(sysdate,'금요일')
  • 날짜 + n : 날짜에다 n 일을 더한다.
  • 포맷:
    • yy : 년도를 2자리로
    • yyyy : 년도를 4자리로
    • year : 영어 철자로 표시
    • mm :월을 표시(01-12)
    • mon :월을 표시(DEC....):약자로 나온다.
    • month :월을 표시(1월,2월,....혹은 ,DECEMBER)
    • d :일을 표시(주에 대한 일)
    • dd :일을 표시 (월에 대한 일)
    • ddd :일을 표시 (년에 대한 일)
    • Q : 분기를 구한다.
    • DAY :요일 (월요일)
    • DY  :요일(월)
    • HH & HH12 :시간을 12시간제로
    • HH24 :24시간제로
    • MI:분
    • SS:초
    • AM & PM & A.M & P.M:12시간제 일때 오전 오후를 표시
    • 접미사로 사용하는 포맷
      • TH:서수로 표시 ex> 4 -> DD ->4
      •                               4-> DDTH -> 4TH
      • SP:철자로 표시 ex> 4 ->DDSP -> FOUR
      • SPTH & THSP  ex> 4 -> DDSPTH -> FOURTH
      •  근무한 년월 수 ex> column "근무년수" Format a 14;

그룹 함수

  •  group함수 :
    • NULL값은 계산되지 않는다.
    • 여러개의 데이타에 대한 결과 이므로 그룹함수라 한다
    • 단일 필드와 함께 사용할 수 없다.
    • 만약 단일 필드와 사용되면 group by절에 반드시 나와야 한다.
  • sum() : 합
  • avg() : 평균
  • count() : 갯수  count(*): 리턴되는 레코드의 수를 계산
    • ex> select deptno,sum(sapay) from sawon;  에러
       -->단위 필드이므로 따라서 마지막에 group by deptno;라고 지정해주면 사용가능
  • max() : 최대값
  • min() : 최소값
  • stddev : 표준편차
  • variance : 분산  

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가


★ 오라클 9i + 10g 실무중심 자격증취득 교육

 

오라클 공인 전문가 제도(Oracle Certified Professional)는 오라클 제품 사용자의 관련 업무별 전문

기술 지식 정도를 측정하여 대내외적으로 증명해 주며, 오라클의 제품과 최신 기술을 활용하여 최적의 솔루션을 설계, 개발, 응용하는데 필요한 인력의 역량을 인증해 주는 프로그램입니다.

 

* 교육 담당 & 관리자 : 김 윤 석
* 교육 문의 & 예약 접수 : 02) 6255-8046
* 홈페이지 http://www.itmoya.net/ocp/main_1.htm
- 오라클지정 교육원, 본원 시험실시, 40%바우쳐제공

 

2006 오라클 9I+10G 양성교육 일정은 국비지원 제도 사항으로 혜택을받으실수 있습니다.
자세한 교육내용를 알고 싶으시면 운영자에게 개인상담 / 전화 /메일로 주시면 자세한
세부 교육커리 와 수강료에 대해서 안내해 드리겠습니다.

 

※본원 오라클 지정 취업지원과정 교육 파트너(Oracle Workforce Development Program)

 

오라클의 정규 과정의 강의를 수행할 수 있는 강사를 보유한 기관을 대상으로 오라클의 교육과목에

대하여 공식교재와 S/W를 활용하여 교육과정을 진행하는 교육 기관입니다.

협력교육기관은 자체적으로 과정을 개설하며, 수강생을 모집하고, 강의를 수행하며, 교육 품질에 대한 책임도 협력 교육기관이 소유하는 형태의 교육 협력 파트너입니다.
오라클은 우수 IT인력 양성과 실업자/미취업자의 취업 지원을 위한 취업지원과정을 통해 오라클의 교육과정을 수강하고자 하는 수강희망자에게 폭넓은 기회를 제공하고자 노력하고 있습니다.

 

▶ 교육과정 : ORACL-DBA 9I [WDP공인지정센터]
▶ 개강안내 : 매월 초 개강 / 수시접수 / 교육시간 조정가능 / 평일,주말반 운영
▶ 교육대상 : 데이터베이스 전문가가 되기 원하는 사람
                    OCP 자격증 취득을 원하는 사람
                    오라클을 사용하여 SQL 프로그래밍을 하려는 사람
▶ 모집정원 : 15명[선착순마감]
▶ 교육혜택 : WDP지정센터로 오라클 교육과정 수강신청시 바우처 40% 할인쿠폰 증정 [재수강 무료]
▶ 교육장소 : 강남ITWILL교육센터 7층[오라클 공인 강의장]

 

<강남 국제자격증 시험센터>
전 과정 15명이내 소수 집중 강의와 30석 세미나형 강의
전 강의장 빔 프로젝트 또는 모니터 분배기를 통한 비쥬얼 교육
대학교수(경희대,중앙대,청강대 등) 및 현장경력 6년의 실무진 강사
담임선생님의 철저한 회원관리
1인 1대의 교육시스템
우수수강생중 선별하여 보원 프로젝트 참여기회 부여
노동부 지정 교육기관 - 고용보험 환급제도 실시 교육기관
제1회 KOEX전자상거래박람회 웹마스터대표교육기관선정
매일경제 TV방영
(크리에이티브21,인터넷 전문교육기관선정- 2월 18일 방영)
HOW PC 웹전문 교육기관 선정(1999년 11월호)
정통부,노동부 지정교육원
iMBC 라이프 협력업체 ,
동아일보 donga.com제휴업체
리눅스원지정교육기관
호산나넷 IT 지정교육원
KTF 지정교육기관

 

<시스템>
펜티엄 5 512MB 80GHDD LCD 모니터
최고급 강의 시스템-XGA Beam Projector
최고급 서버
전용 교육서버
HP Netserver LH4 Xeon 55O 4 Way RAID 5
및 Inter PⅢ-866 Dual 8대운영
Ciscon CCNA, CCNP, CCIE 실습용 랙 완비
SUN Ultra 10 10대보유
Unix 전용서버 운영
10M급 전용회선

 

▶ 오라클 9I 교육과정 및 세부내용
---------------------------------------------------------
1)Introduction to Oracle SQL and PL/SQL
2)Oracle9i Database: Fundamentals I
3)Oracle9i Database: Fundamentals II
4)Oracle9i Database: Performance Tuning
---------------------------------------------------------

 

교육과정 세부내용 - 8주교육 [주5일 일일3시간 진행]

 

* 1개월


<1,2주차> PL/SQL (1Z0-007)
OCP 자격증 개요
PL/SQL의 기초, 블록(선언부,실행부,예외 처리부)
제어문의 구조(IF문, CASE문, LOOP문, GOTO문, NULL문)
예외 처리(종류, 처리부의 형식, 처리 방식)
오라클 데이터 조작

(DML, CURSOR, CURSOR FOR LOOP, CURSOR Variable, CURSOR 연산식, DCL)
타입(COLLECTION, BULK BINDING, RECORD)
모듈 - 프로시저, 함수, 패키지(PRIVILEGE, 모듈 호출, FUNCTION, 패키지, 오버로딩, 외부 프로시저)
트리거(DML 트리거, INSTEAD OF TRIGGER, 시스템 이벤트 트리거)
Native Dynamic SQL(DBMS_SQL 패키지, 고유 동적 SQL)
객체(Object Type, COLLECTION, 객체 뷰, 이름 분석(Name Resolution)과 엘리어스)
상속

(Inheritance, Step by Step, 치환성(sbsstitutability), 타입의 진화(Type Evolution), 객체 뷰의 상속)

 

<3,4주차> Fundamental Ⅰ (1Z0-031)
Basic of the Oracle Database Architecture
(오라클 서버구조, 오라클 서버 시작하기, Oracle Instance의 관리,오라클 데이터베이스 생성)
Managing the Physical Database Structure
(데이터 딕셔너리의 내용과 용도, 컨트롤 파일의 유지, 리두 로그 파일 유지)
Managing Tablespaces and Datafiles
(데이터베이스의 논리적 구조에 대한 설명)
Storage Structures and Undo Data
(저장 구조 및 관계, 언두 데이터의 관리)
Managing Database Objects
(테이블의 관리, 인덱스 관리, 데이터 무결성 관리)
Managing Database Users
(사용자 관리, 비밀번호 보안 및 리소스 관리, 권한의 관리, 롤의 관리(Managing Roles)

 

* 2개월


<1,2주차> Fundamental Ⅱ (1Z0-032)
Networking 개요
Oracle Net Architecture 기본
Net Server-Side 구성의 기본
Oracle Net Services Client-Side 구성의 기본
오라클 공유 서버의 활용과 구성
Backup과 Recovery 개요
인스턴스와 미디어 복구 개요
Database Archive 모드 구성
Oracle Recovery Manager 개요와 구성
User-Managed Backups
RMAN Backups
User-Managed Complete Recovery
RMAN Complete Recovery
User-Managed Incomplete Recovery
RMAN Incomplete Recovery
RMAN Maintenance
Recovery Catalog 생성과 유지보수
데이터베이스간의 데이터 전송
데이터베이스내로 데이터 로딩

 

<3,4주차> Performance Tuning (1Z0-033)
Database Tuning 개요
오라클 성능 튜닝 방법
진단과 튜닝 도구
동적 성능 뷰의 통계
스태츠팩을 사용한 통계수집
경고 로그와 추적 파일
공유 풀 크기 조정
버퍼 개시의 크기 조정
나머지 SGA 구조의 크기 조정
데이터베이스 구성과 I/O 문제
정렬 작업의 최적화
래치 경합의 진단
롤백
언두세그먼트 튜닝
락 경합의 모니터링과 탐지
오라클 공유 서버의 튜닝
애플리케이션 튜닝
오라클 블록의 효율적 사용
SQL 구문 튜닝
OS 고려사항
데이터베이스 Resource Manager

 

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

9i설치후 8080 포트 사용하는 것 바꾸기

9i를 설치후 톰캣이나 여타 container를 설치 후 8080 포트를 오라클의 http 프로세스가 사용해서 8080 포트 사용이 불가하다는 질문을 가끔 받을 때가 있는데..

그런 경우의 처리는 이렇게 하면 된다.

 

우선, Oracle XDB 라는 녀석이 8080포트와 2100을 쓴다.

 

포트 변경 하는 법

1. [시작] -> [프로그램] -> [Oracle - OraHome92] -> [Configuration and Migration Tools] -> [Database Configuration Assistant] 선택
2. [다음] 버튼을 Click -> [데이터베이스의 데이이터베이스 옵션구성] 선택
3. 옵션을 구성하고자 하는 [사용 가능한 데이터베이스] 선택

4. Oracle XML DB 의 [사용자 정의 ...] 버튼을 Click  그리고 FTP 및 WebDAV 포트는 기본 설정인 2100 을 사용.
5. [확인] 버튼을 Click 하시고 [다음] 버튼을 Click .

    데이터베이스를 실행할 기본모드를 선택하시고 [완료]
6. 다른 db가 있다면 다시 수행

 

포트를 아예 안쓰고 싶다면  4, 5번 단계에서 'XML 프로토콜 비활성화'를 체크하면 가능 

 

설치시에 XML DB OPTION을 아예 사용하지 않도록 하면 xml db 자체를 설치 하지 않음

 

참고 - "XML Database Developer s Guide - Oracle XML DB" 책의 21장
"Configuring Oracle XML DB with Enterprise Manager"

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

MSSQL, MySQL에만 익숙해져있던 나에겐 오라클은 골치덩이 그 자체였다. 설치할 때 뜨는 무수한 오류와 (9i 버전으로 2000에 설치하니까 로그 파일을 찾을 수 없다는 오류가 계속 나왔다, 결국 xp에 설치했다) 사용하기 힘든 인터페이스, 또 왜 그리 느린지... 물론 내가 오라클에 대한 지식이 없어서 오라클의 강점을 느끼지 못하고 있는거지만 그래도 너무 불편하였다. 특히나! 설치 후 Oracle

Universal Installer 로 삭제를 해도 서비스 목록에서 나가지 않고 버팅기는 오라클의 위력이란 참...

그래서 이번엔 윈도우 2000 기준으로 오라클을 완전히 삭제하는 방법에 관한 팁이다. 이 방법은 물론 내가 알아낸 것이 아니라 여러 오라클 관련 포럼에서 보고 종합한 것이다.

 

오라클을 분명히 언인스톨 완료 까지 했는데 서비스 목록에 가보면 오라클 서비스가 지워지지 않고 계속 작동중인것을 볼 수 있을 것이다. 이런 상태에서 같은 버전, 혹은 다른 버전의 오라클을 설치했을 때 제대로 작동이 되지 않는다. (설치가 제대로 되지 않아 8i, 9i, 10g 버전을 골고루 깔아봤을 때 전 버전이 제대로 삭제되어있지 않으면 잘 설치가 되지 않았다) 이 것을 완전히 삭제 하려면 레지스트리에서 오라클에 관련된 항목을 모두 수동으로 삭제해 주어야 한다.  일단

 

1) 윈도우 서비스에 들어가서 오라클 관련 모든 서비스를 멈춘다.

 

regedit을 실행시킨 후

2) HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->Services

이 부분에서 Oracle로 시작되는 부분을 모두 지운다.

 

3) HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE

이 부분 마찬가지 Oracle로 시작되는 부분을 모두 지운다.

 

4) 물리적인 하드 드라이브에 존재하는 오라클 관련 폴더들을 지워준다. 하드를 파티션을 나누었을 때 C드라이브에 설치를 안해도 설치한 드라이브, C드라이브에 모두 오라클 관련 폴더가 남는다.

 

5) 재부팅 후 서비스에 오라클 서비스가 남아있는지 확인 한다.

 

실질적인 방법은 매우 간단하다. 하지만 이 과정을 거치지 않으면 제대로 삭제가 되지 않기때문에 서비스 문제 발생의 원인이 될 수 있다.

 

추천학원

오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가 데이터베이스관리자 9i 10g 오라클공인교육센터 오라클인증 sql 오라클 ocp 오라클학원 ocp학원 오라클자격증 ocp자격증 oracle oracle자격증 oracle학원 db db관리자 db전문가 데이터베이스전문가

Posted by genesmer
,