Проект

Общее

Профиль

OracleConfiguration » История » Версия 10

BEA, 10.02.2025 18:49

1 2 BEA
h2. Настройка СУБД Oracle
2 1 BEA
3 5 BEA
h3. Сетевые настройки в Oracle: файл @tnsnames.ora@, файл @sqlnet.ora@
4 3 BEA
5 4 BEA
*@tnsnames.ora@* - файл для настройки возможных подключений к базе данных через TNS. Базоый формат описания подключений и его пояснение:
6 3 BEA
<pre>
7
<tns имя подключения> =
8
  (DESCRIPTION =
9
    (ADDRESS_LIST =
10
      (ADDRESS = (PROTOCOL = <протокол>)(HOST = <хост>)(PORT = <порт>))
11
    )
12
    (CONNECT_DATA =
13
      (SERVICE_NAME = <имя сервиса>)
14
    )
15
  )
16
</pre>
17
Где:
18
* @<tns имя подключения>@ - имя данного подключения. Должно быть уникальным. Далее к этим настройкам обращение происходит через это имя в файле OMP_DB.ini
19
* @<протокол>@ - протокол по которому осуществляет подключения. У нас используется TCP
20
* @<хост>@ - сетевое имя сервера к которому осуществляется подключение. Самый универсальный адрес: указать IP 
21
* @<порт>@ - порт по которому в сети работает Oracle. Указывается при установке. По умолчанию 1521
22 1 BEA
* @<имя сервиса>@ - имя объекта database в Oracle к которому осуществляется подключение. У нас по умолчанию omega.
23 3 BEA
24 4 BEA
Для прверки правильности настроек используется консольная команда *@tnsping@*:
25 3 BEA
<pre>
26
tnsping <tns имя подключения>
27
</pre>
28
29
Подробнее: документация Oracle в сети Интернет
30
31
@sqlnet.ora@ - описывающий различные методы подключения и его защиты
32
33
Подробнее: документация Oracle в сети Интернет
34
35 9 BEA
h3. Параметры в СУБД Oracle
36 1 BEA
37 10 BEA
Параметры задаваемые в СУБД Oracle являются конфигурацией того в каких режимах будет работать Oracle, сколько Oracle будет потреблять мощности сервера и прочее.
38
Параметры и их значения которые мы задаём по умолчанию для новых клиентов:
39
* *@parallel_max_servers=0@*
40
* *@deferred_segment_creation=FALSE@*
41
* *@undo_retention=9000@*
42
* *@open_cursors=500@*
43
* *@session_cached_cursors=100 scope=spfile@*
44
* *@job_queue_processes=1000@*
45
* *@processes=500 scope=spfile@* 
46
* *@alter profile DEFAULT limit password_life_time unlimited@*                                                         
47 1 BEA
48 9 BEA
h4. Изменение параметров:
49 1 BEA
50 9 BEA
# Откройте *SQL Developer* или *SQL Plus* и подключитесь к базе через пользователя sys. Далее запустите такие 2 запроса: @show parameter spfile;@, @show parameter pfile;@ Они укажут пути до файлов параметров в Oracle. Редактировать данные файлы вручную не стоит. Сделайте копию файлов и где нибудь сохраните.
51
# После этого можно приступать к изменению параметров базы данных используя @alter system set parameter...@ Подробнее в [[#Примеры использования изменения параметров в Oracle]]
52 1 BEA
# Перезагружаете Oracle сервер
53 9 BEA
# Проверяете результат. если что то пошло не так можете легко вернуть параметры назад вернув файлы параметров используя копии из пункта 1 и перезагружаете Oracle сервер снова
54 2 BEA
55 9 BEA
h4. Примеры использования изменения параметров в Oracle
56 1 BEA
57
Здесь описаны часто возникающие случаи изменения параметров. 
58
* Изменение потребляемой оперативной памяти на сервере
59
{{collapse
60
*SGA+PGA=размер потребляемой оперативной памяти у сервера*
61
62
Варианты как распределить память: 
63
* Oracle:
64
** OLTP(много малых запросов к серверу, быстрое время отклика): *SGA 80%, PGA 20%*
65
** DSS(для запросов к серверу с большой нагрузкой): *SGA 50%, PGA 50%*
66
* Наш: *SGA 65%, PGA 35%*
67
68
Изменяем параметры *SGA* и *PGA* памяти при помощи команд:
69
* @ALTER SYSTEM SET SGA_MAX_SIZE=<размер рассчитаной SGA в гигабайтах>G SCOPE=SPFILE;@
70
* @ALTER SYSTEM SET SGA_TARGET=<размер рассчитаной SGA в гигабайтах>G SCOPE=SPFILE;@
71
* Проверьте параметр *pga_aggregate_target*: @show parameter pga_aggregate_target;@ Если он нулевой то: @ALTER SYSTEM SET pga_aggregate_target=<20% от SGA>G SCOPE=SPFILE;@
72
* @ALTER SYSTEM SET pga_aggregate_limit=<размер рассчитаной PGA в гигабайтах>G SCOPE=SPFILE;@
73
}}
74
* Изменение параметра максимального количества сессий:
75
{{collapse
76
Для того чтобы изменить параметр *processes* нужно изменить ещё и *sessions*, *transactions* 
77
Формулы по тому как рассчитать оптимальные значения необходимых параметров:
78
* *processes* =x
79
* *sessions* =x*1.1+5
80
* *transactions* = *sessions* *1.1
81
82
Изменяем параметры при помощи команд:
83
* @alter system set processes=<рассчитаный processes> scope=spfile;@
84
* @alter system set sessions=<рассчитаный sessions> scope=spfile;@
85
* @alter system set transactions=<рассчитаный transactions> scope=spfile;@
86
}}