суббота, 31 мая 2008 г.

Upgrade Linux-сервера (HP)

Вчера обновил железо, добавив 4 Гб. RAM на созданном мной Linux сервере. Изначально конфигурация ограничивалась 512 Мб. RAM. Разницу до и после апгрейда почувствовал сразу! Так же установил XFS Tools для того чтобы отформатировать отдельный раздел под XFS. Теперь дополнительный раздел выделен под СУБД Oracle 10g. На скорую руку поставил update 10.2.0.4 и после этого при помощи утилиты dbca (Database Configuration Assistant) создал тестовую базу orcl. Честно говоря, работа данной утилиты меня не очень впечатляет. Почему-то в файле параметров конфигурации (spfile) вместо "нормальных" путей появляются такие ---> //
С чем это связано сказать пока не могу. Придется клонировать базу и пересоздавать структуру расположения датафайлов и каталогов (bdump, cdump, udump и т.д.).

воскресенье, 25 мая 2008 г.

Утилита lsof

И еще одна утилита, которой мне приходится часто пользоваться.

lsof - составляет список открытых процессами файлов системах Unix.

В качестве открытого файла names может выступать обычный файл, каталог, блочно-специальный файл, символьно-специальный файл, исполнительная текстовая ссылка, библиотека, поток или сетевой файл. Под сетевым файлом подразумевается сокет Internet, файл NFS, сокет домена Unix. В отсутствие каких-либо опций сообщает о всех открытых файлах, принадлежащих всем активным процессам.

Синтаксис команды лучше смотреть в документации той операционной системы, в которой вы будите использовать данную утилиту.

Ссылки по теме:

1) Утилита lsof - инструмент администратора (lsof proccess linux file)

2) Linux / Unix Command - lsof

3) GUI для lsof

Lsof is available via anonymous ftp from these mirror hosts.

ftp://ftp.cerias.purdue.edu/pub/tools/unix/sysutils/lsof
ftp://ftp.tau.ac.il/pub/unix/admin
ftp://ftp.cert.dfn.de/pub/tools/admin/lsof
ftp://ftp.fu-berlin.de/pub/unix/tools/lsof
ftp://ftp.kaizo.org/pub/lsof/
ftp://ftp.tu-darmstadt.de/pub/sysadmin/lsof
ftp://ftp.tux.org/pub/sites/vic.cc.purdue.edu/tools/unix/lsof
ftp://gd.tuwien.ac.at/utils/admin-tools/lsof
ftp://sunsite.ualberta.ca/pub/Mirror/lsof
ftp://the.wiretapped.net/pub/security/host-security/lsof/

Использование инструментов system-config в RedHat

После того как я поднял отдельный сервер на базе RedHat 4 AS возникла необходимость сократить до минимума физический доступ к консоли на сервер и по максимуму удаленно администрировать его. Для этого пытался настроить VNC сервер. Меня огорчило, что по-умолчанию доступ к GNOME рабочему столу через VNC отсутствует. Он мне был нужен для того что-бы удобнее настраивать запуск отдельных служб и т.д. На самом деле я подозреваю, что это "пагубное" воздействие концепции и мировоззрения Windows пользователя. Linux - это не Windows и многие приемы администрирования отличаются в данной ОС. Перехожу от философии к практике.

Как известно RedHat предоставляет различные инструменты которые помогают упростить администрирования системы. Для примера командой find в каталоге
/usr/bin/ я нашел 26 инструмента которые используются для настройки системы. Часто это GUI средства которые упрощают сопровождение файлов конфигурации. Итак, это:

[root@redhat /]# find ./usr/bin/ -name system-config*
./usr/bin/system-config-display
./usr/bin/system-config-date
./usr/bin/system-config-securitylevel
./usr/bin/system-config-network-cmd
./usr/bin/system-config-lvm
./usr/bin/system-config-securitylevel-tui
./usr/bin/system-config-packages
./usr/bin/system-config-httpd
./usr/bin/system-config-network
./usr/bin/system-config-nfs
./usr/bin/system-config-soundcard
./usr/bin/system-config-mouse
./usr/bin/system-config-language
./usr/bin/system-config-netboot
./usr/bin/system-config-keyboard
./usr/bin/system-config-printer-tui
./usr/bin/system-config-authentication
./usr/bin/system-config-rootpassword
./usr/bin/system-config-network-druid
./usr/bin/system-config-services
./usr/bin/system-config-samba
./usr/bin/system-config-printer
./usr/bin/system-config-time
./usr/bin/system-config-users
./usr/bin/system-config-boot
./usr/bin/system-config-printer-gui


В моем случае мне нужен был инструмент для настройки служб и это оказался system-config-services. В документации (System Administration Guide) данный инструмент описывается как

Services Conguration Tool



The Services Conguration Tool is a graphical application developed by Red Hat to congure which SysV services in the /etc/rc.d/init.d directory are started at boot time (for runlevels 3, 4, and 5) and which xinetd services are enabled. It also allows you to start, stop, and restart SysV services as well as restart xinetd.
To start the Services Conguration Tool from the desktop, go to the Main Menu Button (on the Panel) => System Settings => Server Settings => Services or type the command system-config-services at a shell prompt (for example, in an XTerm or a GNOME terminal).

суббота, 24 мая 2008 г.

Поднял отдельный сервер на базе RedHat 4 AS

Вчера решил задержатся на работе (не смотря на то, что это была пятница) и установил на "бесхозный" ПК (HP, Intel Pentium 4, CPU - 3 Гг., RAM - 512 Мб., HDD - 40 Гб.) одну из моих любимых OS - RedHat 4 AS. При установке особо удивила скорость инсталляции. Вся установка заняла меньше 10 минут! При этом тип установки включал в себя поддержку Gnome, Apache, MySQL, PostgreSQL, системные утилиты, пакеты для разработки приложений и т.д. Дома на VMWare данная установка (AMD Sempron, 1800 MHz (9 x 200) 3400+, 3 Гб DDR2 SDRAM) занимает около 35-40 мин. Возможно, это зависит от частоты CPU? За скорость своего HDD - ST3750640AS дома я спокоен (SATA-150). На следующей неделе буду шлифовать и доп. настраивать этот сервер.

воскресенье, 18 мая 2008 г.

Как проверить, что база запущена при помощи spfile?

Коллегам на работе часто бывает нужно узнать запущена база при помощи spfila или используется pfile.

Ответ на этот вопрос дает команда show parameters spfile выполненная в SQL*Plus.

Если экземпляр запущен при помощи spfil-а, то в представлении будет указан путь к нему:


SQL> show parameters spfile

NAME         TYPE         VALUE
---------- --------- -------------
spfile       string   /oracle/oracle_10g
                      /oracle/product/10.2.0
                      /db_1/dbs/spfileorcl.ora


В случае если экземпляр запущен при помощи pfil-а, то:

SQL> show parameters spfile

NAME          TYPE       VALUE
---------- ----------- -----------
spfile       string      
           
                         

суббота, 17 мая 2008 г.

Запуск базы данных в режиме (NOMOUNT, MOUNT, OPEN)

Решил повторить основные концепции Oracle, в части пройденного курса Oracle Database 10g: Administration Workshop I. Чтобы каждый раз не лазить в конспект лекции публикую то, что происходит с экземпляром в этих трех режимах. 

Во время запуска базы данных необходимо выбирать режим запуска. Следующие сценарии описывают различные этапы запуска экземпляра. Начну с режима NOMOUNT. 

Запуск экземпляра в режиме NOMOUNT



Обычно запуск экземпляра без монтирования базы данных выполняется только при ее создании или при необходимости пересоздания управляющих файлов.
Запуск экземпляра подразумевает выполнение следующих задач:
• чтение файлов параметров из директории SORACLE_HOME/dbs в следующем порядке:
- первым читается spfileSID.ora ;
если он не найден тогда
- spfile.ora
- initSID.ora
• задание параметра PFILE в команде STARTUP, которое переопределяет установленный по умолчанию порядок чтения файлов параметров;
• выделение SGA;
• запуск фоновых процессов
• открытие сигнального файла alertSID. log и файлов трассировки
Имя базы данных должно быть указано либо в параметре DB_NAME файла параметров, либо в команде STARTUP.

Запуск базы данных в режиме MOUNT



Монтирование базы данных

Запуск экземпляра и монтирование базы данных без ее открытия выполняется в целях осуществления особых эксплуатационных операций..
Например, база данных должна быть смонтирована, но не открыта, при выполнении следующих задач:
• переименование файлов данных;
• включение и отключение режима архивирования журнальных файлов;
• полное восстановление базы данных. Монтирование базы данных включает следующие задачи:
• ассоциация базы данных с предварительно запущенным экземпляром;
• определение местоположения управляющих файлов, которые указаны в файле
параметров;
• чтение управляющих файлов с целью получения имен и статуса файлов данных и журнальных файлов. (Хотя на данный момент не проверяется фактическое
существование файлов данных и журнальных файлов.)

Запуск базы данных в режиме OPEN



Открытие базы данных

Нормальное функционирование базы данных подразумевает то, что она открыта и запущен экземпляр, что предоставляет любому зарегистрированному пользователю возможность установить соединение с базой данных и выполнять стандартные операции.
Открытие базы данных подразумевает выполнение следующих задач:
• открытие оперативных файлов данных;
• открытие оперативных файлов журнала.
Если какие-либо из файлов данных или журнальных файлов недоступны в момент открытия базы данных, Oracle возвращает ошибку.
Во время этого окончательного этапа открытия базы данных Oracle проверяет
доступность всех файлов данных и журнальных файлов, и проверяет целостность базы данных. При необходимости, фоновый процесс системный монитор (SMON) запускает восстановление экземпляра.

пятница, 9 мая 2008 г.

Установка файловой системы XFS в RedHat 4 AS

XFS - это журналирующая файловая система для Linux, которая была разработана SGI. Это зрелый продукт, который доказал свою работоспособность, функционируя в качестве основной файловой системы на машинах, работающих под IRIX, которые поставлялись всем клиентам SGI. XFS выпущена под GPL.


Ниже представляю свой best practices по установке и настройке XFS под Linux RedHat 4 AS. Итак, конфигурация тестового стенда такова:

Операционная система (OS): RedHat 4 AS
Ядро (kernel) : 2.6.24.6 #1 SMP
Оперативная память (RAM) DDR2 SDRAM : 3 Гб
Процессор (CPU): AMD Sempron, 1800 MHz (9 x 200) 3400+
Хранение данных (HDD):
1) Hitachi HDS721616PLA380 (160 Гб, 7200 RPM, SATA-II)
2) ST3120026A (120 Гб, 7200 RPM, Ultra-ATA/100)
3) ST3750640AS (750 Гб, 7200 RPM, SATA-II)

Задача: установить и включить поддержку XFS в RedHat 4 AS.
Цель: Использование СУБД Oracle 10.2.0.4 + XFS.
Затраченное время: ~ 2 часа.

В качестве текущий файловых систем использую ext2 (/boot) и ext3 для остальных разделов. Для СУБД Oracle 10.2.0.4 (раздел /mnt/oracle) и тестовой базы orcl и orcl2 решил установить XFS. Очень уж
меня заинтересовала эта статья в Википедии. Взвесив все плюсы и минусы я пересобрал ядро с версии 2.6.9.-5.EL до версии 2.6.24.6. с поддержкой XFS (и не только). Далее поиском в Google вышел на эту страничку. Так как в статье приводиться пример под версию 2.4.х
то, мне пришлось некоторые пункты изменить для себя.

Preinstall

1) В системе уже должны быть установлены системные утилиты:

- modutils-2.4.0

[root@redhat boot]# rpm -q modutils
package modutils is not installed


Я так понял, что эта утилита уже не используется (!?)

- autoconf-2.13

[root@redhat boot]# rpm -q autoconf
autoconf-2.59-5


- e2fsprogs-devel-1.18

[root@redhat boot]# rpm -q e2fsprogs
e2fsprogs-1.35-11.6.EL4


2) Конфигурация ядра.

Конфигурирую ядро, активизируя опции:
"XFS filesystem support" [Поддержка файловой системы XFS] (CONFIG_XFS_FS) и
"Page Buffer support" [Поддержка страничной буфферизации] (CONFIG_PAGE_BUF) в разделе "Файловая система".

3) Скачиваю пакет инструментов для работы с xfs.

Install

4) Распаковываю архив и начинаю установку тарбола.


tar -zxf xfsprogs_2.9.8-1.tar.gz
cd
xfsprogs_2.9.8-1
make
make install


т.к. тарбол уже сконфигурирован, то команду ./configure я намеренно пропустил.

5) После установки этого пакета создаю новую файловую систему XFS командой:

mkfs -t xfs /dev/hdb1

естественно до этого я подключил отдельный IDE жесткий диск и командой

fdisk /dev/hdb

снес все разделы (d) и заново создал новый раздел (n)

Configure

6) Добавляю в файл /etc/fstab строчки:

/dev/hdb1 /mnt/oracle xfs defaults 0 0

7) Выполняю:

sudo mkdir /mnt/oracle

8) После можно смонтировать новую файловую системы командой:

mount -t xfs /dev/hdb1 /mnt/oracle

9) Проверяю результаты командой df

[root@redhat etc]# df

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda2 6230172 5261260 652432 89% /
/dev/hda1 93307 9829 78661 12% /boot
/dev/hda3 1517952 35092 1405748 3% /home
/dev/hdb1 10475448 4256 10471192 1% /mnt/oracle

Conclusions

Первое впечатление после работы и небольшого тестирования данной системы оставило лишь положительные впечатления. Думаю, что использование 64-битной файловой системы в качестве основной под СУБД Oracle является оправданным и логичным шагом.

С Днем Победы!


С этого мгновения начинается отсчет времени для моего блога.
В нем я буду размещать свои мысли и разнообразную практическую информацию о СУБД Oracle 9i/ 10g / 11g,  а также все то, что познаю в мире Unix. Наверное, это будет своеобразный дневник системного администратора.
В любом случае здесь будет интересно!

С праздником! С Днем Победы! Ура!!!