OracleConfiguration » История » Версия 9
BEA, 10.02.2025 18:44
| 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 | 9 | BEA | Параметры задаваемые в СУБД Oracle является конфигурацией того в каких режимах будет работать Oracle, сколько Oracle будет потреблять мощности сервера и прочее. |
| 38 | Параметры которые мы задаём по умолчанию для новых клиентов: |
||
| 39 | <pre> |
||
| 40 | alter system set parallel_max_servers=0; |
||
| 41 | --show parameter parallel_max_servers; |
||
| 42 | alter system set deferred_segment_creation=FALSE; |
||
| 43 | --show parameter deferred_segment_creation; |
||
| 44 | alter system set undo_retention=9000; |
||
| 45 | --show parameter undo_retention; |
||
| 46 | alter system set open_cursors=500; |
||
| 47 | --show parameter open_cursors; |
||
| 48 | alter system set session_cached_cursors=100 scope=spfile; |
||
| 49 | --show parameter session_cached_cursors; |
||
| 50 | alter system set job_queue_processes=1000; |
||
| 51 | --show parameter job_queue_processes; |
||
| 52 | alter system set processes=500 scope=spfile; |
||
| 53 | --show parameter processes; |
||
| 54 | |||
| 55 | alter profile DEFAULT limit password_life_time unlimited; |
||
| 56 | exit; |
||
| 57 | </pre> |
||
| 58 | 1 | BEA | |
| 59 | 9 | BEA | h4. Изменение параметров: |
| 60 | 1 | BEA | |
| 61 | 9 | BEA | # Откройте *SQL Developer* или *SQL Plus* и подключитесь к базе через пользователя sys. Далее запустите такие 2 запроса: @show parameter spfile;@, @show parameter pfile;@ Они укажут пути до файлов параметров в Oracle. Редактировать данные файлы вручную не стоит. Сделайте копию файлов и где нибудь сохраните. |
| 62 | # После этого можно приступать к изменению параметров базы данных используя @alter system set parameter...@ Подробнее в [[#Примеры использования изменения параметров в Oracle]] |
||
| 63 | 1 | BEA | # Перезагружаете Oracle сервер |
| 64 | 9 | BEA | # Проверяете результат. если что то пошло не так можете легко вернуть параметры назад вернув файлы параметров используя копии из пункта 1 и перезагружаете Oracle сервер снова |
| 65 | 2 | BEA | |
| 66 | 9 | BEA | h4. Примеры использования изменения параметров в Oracle |
| 67 | 1 | BEA | |
| 68 | Здесь описаны часто возникающие случаи изменения параметров. |
||
| 69 | * Изменение потребляемой оперативной памяти на сервере |
||
| 70 | {{collapse |
||
| 71 | *SGA+PGA=размер потребляемой оперативной памяти у сервера* |
||
| 72 | |||
| 73 | Варианты как распределить память: |
||
| 74 | * Oracle: |
||
| 75 | ** OLTP(много малых запросов к серверу, быстрое время отклика): *SGA 80%, PGA 20%* |
||
| 76 | ** DSS(для запросов к серверу с большой нагрузкой): *SGA 50%, PGA 50%* |
||
| 77 | * Наш: *SGA 65%, PGA 35%* |
||
| 78 | |||
| 79 | Изменяем параметры *SGA* и *PGA* памяти при помощи команд: |
||
| 80 | * @ALTER SYSTEM SET SGA_MAX_SIZE=<размер рассчитаной SGA в гигабайтах>G SCOPE=SPFILE;@ |
||
| 81 | * @ALTER SYSTEM SET SGA_TARGET=<размер рассчитаной SGA в гигабайтах>G SCOPE=SPFILE;@ |
||
| 82 | * Проверьте параметр *pga_aggregate_target*: @show parameter pga_aggregate_target;@ Если он нулевой то: @ALTER SYSTEM SET pga_aggregate_target=<20% от SGA>G SCOPE=SPFILE;@ |
||
| 83 | * @ALTER SYSTEM SET pga_aggregate_limit=<размер рассчитаной PGA в гигабайтах>G SCOPE=SPFILE;@ |
||
| 84 | }} |
||
| 85 | * Изменение параметра максимального количества сессий: |
||
| 86 | {{collapse |
||
| 87 | Для того чтобы изменить параметр *processes* нужно изменить ещё и *sessions*, *transactions* |
||
| 88 | Формулы по тому как рассчитать оптимальные значения необходимых параметров: |
||
| 89 | * *processes* =x |
||
| 90 | * *sessions* =x*1.1+5 |
||
| 91 | * *transactions* = *sessions* *1.1 |
||
| 92 | |||
| 93 | Изменяем параметры при помощи команд: |
||
| 94 | * @alter system set processes=<рассчитаный processes> scope=spfile;@ |
||
| 95 | * @alter system set sessions=<рассчитаный sessions> scope=spfile;@ |
||
| 96 | * @alter system set transactions=<рассчитаный transactions> scope=spfile;@ |
||
| 97 | }} |